import React, { ChangeEvent } from 'react';
import { ReactDatePickerProps } from 'react-datepicker';
import 'react-datepicker/dist/react-datepicker.css';
import { FieldWrapperProps } from '@parlor/components/select-v4';
import { FormAwareProps } from '@parlor/ui/form/hooks';
import './date-input-font.module.scss';
export type BaseDateInputProps = {
    [key: string]: any;
    asSelectorBox?: boolean;
    /**
     * calendar className
     */
    calendarClassName?: string;
    children?: React.ReactNode;
    /**
     * Input classes.
     */
    className?: string;
    /**
     * Additional Classes to pass to Input
     */
    classes?: string;
    /**
     * date picker props
     */
    datePickerProps?: Partial<ReactDatePickerProps>;
    /**
     * Input disabled.
     */
    disabled?: boolean;
    /**
     * Input id.
     */
    id?: string;
    /**
     * show time boolean
     */
    isShowTime?: boolean;
    /**
     * Input name.
     */
    name?: string;
    /**
     * Input on change.
     */
    onChange?: (event: ChangeEvent<HTMLInputElement>) => void;
    /**
     * fires onInput and return `e.currentTarget.value`
     */
    onValueChange?: (targetValue: string) => void;
    /**
     * Input pattern.
     */
    pattern?: string;
    /**
     * Input placeholder.
     */
    placeholder?: string;
    /**
     * Input required.
     */
    required?: boolean;
    /**
     * show time select only
     */
    showTimeSelectOnly?: boolean;
    /**
     * Input size.
     */
    size?: 'middle' | 'large' | string;
    /**
     * Input type.
     */
    type?: string;
    /**
     * Input value.
     */
    value?: string;
    /**
     * Variants for custom options.
     */
    variant?: 'need' | 'opportunity';
};
export type DateInputProps = FormAwareProps & FieldWrapperProps & BaseDateInputProps & {
    placeholder?: string;
};
export declare const DateInput: ({ name, children, datePickerId, value, isOpenFromForm, setIsOpenFromForm, asSelectorBox, isShowTime, placeholder, disabled, className, calendarClassName, datePickerProps, ...props }: Omit<BaseDateInputProps, 'onChange'>) => JSX.Element;
export declare const FormAwareDateField: ({ hint, label, required, rules, size, variation, name, disabled, formFieldClassName, ...props }: DateInputProps) => JSX.Element;
