import { SyncService } from './sync.service';
import { ScheduledSyncService } from './scheduled-sync.service';
import { PrismaService } from "../../../core/database/prisma/prisma.service";
export declare class SyncController {
    private readonly syncService;
    private readonly scheduledSyncService;
    private readonly prisma;
    constructor(syncService: SyncService, scheduledSyncService: ScheduledSyncService, prisma: PrismaService);
    syncFromEntraId(): Promise<import("./sync.service").SyncResult>;
    getSyncStatus(): Promise<{
        isSyncing: boolean;
        lastSyncTime: Date | null;
        lastSyncResult: import("./sync.service").SyncResult | null;
    }>;
    getSyncExecutions(page?: string, limit?: string, startDate?: string, endDate?: string, hideEmpty?: string): Promise<{
        items: {
            id: string;
            status: import("@prisma/client").$Enums.AutomationExecutionStatus;
            startedAt: Date;
            completedAt: Date | null;
            duration: number | null;
            triggerType: string;
            error: string | null;
            result: import("@prisma/client/runtime/library").JsonValue;
            logs: string | null;
        }[];
        total: number;
        page: number;
        limit: number;
    }>;
    getStats(): Promise<{
        users: {
            total: number;
            active: number;
            fromEntra: number;
            local: number;
            terminated: number;
        };
        departments: number;
        positions: number;
        lastSync: Date | null;
    }>;
}
