import { OnInit } from '@angular/core';
import { ControlValueAccessor, FormBuilder } from '@angular/forms';
import { NGXLogger } from 'ngx-logger';
import { Feature } from '../../core/enums/feature';
import { JunteUIConfig } from '../../config';
import { UI } from '../../core/enums/ui';
import { Width } from '../../core/enums/width';
import { BreakpointService } from '../../layout/responsive/breakpoint.service';
import { PopoverInstance } from '../../overlays/popover/popover.service';
import { DatePickerType } from './enums';
declare enum Meridian {
    am = " AM",
    pm = " PM"
}
export declare class DatePickerComponent implements OnInit, ControlValueAccessor {
    private logger;
    private fb;
    private breakpoint;
    config: JunteUIConfig;
    readonly host = "jnt-date-picker-host";
    ui: typeof UI;
    datePickerType: typeof DatePickerType;
    meridians: typeof Meridian;
    private _type;
    reference: {
        popover: PopoverInstance;
    };
    meridian: Meridian;
    _width: Width;
    dateControl: import("@angular/forms").FormControl;
    timeControl: import("@angular/forms").FormControl;
    hoursControl: import("@angular/forms").FormControl;
    minutesControl: import("@angular/forms").FormControl;
    calendarControl: import("@angular/forms").FormControl;
    form: import("@angular/forms").FormGroup;
    get mobile(): boolean;
    calendarOpened: boolean;
    timeOpened: boolean;
    placeholder: string;
    features: Feature[];
    set type(type: DatePickerType);
    get type(): DatePickerType;
    set width(width: Width);
    onChange: (value: any) => void;
    onTouched: () => void;
    registerOnChange: (fn: any) => any;
    registerOnTouched: (fn: any) => any;
    onBlur: () => void;
    constructor(logger: NGXLogger, fb: FormBuilder, breakpoint: BreakpointService, config: JunteUIConfig);
    ngOnInit(): void;
    close(): void;
    clear(): void;
    update(value: string, close?: boolean): void;
    setTime(): void;
    writeValue(date: Date): void;
    setDisabledState(disabled: boolean): void;
}
export {};
