import { IsBoolean } from 'class-validator';

export class UpdatePublicAccessDto {
  @IsBoolean()
  enabled: boolean;
}

export interface PublicAccessStatusDto {
  enabled: boolean;
  token: string | null;
}

export interface PublicPlayerDto {
  id: number;
  firstName: string;
  lastName: string;
  balance: number;
  active: boolean;
}

export interface PublicPenaltyDto {
  id: number;
  description: string;
  amount: number;
}

export interface PublicTransactionDto {
  id: number;
  note: string;
  date: string;
  amount: number;
  type: { id: number; name: string } | null;
}

export interface PublicTeamDto {
  name: string;
  balance: number;
  outstanding: number;
  players: PublicPlayerDto[];
  penalties: PublicPenaltyDto[];
}

export interface PublicPlayerHistoryDto {
  player: PublicPlayerDto;
  transactions: PublicTransactionDto[];
}
