import { ChangeDetectorRef, EventEmitter, OnInit } from "@angular/core";
import { DialogTransactionHeaderBaseComponent } from "../../../core/base/dialog-transaction-header-base.component";
import { AgendaEventPerDay, CalendarView } from "@colijnit/sharedcomponents";
import { TransactionEventService } from "../../../../service/transaction-event.service";
import { TransactionService } from "../../../../service/transaction.service";
import { IconCacheService } from "../../../../service/icon-cache.service";
import { TransactionScreenConfigurationService } from "../../../../service/transaction-screen-configuration.service";
import { DictionaryService } from "../../../../service/dictionary.service";
import { TransactionImageService } from "../../../../service/transaction-image.service";
import { TransactionConnectorService } from "../../../../service/transaction-connector.service";
import { TransactionHeaderService } from '../../../core/base/service/transaction-header.service';
export declare class DialogTransactionPlanningRequest extends DialogTransactionHeaderBaseComponent implements OnInit {
    private _locale;
    transactionHeaderService: TransactionHeaderService;
    transactionEventService: TransactionEventService;
    iconCacheService: IconCacheService;
    screenConfigService: TransactionScreenConfigurationService;
    protected imageService: TransactionImageService;
    protected dictionaryService: DictionaryService;
    protected transactionService: TransactionService;
    protected changeDetector: ChangeDetectorRef;
    private _transactionConnectorService;
    closeClick: EventEmitter<MouseEvent>;
    showClass(): boolean;
    loaded: boolean;
    view: CalendarView;
    selectedEvent: AgendaEventPerDay;
    selectableDayParts: AgendaEventPerDay[];
    selectedDate: Date;
    startDate: Date;
    endDate: Date;
    daysUntilFirstPlanDate: string;
    isRouteOptimizationConfigured: boolean;
    firstDeliveryDate: Date;
    private _boFactory;
    constructor(_locale: string, transactionHeaderService: TransactionHeaderService, transactionEventService: TransactionEventService, iconCacheService: IconCacheService, screenConfigService: TransactionScreenConfigurationService, imageService: TransactionImageService, dictionaryService: DictionaryService, transactionService: TransactionService, changeDetector: ChangeDetectorRef, _transactionConnectorService: TransactionConnectorService);
    ngOnInit(): Promise<void>;
    setSelected(selected: AgendaEventPerDay): void;
    closeDialog(event: MouseEvent): Promise<void>;
    handleConfirmClick(event: MouseEvent): void;
    private _getAllAvailablePlanDates;
    private _getSelectableDayParts;
    private _applySelectedDate;
    private _createAgendaEventPerDayFromPlanTimes;
    private _createAgendaEventFromDayPart;
    private _getFirstDayOfWeek;
    private _getLastDayOfWeek;
    private _validDate;
    private _addDays;
}
