import { autoserializeAs, Command, inheritSerialization, serializable, Validators } from '@my-devkit/core'; @serializable @inheritSerialization(Command) export class CreateUserCommand extends Command { @Validators.IsNotEmpty() @Validators.IsString() @autoserializeAs(String) public userId: string = null; @Validators.IsNotEmpty() @Validators.IsString() @autoserializeAs(String) public avatar: string = null; @Validators.IsNotEmpty() @Validators.IsString() @Validators.IsEmail() @autoserializeAs(String) public email: string = null; @Validators.IsNotEmpty() @Validators.IsString() @autoserializeAs(String) public fullName: string = null; constructor() { super('CreateUserCommand'); } }