import { OnInit, ChangeDetectorRef, OnDestroy } from '@angular/core';
import { AbstractControl } from '@angular/forms';
import { BaseDynComponent } from '../../../core/base-dyn/base-dyn.component';
import { DateRangeComponentInputs } from './date-range.component.inputs';
import * as i0 from "@angular/core";
import * as i1 from "@angular/common";
import * as i2 from "@eui/components/legacy/ux-form-group";
import * as i3 from "@eui/components/eui-date-range-selector";
import * as i4 from "@angular/forms";
import * as i5 from "@eui/components/legacy/ux-control-feedback";
import * as i6 from "../../../directives/native-element-provider.directive";
import * as i7 from "../../../pipes/resolve-label.pipe";
import * as i8 from "@ngx-translate/core";
export declare class DateRangeComponent extends BaseDynComponent implements OnInit, OnDestroy {
    private cdRef;
    inputs: DateRangeComponentInputs;
    minDateObj: Date;
    maxDateObj: Date;
    date: {
        startDate: Date;
        endDate: Date;
    };
    startControl: AbstractControl;
    endControl: AbstractControl;
    private startControlStatusSubs;
    private endControlStatusSubs;
    private modeSubs;
    private valueSubs;
    private startValSubs;
    private endValSubs;
    private _tempStartDate;
    private _tempEndDate;
    private isTuple;
    constructor(config: any, cdRef: ChangeDetectorRef);
    ngOnInit(): void;
    ngOnDestroy(): void;
    getFirstSelectedDate(event: Date): void;
    getSecondSelectedDate(event: Date): void;
    private resolveControl;
    private subsValChanges;
    private setDatRangeOnComponent;
    private formatInputs;
    /**
     * DD/MM/YYYY format - manually
     */
    private getDateFromFormattedString;
    private manualHandleChangeDetection;
    static ɵfac: i0.ɵɵFactoryDeclaration<DateRangeComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<DateRangeComponent, "ux-dyn-date-range", never, {}, {}, never, never, false>;
}
export declare class UxDynDateInputComponentModule {
    static ɵfac: i0.ɵɵFactoryDeclaration<UxDynDateInputComponentModule, never>;
    static ɵmod: i0.ɵɵNgModuleDeclaration<UxDynDateInputComponentModule, [typeof DateRangeComponent], [typeof i1.CommonModule, typeof i2.UxFormGroupComponentModule, typeof i3.EuiDateRangeSelectorModule, typeof i4.ReactiveFormsModule, typeof i5.UxControlFeedbackComponentModule, typeof i6.UxDynNativeElementProviderDirectiveModule, typeof i7.UxDynResolveLabelPipeModule, typeof i8.TranslateModule], [typeof DateRangeComponent]>;
    static ɵinj: i0.ɵɵInjectorDeclaration<UxDynDateInputComponentModule>;
}
//# sourceMappingURL=date-range.component.d.ts.map