import { ChangeDetectorRef, EventEmitter, OnChanges, OnInit } from "@angular/core";
import { Moment } from "moment/moment";
import { ITimeframe, ITimeFramePreset } from "./public-api";
import { TimeframeService } from "./services/timeframe.service";
import * as i0 from "@angular/core";
export declare class TimeFramePickerComponent implements OnChanges, OnInit {
    private timeFrameService;
    changeDetector: ChangeDetectorRef;
    /**  earliest selectable date */
    minDate: Moment;
    /**  latest selectable date */
    maxDate: Moment;
    /** model of timepicker */
    startModel: ITimeframe;
    /** Allows popup box to be attached to document.body */
    appendToBody: boolean;
    model: ITimeframe;
    /** callback to be invoked on model change */
    changed: EventEmitter<ITimeframe>;
    isFocused: boolean;
    modelDefault: any;
    distanceToEndDate: number;
    constructor(timeFrameService: TimeframeService, changeDetector: ChangeDetectorRef);
    ngOnChanges(changes: any): void;
    ngOnInit(): void;
    selectPreset(key: string, value: ITimeFramePreset): void;
    isPresetSelected(key: string): boolean;
    onChangeInternalStart(event: any): void;
    onChangeInternalEnd(event: any): void;
    onBlurInternal(): void;
    onFocusInternal(): void;
    private validateCombination;
    private updateDistanceToEndDate;
    private onChangeInternal;
    static ɵfac: i0.ɵɵFactoryDeclaration<TimeFramePickerComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<TimeFramePickerComponent, "nui-time-frame-picker", never, { "minDate": "minDate"; "maxDate": "maxDate"; "startModel": "startModel"; "appendToBody": "appendToBody"; }, { "changed": "changed"; }, never, never>;
}
