import { FocusProperties } from '@dojo/framework/core/mixins/Focus';
import { ThemeProperties } from '../middleware/theme';
import { RenderResult } from '@dojo/framework/core/interfaces';
export interface DateInputProperties extends ThemeProperties, FocusProperties {
    /** The initial value */
    initialValue?: string;
    /** Controlled value property */
    value?: string;
    /** Set the latest date the calendar will display in (it will show the whole month but not allow previous selections) */
    max?: string;
    /** Set the earliest date the calendar will display (it will show the whole month but not allow previous selections) */
    min?: string;
    /** name used on the underlying form input's name attribute */
    name: string;
    /** Callback fired with new value in YYYY-MM-DD format */
    onValue?(date: string): void;
    /** Callback fired when input validation changes */
    onValidate?: (valid: boolean | undefined, message: string) => void;
}
export interface DateInputChildren {
    /** The label for the wrapped text input */
    label?: RenderResult;
}
declare const _default: import("@dojo/framework/core/interfaces").OptionalWNodeFactory<{
    properties: DateInputProperties & import("@dojo/framework/core/interfaces").WidgetProperties & {
        variant?: "default" | "inherit" | undefined;
    } & import("@dojo/framework/core/middleware/theme").ThemeProperties & FocusProperties & import("@dojo/framework/core/interfaces").I18nProperties;
    children: string | number | boolean | import("@dojo/framework/core/interfaces").VNode | import("@dojo/framework/core/interfaces").WNode<any> | import("@dojo/framework/core/interfaces").DNode<any>[] | DateInputChildren;
}>;
export default _default;
