import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger'; export class RoleDto { @ApiProperty() id: string; @ApiProperty() name: string; } export class ProfileSummaryDto { @ApiProperty() id: string; @ApiProperty() name: string; @ApiProperty({ enum: ['male', 'female'] }) gender: string; } export class UserResponseDto { @ApiProperty() id: string; @ApiProperty() phone: string; @ApiProperty({ enum: ['active', 'banned', 'pending'] }) status: string; @ApiPropertyOptional({ nullable: true }) roleId: string | null; @ApiPropertyOptional({ nullable: true }) tariffId: string | null; @ApiPropertyOptional({ nullable: true }) paymentId: string | null; @ApiPropertyOptional({ nullable: true }) fcmToken: string | null; } export class MeResponseDto extends UserResponseDto { @ApiPropertyOptional({ type: RoleDto, nullable: true }) role: RoleDto | null; @ApiProperty({ type: [ProfileSummaryDto] }) profiles: ProfileSummaryDto[]; }