import { DoctorsService } from './doctors.service';
export declare class DoctorsController {
    private doctorsService;
    constructor(doctorsService: DoctorsService);
    findAll(): Promise<({
        poli: ({
            poli: {
                id: number;
                name: string;
                createdAt: Date;
                updatedAt: Date;
                slug: string;
                description: string | null;
                icon: string | null;
                isActive: boolean;
            };
        } & {
            id: number;
            doctorId: number;
            poliId: number;
        })[];
    } & {
        id: number;
        name: string;
        createdAt: Date;
        updatedAt: Date;
        slug: string;
        photo: string | null;
        specialization: string | null;
        education: string | null;
        bio: string | null;
    })[]>;
    findBySlug(slug: string): Promise<{
        schedules: ({
            poli: {
                id: number;
                name: string;
                createdAt: Date;
                updatedAt: Date;
                slug: string;
                description: string | null;
                icon: string | null;
                isActive: boolean;
            };
        } & {
            id: number;
            doctorId: number;
            poliId: number;
            day: string;
            startTime: string;
            endTime: string;
            room: string | null;
        })[];
        poli: ({
            poli: {
                id: number;
                name: string;
                createdAt: Date;
                updatedAt: Date;
                slug: string;
                description: string | null;
                icon: string | null;
                isActive: boolean;
            };
        } & {
            id: number;
            doctorId: number;
            poliId: number;
        })[];
    } & {
        id: number;
        name: string;
        createdAt: Date;
        updatedAt: Date;
        slug: string;
        photo: string | null;
        specialization: string | null;
        education: string | null;
        bio: string | null;
    }>;
    getSchedule(id: string): Promise<({
        poli: {
            id: number;
            name: string;
            createdAt: Date;
            updatedAt: Date;
            slug: string;
            description: string | null;
            icon: string | null;
            isActive: boolean;
        };
    } & {
        id: number;
        doctorId: number;
        poliId: number;
        day: string;
        startTime: string;
        endTime: string;
        room: string | null;
    })[]>;
    adminFindAll(): Promise<({
        poli: ({
            poli: {
                id: number;
                name: string;
                createdAt: Date;
                updatedAt: Date;
                slug: string;
                description: string | null;
                icon: string | null;
                isActive: boolean;
            };
        } & {
            id: number;
            doctorId: number;
            poliId: number;
        })[];
    } & {
        id: number;
        name: string;
        createdAt: Date;
        updatedAt: Date;
        slug: string;
        photo: string | null;
        specialization: string | null;
        education: string | null;
        bio: string | null;
    })[]>;
    create(data: {
        name: string;
        photo?: string;
        specialization?: string;
        education?: string;
        bio?: string;
    }): Promise<{
        id: number;
        name: string;
        createdAt: Date;
        updatedAt: Date;
        slug: string;
        photo: string | null;
        specialization: string | null;
        education: string | null;
        bio: string | null;
    }>;
    update(id: string, data: any): Promise<{
        id: number;
        name: string;
        createdAt: Date;
        updatedAt: Date;
        slug: string;
        photo: string | null;
        specialization: string | null;
        education: string | null;
        bio: string | null;
    }>;
    remove(id: string): Promise<{
        id: number;
        name: string;
        createdAt: Date;
        updatedAt: Date;
        slug: string;
        photo: string | null;
        specialization: string | null;
        education: string | null;
        bio: string | null;
    }>;
    assignPoli(doctorId: string, poliId: string): Promise<{
        id: number;
        doctorId: number;
        poliId: number;
    }>;
    removePoli(doctorId: string, poliId: string): Promise<{
        id: number;
        doctorId: number;
        poliId: number;
    }>;
}
