import { AfterViewInit, ElementRef, Injector, OnDestroy, OnInit } from '@angular/core';
import { ValidatorFn } from '@angular/forms';
import { NgxMaterialTimepickerComponent } from 'ngx-material-timepicker';
import { FormValueOptions } from '../../../types/form-value-options.type';
import { OFormComponent } from '../../form/o-form.component';
import { OFormDataComponent } from '../../o-form-data-component.class';
import * as i0 from "@angular/core";
export type OHourValueType = 'string' | 'timestamp';
export declare const DEFAULT_INPUTS_O_HOUR_INPUT: string[];
export declare class OHourInputComponent extends OFormDataComponent implements OnInit, AfterViewInit, OnDestroy {
    textInputEnabled: boolean;
    min: string;
    max: string;
    protected _format: number;
    protected onKeyboardInputDone: boolean;
    protected _valueType: OHourValueType;
    picker: NgxMaterialTimepickerComponent;
    private pickerClosedSub?;
    private readonly destroy$;
    private skipNextBlur;
    constructor(form: OFormComponent, elRef: ElementRef, injector: Injector);
    initialize(): void;
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    onKeyDown(e: KeyboardEvent): void;
    innerOnBlur(event: any): void;
    registerOnFormControlChange(): void;
    get formatString(): string;
    open(e?: Event): void;
    setTime(event: any): void;
    setTimestampValue(value: any, options?: FormValueOptions): void;
    resolveValidators(): ValidatorFn[];
    set format(val: number);
    get format(): number;
    set valueType(val: any);
    get valueType(): any;
    convertToOHourValueType(val: any): OHourValueType;
    onChangeEvent(arg: any): void;
    onTimepickerChange(event: string): void;
    protected modifyPickerMethods(): void;
    protected setFormValue(val: any, options?: FormValueOptions, setDirty?: boolean): void;
    protected updateValeOnInputChange(blurEvent: any): void;
    protected parseHour(value: string): string;
    protected emitOnValueChange(type: any, newValue: any, oldValue: any): void;
    protected getValueAsString(val: any): string;
    protected convertToFormatString(value: any): string;
    static ɵfac: i0.ɵɵFactoryDeclaration<OHourInputComponent, [{ optional: true; }, null, null]>;
    static ɵcmp: i0.ɵɵComponentDeclaration<OHourInputComponent, "o-hour-input", never, { "format": "format"; "textInputEnabled": "text-input-enabled"; "min": "min"; "max": "max"; "valueType": "value-type"; }, {}, never, never, false, never>;
}
