/**-----------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { OnDestroy, NgZone, ChangeDetectorRef, QueryList, ElementRef } from '@angular/core';
import { FormGroup, FormControl } from '@angular/forms';
import { LocalizationService } from '@progress/kendo-angular-l10n';
import { Resource } from '../types/resource.interface';
import { EditService } from './edit.service';
import { EditMode } from '../types';
import { EditDialogTemplateDirective } from './edit-dialog-template.directive';
import { MultipleResourceEditorComponent } from './resource-multiple-editor.component';
import { SingleResourceEditorComponent } from './resource-single-editor.component';
import { FocusService } from '../navigation';
import { Day } from '@progress/kendo-date-math';
import { SVGIcon } from '@progress/kendo-svg-icons';
import * as i0 from "@angular/core";
/**
 * @hidden
 */
export declare class EditDialogComponent implements OnDestroy {
    private ngZone;
    private editService;
    private localization;
    private changeDetector;
    private element;
    private focusService;
    multipleResourceEditors: QueryList<MultipleResourceEditorComponent>;
    singleResourceEditors: QueryList<SingleResourceEditorComponent>;
    resources: Array<Resource>;
    timezone: string;
    weekStart: Day;
    fields: any;
    editTemplate: EditDialogTemplateDirective;
    get autoFocusedElement(): string;
    dialogTitle: string;
    isActive: boolean;
    editMode: EditMode;
    get isEditingSeries(): boolean;
    get eventTimezone(): string;
    get endTimezone(): string;
    recurrenceStart: Date;
    setTimeZone: boolean;
    setSeparateStartEndTimeZones: boolean;
    formGroup: FormGroup;
    editedEvent: any;
    isNew: boolean;
    saveIcon: SVGIcon;
    cancelIcon: SVGIcon;
    private subs;
    constructor(ngZone: NgZone, editService: EditService, localization: LocalizationService, changeDetector: ChangeDetectorRef, element: ElementRef, focusService: FocusService);
    onChange(): void;
    ngOnDestroy(): void;
    onCancel(e: any): void;
    onSave(e: any): void;
    onClose(): void;
    get hasAllDay(): boolean;
    get hasStartTimeZone(): boolean;
    get isStartTimeZoneVisible(): boolean;
    get hasEndTimeZone(): boolean;
    get isEndTimeZoneVisible(): boolean;
    getFormValue(field?: string): any;
    textFor(key: string): string;
    onResourceClick(resource: Resource): void;
    getControl(name: string): FormControl;
    private reset;
    private addTimeZoneCheckboxesToFormGroup;
    private removeTimeZoneCheckboxesFromFormGroup;
    private subscribeToFormGroupChanges;
    /**
     * Converts the event dates to "display dates" that look like the original date in its time zone.
     * The result does not represent the same moment in time and must be converted back to local dates.
     */
    private applyLocalTimezone;
    /**
     * Converts the "display dates" used by the editors back to local dates that represent the true moment in time.
     */
    private applyTimezone;
    private readDateWithTimezone;
    private readDateAsLocal;
    static ɵfac: i0.ɵɵFactoryDeclaration<EditDialogComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<EditDialogComponent, "kendo-scheduler-edit-dialog", never, { "resources": { "alias": "resources"; "required": false; }; "timezone": { "alias": "timezone"; "required": false; }; "weekStart": { "alias": "weekStart"; "required": false; }; "fields": { "alias": "fields"; "required": false; }; "editTemplate": { "alias": "editTemplate"; "required": false; }; }, {}, never, never, true, never>;
}
