import { IsOptional, IsString, IsNotEmpty, IsEmail, IsArray, IsIn, Min, Max, IsInt } from "class-validator";

export class VendorDTO {
    @IsOptional()
    @IsString()
    _id?: string;

    @IsString()
    @IsNotEmpty()
    businessName?: string;

    @IsEmail()
    @IsOptional()
    email?: string;

    @IsOptional()
    @IsString()
    phone?: string;

    @IsArray()
    @IsOptional()
    @IsString({ each: true })
    products?: string[];

    @IsArray()
    @IsOptional()
    @IsString({ each: true })
    vendors?: string[];

    @IsString()
    @IsOptional()
    @IsIn(["manufacturer", "wholesaler", "distributor", "retailer"])
    businessType?: string;

    @IsString()
    @IsOptional()
    website?: string;

    @IsInt()
    @IsOptional()
    @Min(1)
    @Max(5)
    rating?: number;
}
