import type { Presenter } from '@core/shared/presentation/Presenter';

export interface LeagueMembershipsViewModel {
  members: {
    driverId: string;
    driver: { id: string; name: string };
    role: string;
    joinedAt: Date;
  }[];
}

export interface GetLeagueMembershipsViewModel {
  memberships: LeagueMembershipsViewModel;
}

export interface GetLeagueMembershipsResultDTO {
  memberships: unknown[];
  drivers: { id: string; name: string }[];
}

export interface IGetLeagueMembershipsPresenter extends Presenter<GetLeagueMembershipsResultDTO, GetLeagueMembershipsViewModel> {}