import { DbService } from 'src/db/db.service';
export declare class AIServiceError extends Error {
    readonly code: string;
    constructor(message: string, code: string);
}
export declare class DatabaseError extends Error {
    constructor(message: string);
}
export declare class AIChatBotService {
    private readonly model;
    private readonly logger;
    private gemini;
    private agent;
    constructor(model: DbService);
    private createTools;
    formatDate: (timestamp: number) => string;
    getAgent(userId: string): any;
    handleQuery(message: string, chatSessionId: string, userId: string, imageUrl?: string): Promise<{
        success: boolean;
        reply: any;
        chatSessionId: string;
        isResolved: boolean;
    }>;
    getChatHistory(chatSessionId: string, userId: string): Promise<any[]>;
    startChat(userId: string): Promise<{
        success: boolean;
        chatSessionId: string;
        message: string;
        isResolved: boolean;
    }>;
    getChatBySession(chatSessionId: string, userId: string): Promise<{
        success: boolean;
        data: (import("mongoose").FlattenMaps<import("../AI_Chat-Bot/schema/chat.schema").ChatSchema> & Required<{
            _id: import("mongoose").FlattenMaps<unknown>;
        }> & {
            __v: number;
        })[];
        count: number;
    }>;
}
