import { EventEmitter } from '@angular/core';
import { ReplaySubject } from 'rxjs';
import { DateResult } from '../date-picker.interface';
import * as i0 from "@angular/core";
export declare class DokuDatePickerBasicProps {
    /**
     * Value of the date picker.
     *
     * If it's a string, it must be in ISO String.
     *
     * @default null
     */
    get value(): Date | null;
    set value(date: Date | string | null | undefined);
    private _value;
    /**
     * Minimum date allowed to be selected.
     *
     * If it's a string, it must be in ISO String.
     *
     * @default null
     */
    get minDate(): Date | null;
    set minDate(date: Date | string | null | undefined);
    private _minDate;
    /**
     * Maximum date allowed to be selected.
     *
     * If it's a string, it must be in ISO String.
     *
     * @default null
     */
    get maxDate(): Date | null;
    set maxDate(date: Date | string | null | undefined);
    private _maxDate;
    /**
     * Whether date picker is disabled.
     *
     * @default false
     */
    get disabled(): boolean;
    set disabled(value: boolean);
    private _disabled;
    /**
     * Whether date picker is readonly.
     *
     * @default false
     */
    get readonly(): boolean;
    set readonly(value: boolean);
    private _readonly;
    /**
     * An event emitted when the value changes.
     */
    valueChange: EventEmitter<DateResult>;
    protected notifyChange$: ReplaySubject<"value" | "disabled" | "readonly" | "minDate" | "maxDate">;
    private normalizeDate;
    static ɵfac: i0.ɵɵFactoryDeclaration<DokuDatePickerBasicProps, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<DokuDatePickerBasicProps, "doku-date-picker-basic-props", ["dokuDatePickerBasicProps"], { "value": "value"; "minDate": "minDate"; "maxDate": "maxDate"; "disabled": "disabled"; "readonly": "readonly"; }, { "valueChange": "valueChange"; }, never, never, true>;
}
