import { ElementRef, EventEmitter, OnDestroy, OnInit } from '@angular/core';
import { DateTime } from 'luxon';
import { BehaviorSubject } from 'rxjs';
import * as i0 from "@angular/core";
export interface ITimePickerOutputEvent {
    type: 'timeChanged' | 'timeCleared' | 'timeInvalid';
    data: string;
}
export interface ITimePickerInputEvent {
    type: 'setTime';
    data: string;
}
export declare class TimePickerComponent implements OnInit, OnDestroy {
    inputEvents: EventEmitter<ITimePickerInputEvent>;
    outputEvents: EventEmitter<ITimePickerOutputEvent>;
    id: string;
    inputField?: ElementRef;
    constructor();
    private timeValue;
    private modelValue;
    private eventsSub?;
    private bSubject?;
    private sub?;
    set model(s: string);
    get model(): string;
    get time(): DateTime | null;
    set time(time: DateTime | null);
    private validInputFormats;
    private validateTime;
    private sameTime;
    setTimeIfChanged(newTime: DateTime): void;
    setTime(newValue: string): void;
    inputChanged(newValue: string): void;
    ngOnInit(): void;
    clear(): void;
    get subject(): BehaviorSubject<string>;
    ngOnDestroy(): void;
    focus(): boolean;
    static ɵfac: i0.ɵɵFactoryDeclaration<TimePickerComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<TimePickerComponent, "nof-time-picker", never, { "inputEvents": { "alias": "inputEvents"; "required": true; }; "id": { "alias": "id"; "required": true; }; }, { "outputEvents": "outputEvents"; }, never, never, false, never>;
}
