import type { Dayjs } from '../../dayjs';
import type { EventBusyDate } from "@calcom/types/Calendar";
import type { IntervalLimitUnit } from "./intervalLimitSchema";
/**
 * Helps create, check, and return busy times from limits (with parallel support)
 */
export default class LimitManager {
    private busyMap;
    /**
     * Creates a busy map key
     */
    private static createKey;
    /**
     * Checks if already marked busy by ancestors or siblings
     */
    isAlreadyBusy(start: Dayjs, unit: IntervalLimitUnit): boolean;
    /**
     * Adds a new busy time
     */
    addBusyTime(start: Dayjs, unit: IntervalLimitUnit): void;
    /**
     * Returns all busy times
     */
    getBusyTimes(): EventBusyDate[];
}
//# sourceMappingURL=limitManager.d.ts.map