export declare const schedulesRepository: {
    findById(id: string): Promise<(import("mongoose").Document<unknown, {}, import("../../shared/models/Schedule.model.js").ISchedule, {}, {}> & import("../../shared/models/Schedule.model.js").ISchedule & Required<{
        _id: import("mongoose").Types.ObjectId;
    }> & {
        __v: number;
    }) | null>;
    findByLeadId(leadId: string): Promise<(import("mongoose").Document<unknown, {}, import("../../shared/models/Schedule.model.js").ISchedule, {}, {}> & import("../../shared/models/Schedule.model.js").ISchedule & Required<{
        _id: import("mongoose").Types.ObjectId;
    }> & {
        __v: number;
    })[]>;
    findMany(filters: {
        leadId?: string;
        fromDate?: Date;
        toDate?: Date;
        page?: number;
        limit?: number;
        activeOnly?: boolean;
    }): Promise<{
        items: (import("mongoose").FlattenMaps<import("../../shared/models/Schedule.model.js").ISchedule> & Required<{
            _id: import("mongoose").Types.ObjectId;
        }> & {
            __v: number;
        })[];
        total: number;
        page: number;
        limit: number;
    }>;
    create(data: {
        leadId: string;
        date: Date;
        timeSlot: string;
        duration: number;
        notes?: string;
    }): Promise<import("mongoose").Document<unknown, {}, import("../../shared/models/Schedule.model.js").ISchedule, {}, {}> & import("../../shared/models/Schedule.model.js").ISchedule & Required<{
        _id: import("mongoose").Types.ObjectId;
    }> & {
        __v: number;
    }>;
    deactivateByLeadId(leadId: string): Promise<import("mongoose").UpdateWriteOpResult>;
    findActiveByLeadId(leadId: string): Promise<(import("mongoose").Document<unknown, {}, import("../../shared/models/Schedule.model.js").ISchedule, {}, {}> & import("../../shared/models/Schedule.model.js").ISchedule & Required<{
        _id: import("mongoose").Types.ObjectId;
    }> & {
        __v: number;
    }) | null>;
    update(id: string, data: Partial<{
        date: Date;
        timeSlot: string;
        duration: number;
        notes: string;
    }>): Promise<(import("mongoose").Document<unknown, {}, import("../../shared/models/Schedule.model.js").ISchedule, {}, {}> & import("../../shared/models/Schedule.model.js").ISchedule & Required<{
        _id: import("mongoose").Types.ObjectId;
    }> & {
        __v: number;
    }) | null>;
    delete(id: string): Promise<(import("mongoose").Document<unknown, {}, import("../../shared/models/Schedule.model.js").ISchedule, {}, {}> & import("../../shared/models/Schedule.model.js").ISchedule & Required<{
        _id: import("mongoose").Types.ObjectId;
    }> & {
        __v: number;
    }) | null>;
};
//# sourceMappingURL=schedules.repository.d.ts.map