import { ApiProperty } from '@nestjs/swagger'; import { Expose } from 'class-transformer'; import { IsString } from 'class-validator'; export class KycWebhookRequest { @Expose({ name: 'InstId' }) @IsString() @ApiProperty({ name: 'InstId', example: '1100' }) instId!: string; @Expose() @IsString() @ApiProperty({ example: '3136fd60-3f89-4d24-a92f-b9c63a53807f' }) transId!: string; @Expose() @IsString() @ApiProperty({ example: '20250807' }) date!: string; @Expose() @IsString() @ApiProperty({ example: '150000' }) time!: string; @Expose() @IsString() @ApiProperty({ example: 'SUCCESS' }) status!: string; @Expose() @IsString() @ApiProperty({ example: 'John' }) firstName!: string; @Expose() @IsString() @ApiProperty({ example: 'Doe' }) lastName!: string; @Expose() @IsString() @ApiProperty({ example: '19990107' }) dob!: string; @Expose() @IsString() @ApiProperty({ example: '682' }) nationality!: string; @Expose() @IsString() @ApiProperty({ example: 'M' }) gender!: string; @Expose() @IsString() @ApiProperty({ example: '20310917' }) nationalIdExpiry!: string; @Expose() @IsString() @ApiProperty({ example: '1250820840' }) nationalId!: string; @Expose() @IsString() @ApiProperty({ example: '+962798765432' }) mobile!: string; @Expose() @IsString() @ApiProperty({ example: '500' }) salaryMin!: string; @Expose() @IsString() @ApiProperty({ example: '1000' }) salaryMax!: string; @Expose() @IsString() @ApiProperty({ example: 'Salary' }) incomeSource!: string; @Expose() @IsString() @ApiProperty({ example: 'Software Engineer' }) professionTitle!: string; @Expose() @IsString() @ApiProperty({ example: 'Full-Time' }) professionType!: string; @Expose() @IsString() @ApiProperty({ example: 'N' }) isPep!: string; @Expose() @IsString() @ApiProperty({ example: '682' }) country!: string; @Expose() @IsString() @ApiProperty({ example: 'Mecca' }) region!: string; @Expose() @IsString() @ApiProperty({ example: 'At-Taif' }) city!: string; @Expose() @IsString() @ApiProperty({ example: 'Al-Hamra' }) neighborhood!: string; @Expose() @IsString() @ApiProperty({ example: 'Al-Masjid Al-Haram' }) street!: string; @Expose() @IsString() @ApiProperty({ example: '123' }) building!: string; }