import { OnDestroy, OnInit } from '@angular/core';
import { FormControl } from '@angular/forms';
import { MatDatepickerInputEvent, MatDateRangePicker } from '@angular/material/datepicker';
import { MatFormFieldAppearance } from '@angular/material/form-field';
import { SdLabelDefDirective } from '@sd-angular/core/forms/directives';
import { SdSize } from '@sd-angular/core/utilities/models';
import { Moment } from 'moment';
import * as i0 from "@angular/core";
interface Daterange {
    from?: string | null;
    to?: string | null;
}
export declare class SdDateRange implements OnDestroy, OnInit {
    #private;
    id1: string;
    id2: string;
    picker: import("@angular/core").Signal<MatDateRangePicker<Date> | undefined>;
    sdLabelDef: import("@angular/core").Signal<SdLabelDefDirective | undefined>;
    private cdRef;
    private formConfig;
    autoIdInput: import("@angular/core").InputSignal<string | null | undefined>;
    autoId: import("@angular/core").Signal<string | undefined>;
    name: import("@angular/core").InputSignal<string>;
    size: import("@angular/core").InputSignal<SdSize>;
    form: import("@angular/core").InputSignal<any>;
    label: import("@angular/core").InputSignal<string | undefined>;
    helperText: import("@angular/core").InputSignal<string | undefined>;
    hideInlineError: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
    required: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
    disabled: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
    appearanceInput: import("@angular/core").InputSignal<MatFormFieldAppearance | undefined>;
    appearance: import("@angular/core").Signal<MatFormFieldAppearance>;
    minInput: import("@angular/core").InputSignal<any>;
    resolvedMin: import("@angular/core").Signal<Date | null>;
    maxInput: import("@angular/core").InputSignal<any>;
    resolvedMax: import("@angular/core").Signal<Date | null>;
    valueModel: import("@angular/core").ModelSignal<Daterange | null | undefined>;
    sdChange: import("@angular/core").OutputEmitterRef<Daterange | null | undefined>;
    isMobileOrTablet: boolean;
    formControl: FormControl<any>;
    control1: FormControl<any>;
    control2: FormControl<any>;
    constructor();
    ngOnInit(): void;
    ngOnDestroy(): void;
    onStartChange: (event: MatDatepickerInputEvent<Moment>) => void;
    onEndChange: (event: MatDatepickerInputEvent<Moment>) => void;
    clear: () => void;
    onEnter: () => void;
    onFocus: () => void;
    onBlur: () => void;
    onClosePicker: () => void;
    onOpenPicker: (event: MouseEvent) => void;
    static ɵfac: i0.ɵɵFactoryDeclaration<SdDateRange, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<SdDateRange, "sd-date-range", never, { "autoIdInput": { "alias": "autoId"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "form": { "alias": "form"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "helperText": { "alias": "helperText"; "required": false; "isSignal": true; }; "hideInlineError": { "alias": "hideInlineError"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "appearanceInput": { "alias": "appearance"; "required": false; "isSignal": true; }; "minInput": { "alias": "min"; "required": false; "isSignal": true; }; "maxInput": { "alias": "max"; "required": false; "isSignal": true; }; "valueModel": { "alias": "model"; "required": false; "isSignal": true; }; }, { "valueModel": "modelChange"; "sdChange": "sdChange"; }, ["sdLabelDef"], never, true, never>;
}
export {};
