import { AfterViewChecked, ChangeDetectorRef, ElementRef, Injector, OnInit, TemplateRef } from '@angular/core';
import { FormControl } from '@angular/forms';
import { DateAdapter } from '@angular/material/core';
import { MatDatepicker, MatDatepickerInput, MatDatepickerInputEvent } from '@angular/material/datepicker';
import { NgxMaterialTimepickerComponent } from 'ngx-material-timepicker';
import { FormValueOptions } from '../../../../../types/form-value-options.type';
import { OBaseTableCellEditor } from '../o-base-table-cell-editor.class';
import * as i0 from "@angular/core";
export declare const DEFAULT_INPUTS_O_TABLE_CELL_EDITOR_TIME: string[];
export declare class OTableCellEditorTimeComponent extends OBaseTableCellEditor implements OnInit, AfterViewChecked {
    protected injector: Injector;
    private adapter;
    templateref: TemplateRef<any>;
    protected dateInput: ElementRef;
    protected hourInput: ElementRef;
    picker: NgxMaterialTimepickerComponent;
    oStartView: 'month' | 'year';
    datepickerInput: MatDatepickerInput<Date>;
    formControlHour: FormControl;
    formControlDate: FormControl;
    oDateFormat: string;
    oHourMax: string;
    oHourMin: string;
    oDateTouchUi: boolean;
    oDateStartAt: string;
    private _oDateLocale;
    protected oHourPlaceholder: string;
    protected oDatePlaceholder: string;
    oHourFormat: number;
    protected onKeyboardInputDone: boolean;
    protected oMinDate: string;
    protected oMaxDate: string;
    protected _minDateString: string;
    protected _maxDateString: string;
    protected datepicker: MatDatepicker<Date>;
    private momentSrv;
    enabledCommitOnTabPress: boolean;
    protected activeKeys: object;
    cd: ChangeDetectorRef;
    onDocumentKeydown(event: KeyboardEvent): void;
    constructor(injector: Injector, adapter: DateAdapter<any>);
    initialize(): void;
    createInternalFormControl(): void;
    ngAfterViewChecked(): void;
    setTime(event: string): void;
    onDateChange(event: MatDatepickerInputEvent<any>): void;
    protected updateValeOnInputChange(blurEvent: any): void;
    protected parseHour(value: string): string;
    onHourChange(event: any): void;
    setTimestampValue(value: any, options?: FormValueOptions): void;
    protected convertToFormatString(value: any): string;
    openDatepicker(d: MatDatepicker<Date>): void;
    getPlaceholderHour(): string;
    getPlaceholderDate(): string;
    open(e?: Event): void;
    protected handleKeydown(e: KeyboardEvent): void;
    protected handleKeyup(e: KeyboardEvent): void;
    protected updateComponentValue(): void;
    protected modifyPickerMethods(): void;
    hasErrorDate(error: string): boolean;
    hasErrorExclusive(error: string): boolean;
    hasErrorHour(error: string): boolean;
    getCellDataDate(): any;
    getCellDataHour(): any;
    startEdition(data: any): void;
    get formatString(): string;
    get minDateString(): string;
    set minDateString(val: string);
    get maxDateString(): string;
    set maxDateString(val: string);
    set oDateLocale(value: string);
    get minDate(): Date;
    get maxDate(): Date;
    onDatepickerClosed(): void;
    commitEdition(): void;
    onKeyDown(e: KeyboardEvent): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<OTableCellEditorTimeComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<OTableCellEditorTimeComponent, "o-table-cell-editor-time", never, { "oDateFormat": { "alias": "date-format"; "required": false; }; "oDateLocale": { "alias": "date-locale"; "required": false; }; "oDateStartView": { "alias": "date-start-view"; "required": false; }; "oMinDate": { "alias": "date-min"; "required": false; }; "oMaxDate": { "alias": "date-max"; "required": false; }; "oDateTouchUi": { "alias": "date-touch-ui"; "required": false; }; "oDateStartAt": { "alias": "date-start-at"; "required": false; }; "oHourFormat": { "alias": "hour-format"; "required": false; }; "oHourMin": { "alias": "hour-min"; "required": false; }; "oHourMax": { "alias": "hour-max"; "required": false; }; "oHourPlaceholder": { "alias": "hour-placeholder"; "required": false; }; "oDatePlaceholder": { "alias": "date-placeholder"; "required": false; }; }, {}, never, never, true, never>;
}
