import { DELETE_RESPONSE } from '../Core/CrudService';
import Session from '../Services/Identity/Session';
import { PlannedDeliveryWindow, PlannedDeliveryWindowsBulkDeleteRequest, PlannedDeliveryWindowsBulkEditRequest, PlannedDeliveryWindowsBulkResponse, RecurrenceOptions } from './planned-delivery-windows.consts';
export declare const Routes: {
    GET_BY_TEAM: string;
    GET_ALL: string;
    UPDATE: string;
    BULK_DELETE: string;
    BULK_EDIT: string;
};
export default class PlannedDeliveryWindowsService {
    private readonly service;
    constructor(session: Session);
    load(id: number): Promise<PlannedDeliveryWindow>;
    loadAllWithoutTeam(startTime: string, endTime: string): Promise<PlannedDeliveryWindow[]>;
    loadAllByTeam(teamId: number, startTime: string, endTime: string): Promise<PlannedDeliveryWindow[]>;
    create(deliveryWindows: Partial<PlannedDeliveryWindow>[]): Promise<PlannedDeliveryWindow[]>;
    update(id: number, plannedDeliveryWindow: Partial<PlannedDeliveryWindow>, recurrenceOptions?: RecurrenceOptions): Promise<PlannedDeliveryWindow>;
    bulkUpdate(plannedDeliveryWindowsToEdit: PlannedDeliveryWindowsBulkEditRequest): Promise<PlannedDeliveryWindowsBulkResponse>;
    delete(id: number, recurrenceOptions?: RecurrenceOptions): Promise<DELETE_RESPONSE>;
    bulkDelete(plannedDeliveryWindowsToDelete: PlannedDeliveryWindowsBulkDeleteRequest): Promise<{
        planned_window_id: number;
        success: boolean;
    }[]>;
}
