import type { Session } from '../entities/Session';

export interface ISessionRepository {
  findById(id: string): Promise<Session | null>;
  findAll(): Promise<Session[]>;
  findByRaceEventId(raceEventId: string): Promise<Session[]>;
  findByLeagueId(leagueId: string): Promise<Session[]>;
  findByStatus(status: string): Promise<Session[]>;
  create(session: Session): Promise<Session>;
  update(session: Session): Promise<Session>;
  delete(id: string): Promise<void>;
  exists(id: string): Promise<boolean>;
}