import { ValidatorConstraintInterface, ValidationArguments } from "class-validator";
import { PaginationOptions } from "../../../../global";
import { VisitPurpose } from "../enums";
import { MarketingData } from "../../../../core";
export declare class IsTimeConstraint implements ValidatorConstraintInterface {
    validate(time: string, args: ValidationArguments): boolean;
    defaultMessage(args: ValidationArguments): string;
}
export declare class ShowroomVisitCreateDTO {
    Visitor_FullName: string;
    Visitor_Mobile: string;
    Visit_Date: string;
    Visit_Time: string;
    Visit_Interest: VisitPurpose;
    Interested_Cars?: string[];
    AssignedAgentId?: string;
    marketing?: MarketingData;
    validate(): string[];
    static fromPlain(plain: Record<string, unknown>): ShowroomVisitCreateDTO;
    toPlain(): Record<string, unknown>;
}
export declare class ShowroomVisitUpdateDTO {
    Visitor_FullName?: string;
    Visitor_Mobile?: string;
    Visit_Date?: string;
    Visit_Time?: string;
    Visit_Interest?: VisitPurpose;
    Interested_Cars?: string[];
    AssignedAgentId?: string;
    validate(): string[];
    static fromPlain(plain: Record<string, unknown>): ShowroomVisitUpdateDTO;
}
export declare class ShowroomVisitResponseDTO {
    id: string;
    Visitor_FullName: string;
    Visitor_Mobile: string;
    Visit_Date: string;
    Visit_Time: string;
    Visit_Interest: VisitPurpose;
    Interested_Cars?: string[];
    AssignedAgentId?: string;
    AssignedAgentName?: string;
    IsCompleted?: boolean;
    VisitNotes?: string;
    CreatedAt: string;
    UpdatedAt: string;
    marketing?: MarketingData;
    validate(): string[];
    static fromPlain(plain: Record<string, unknown>): ShowroomVisitResponseDTO;
    toPlain(): Record<string, unknown>;
}
export declare class ShowRoomVisitOptionsDTO extends PaginationOptions {
    static fromPlain(plain: Record<string, unknown>): ShowRoomVisitOptionsDTO;
    toPlain(): Record<string, unknown>;
}
export declare class ShowRoomVisitFilterDTO {
    search?: string;
    leadId?: string;
    validate(): string[];
    static fromPlain(plain: Record<string, unknown>): ShowRoomVisitFilterDTO;
    toPlain(): Record<string, unknown>;
}
export declare class ShowRoomVisitFetchDTO {
    filter: ShowRoomVisitFilterDTO;
    options: ShowRoomVisitOptionsDTO;
    validate(): string[];
    static fromPlain(plain: Record<string, unknown>): ShowRoomVisitFetchDTO;
    toPlain(): Record<string, unknown>;
}
