import { TicketRequestType, TicketStatusType } from "../enums";
import { TicketDocument, TicketMessage, User } from "../../../models";
export declare class CreateTicketDto {
    userId: string;
    requestType: TicketRequestType;
    message: string;
    assignedSalesAgentId?: string;
    agentName?: string;
    agentPhoneNumber?: string;
    initialDocument?: any;
}
export declare class CreateTicketMessageDto {
    ticketId: string;
    senderId: string;
    message: string;
    isFromAgent: boolean;
    attachedDocument?: any;
}
export declare class CreateTicketDocumentDto {
    ticketId: string;
    uploaderId: string;
    messageId?: string;
    document: any;
}
export declare class UpdateTicketDto {
    requestType?: TicketRequestType;
    message?: string;
    assignedSalesAgentId?: string;
    agentName?: string;
    agentPhoneNumber?: string;
    status?: TicketStatusType;
    documents?: any[];
    messages?: TicketMessage[];
}
export declare class TicketDto {
    id: string;
    userId: string;
    requestType: TicketRequestType;
    message: string;
    assignedSalesAgentId?: string;
    assignedSalesAgent?: User;
    user?: User;
    agentName?: string;
    agentPhoneNumber?: string;
    status: TicketStatusType;
    createdAt: Date;
    updatedAt: Date;
    messages?: TicketMessage[];
    documents?: TicketDocument[];
}
export declare class TicketGetDTO {
    id: string;
    refId: number;
    createdById: string | null;
    updatedById: string | null;
    deletedById: string | null;
    isDeleted: boolean;
    isActive: boolean;
    createdAt: string;
    updatedAt: string;
    userId: string;
    requestType: TicketRequestType;
    message: string;
    assignedSalesAgentId?: string;
    agentName: string;
    agentPhoneNumber?: string;
    status: TicketStatusType;
    constructor();
}
