UNPKG

api-scout

Version:

🔍 Automatically scout, discover and generate beautiful interactive API documentation from your codebase. Supports Express.js, NestJS, FastAPI, Spring Boot with interactive testing and security analysis.

85 lines (66 loc) 1.4 kB
import { IsEmail, IsNotEmpty, IsOptional, IsString, IsNumber, IsEnum } from 'class-validator'; /** * Data Transfer Object for creating a new user */ export class CreateUserDto { @IsNotEmpty() @IsString() name: string; @IsEmail() email: string; @IsNotEmpty() @IsString() password: string; @IsOptional() @IsString() avatar?: string; @IsOptional() @IsEnum(['admin', 'user', 'moderator']) role?: 'admin' | 'user' | 'moderator'; @IsOptional() @IsString() bio?: string; } /** * Data Transfer Object for updating user information */ export class UpdateUserDto { @IsOptional() @IsString() name?: string; @IsOptional() @IsEmail() email?: string; @IsOptional() @IsString() avatar?: string; @IsOptional() @IsString() bio?: string; @IsOptional() @IsEnum(['admin', 'user', 'moderator']) role?: 'admin' | 'user' | 'moderator'; } /** * Data Transfer Object for user response */ export class UserResponseDto { @IsNumber() id: number; @IsString() name: string; @IsEmail() email: string; @IsOptional() @IsString() avatar?: string; @IsOptional() @IsString() bio?: string; @IsEnum(['admin', 'user', 'moderator']) role: 'admin' | 'user' | 'moderator'; @IsString() createdAt: string; @IsString() updatedAt: string; }