import { ChangeDetectorRef, EventEmitter, InjectionToken, NgZone, OnDestroy, OnInit, ViewContainerRef } from '@angular/core'; import { BlockScrollStrategy, Overlay, ScrollStrategy } from '@angular/cdk/overlay'; import { DatepickerDateTime, PickerMode, PickerType, SelectMode } from '../../classes/datepicker-date-time.class'; import { DatepickerDateTimePickerInputDirective } from '../../directives/datepicker-date-time-picker-input.directive'; import { DatepickerDialogService } from '../../services/datepicker-dialog.service'; import { DatepickerDateTimeAdapter } from '../../adapters/datepicker-date-time.adapter'; import { DatepickerDateTimeFormats } from '../../classes/datepicker-date-time-format.class'; import * as i0 from "@angular/core"; /** Injection token that determines the scroll handling while the dtPicker is open. */ export declare const DATEPICKER_DTPICKER_SCROLL_STRATEGY: InjectionToken<() => ScrollStrategy>; export declare function DATEPICKER_DTPICKER_SCROLL_STRATEGY_PROVIDER_FACTORY(overlay: Overlay): () => BlockScrollStrategy; export declare const DATEPICKER_DTPICKER_SCROLL_STRATEGY_PROVIDER: { provide: InjectionToken<() => ScrollStrategy>; deps: (typeof Overlay)[]; useFactory: typeof DATEPICKER_DTPICKER_SCROLL_STRATEGY_PROVIDER_FACTORY; }; export declare class DatepickerDateTimePickerComponent extends DatepickerDateTime implements OnInit, OnDestroy { private overlay; private viewContainerRef; private dialogService; private ngZone; protected cdr: ChangeDetectorRef; protected dateTimeAdapter: DatepickerDateTimeAdapter; protected dateTimeFormats: DatepickerDateTimeFormats; private document; /** Custom class for the picker backdrop. */ backdropClass: string | string[]; /** Custom class for the picker overlay pane. */ panelClass: string | string[]; /** The date to open the calendar to initially. */ private _startAt; get startAt(): T | null; set startAt(date: T | null); /** * Set the type of the dateTime picker * 'both' -- show both calendar and timer * 'calendar' -- show only calendar * 'timer' -- show only timer */ private _pickerType; get pickerType(): PickerType; set pickerType(val: PickerType); /** * Whether the picker open as a dialog */ _pickerMode: PickerMode; get pickerMode(): PickerMode; set pickerMode(mode: PickerMode); /** Whether the date time picker should be disabled. */ private _disabled; get disabled(): boolean; set disabled(value: boolean); /** Whether the calendar is open. */ private _opened; get opened(): boolean; set opened(val: boolean); /** * The scroll strategy when the picker is open * Learn more this from https://material.angular.io/cdk/overlay/overview#scroll-strategies * */ scrollStrategy?: ScrollStrategy; /** * Callback when the picker is closed * */ afterPickerClosed: EventEmitter; /** * Callback when the picker is open * */ afterPickerOpen: EventEmitter; /** * Emits selected year in multi-year view * This doesn't imply a change on the selected date. * */ yearSelected: EventEmitter; /** * Emits selected month in year view * This doesn't imply a change on the selected date. * */ monthSelected: EventEmitter; /** * Emit when the selected value has been confirmed * */ confirmSelectedChange: EventEmitter; /** * Emits when the date time picker is disabled. * */ disabledChange: EventEmitter; private pickerContainerPortal?; private pickerContainer?; private popupRef?; private dialogRef; private dtInputSub; private hidePickerStreamSub; private confirmSelectedStreamSub; private pickerOpenedStreamSub; /** The element that was focused before the date time picker was opened. */ private focusedElementBeforeOpen; private _dtInput?; get dtInput(): DatepickerDateTimePickerInputDirective; private _selected; get selected(): T | null; set selected(value: T | null); private _selecteds; get selecteds(): T[]; set selecteds(values: T[]); /** The minimum selectable date. */ get minDateTime(): T | null; /** The maximum selectable date. */ get maxDateTime(): T | null; get dateTimeFilter(): (date: T | null) => boolean; get selectMode(): SelectMode; get isInSingleMode(): boolean; get isInRangeMode(): boolean; private defaultScrollStrategy; constructor(overlay: Overlay, viewContainerRef: ViewContainerRef, dialogService: DatepickerDialogService, ngZone: NgZone, cdr: ChangeDetectorRef, dateTimeAdapter: DatepickerDateTimeAdapter, defaultScrollStrategy: any, dateTimeFormats: DatepickerDateTimeFormats, document: any); ngOnInit(): void; ngOnDestroy(): void; registerInput(input: DatepickerDateTimePickerInputDirective): void; open(): void; /** * Selects the given date */ select(date: T[] | T): void; /** * Emits the selected year in multi-year view * */ selectYear(normalizedYear: T): void; /** * Emits selected month in year view * */ selectMonth(normalizedMonth: T): void; /** * Hide the picker */ close(): void; /** * Confirm the selected value */ confirmSelect(event?: any): void; /** * Open the picker as a dialog */ private openAsDialog; /** * Open the picker as popup */ private openAsPopup; private createPopup; /** * Create the popup PositionStrategy. * */ private createPopupPositionStrategy; static ɵfac: i0.ɵɵFactoryDeclaration, [null, null, null, null, null, { optional: true; }, null, { optional: true; }, { optional: true; }]>; static ɵcmp: i0.ɵɵComponentDeclaration, "rad-ui-datepicker-date-time-picker", never, { "backdropClass": "backdropClass"; "panelClass": "panelClass"; "startAt": "startAt"; "pickerType": "pickerType"; "pickerMode": "pickerMode"; "disabled": "disabled"; "opened": "opened"; "scrollStrategy": "scrollStrategy"; }, { "afterPickerClosed": "afterPickerClosed"; "afterPickerOpen": "afterPickerOpen"; "yearSelected": "yearSelected"; "monthSelected": "monthSelected"; }, never, never, false, never>; }