Files
gridpilot.gg/apps/api/src/domain/league/dtos/LeagueMembershipDTO.ts
2026-01-16 21:44:26 +01:00

28 lines
662 B
TypeScript

import { ApiProperty } from '@nestjs/swagger';
import { IsEnum, IsString } from 'class-validator';
export class LeagueMembershipDTO {
@ApiProperty()
@IsString()
id!: string;
@ApiProperty()
@IsString()
leagueId!: string;
@ApiProperty()
@IsString()
driverId!: string;
@ApiProperty({ enum: ['owner', 'admin', 'steward', 'member'] })
@IsEnum(['owner', 'admin', 'steward', 'member'])
role!: 'owner' | 'admin' | 'steward' | 'member';
@ApiProperty({ enum: ['active', 'inactive', 'pending'] })
@IsEnum(['active', 'inactive', 'pending'])
status!: 'active' | 'inactive' | 'pending';
@ApiProperty()
@IsString()
joinedAt!: string;
}