import { autoserializeAs, Command, inheritSerialization, serializable, Validators } from '@my-devkit/core'; @serializable @inheritSerialization(Command) export class CreateIterationCommand extends Command { @Validators.IsNotEmpty() @Validators.IsString() @autoserializeAs(String) public projectId: string = null; @Validators.IsNotEmpty() @Validators.IsString() @autoserializeAs(String) public name: string = null; @Validators.IsNotEmpty() @Validators.IsDate() @autoserializeAs(Date) public startDate: Date = null; @Validators.IsNotEmpty() @Validators.IsDate() @autoserializeAs(Date) public endDate: Date = null; @Validators.IsOptional() @Validators.IsNumber() @Validators.Min(0) @autoserializeAs(Number) public capacity: number = null; @Validators.IsOptional() @Validators.IsString() @autoserializeAs(String) public comment: string = null; constructor() { super('CreateIterationCommand'); } }