import React from 'react';
import type { DateFieldValue } from '../date-picker/types.js';
import type { TimePeriod } from '../time-picker/type.js';
interface DateTimeFieldProps {
    value?: DateFieldValue;
    defaultValue?: DateFieldValue;
    onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
    onBlur?: (e: React.FocusEvent<HTMLInputElement>) => void;
    autoClose?: boolean;
    disableFutureDates?: boolean;
    disablePastDates?: boolean;
    dateFormat?: string;
    onBlurDate?: (e: React.FocusEvent<HTMLInputElement>) => void;
    onChangeDate?: (e: React.ChangeEvent<HTMLInputElement>) => void;
    minDate?: string;
    maxDate?: string;
    weekStart?: string;
    onChangeTime?: (e: React.ChangeEvent<HTMLInputElement>) => void;
    onBlurTime?: (e: React.FocusEvent<HTMLInputElement>) => void;
    timeFormat?: string;
    timeIntervals?: number;
    timeZone?: string;
    showTimezoneSelect?: boolean;
    includeContinent?: boolean;
}
export declare const formatToISODateTimeWithOffset: (datePart: string, timePart: string, timeZone?: string) => string;
export declare const useDateTimePicker: ({ value, defaultValue, onChange, onBlur, autoClose, disableFutureDates, disablePastDates, dateFormat, weekStart, minDate, maxDate, timeFormat, timeIntervals, timeZone, showTimezoneSelect, includeContinent, }: DateTimeFieldProps) => {
    isOpen: boolean;
    setIsOpen: React.Dispatch<React.SetStateAction<boolean>>;
    activeTab: "time" | "date";
    onChangeTabs: (value: string) => void;
    isCalendarView: boolean;
    dateTimeToDisplay: string;
    handleInputChangeField: (e: React.ChangeEvent<HTMLInputElement>) => void;
    handleOnBlur: (e: React.FocusEvent<HTMLInputElement>) => void;
    date: Date | undefined;
    handleDateSelect: (date?: Date) => void;
    handleInputChange: (e: React.ChangeEvent<HTMLInputElement>) => void;
    handleBlur: (e: React.FocusEvent<HTMLInputElement>) => void;
    disabledDates: {
        before: Date;
        after: Date;
    } | {
        before: Date;
        after?: undefined;
    } | {
        after: Date;
        before?: undefined;
    } | undefined;
    weekStartDay: import("../date-picker/types.js").WeekStartDayNumber;
    handleDayClick: () => void;
    selectedHour: string;
    selectedMinute: string;
    selectedPeriod: TimePeriod | undefined;
    setSelectedHour: React.Dispatch<React.SetStateAction<string>>;
    setSelectedMinute: React.Dispatch<React.SetStateAction<string>>;
    setSelectedPeriod: React.Dispatch<React.SetStateAction<TimePeriod | undefined>>;
    hours: string[];
    minutes: string[];
    onCancel: () => void;
    timeZonesOptions: {
        value: string;
        label: string;
    }[];
    handleSave: () => void;
    selectedTimeZone: string | string[] | undefined;
    setSelectedTimeZone: React.Dispatch<React.SetStateAction<string | string[] | undefined>>;
    is12HourFormat: boolean;
    isDisableSelect: boolean;
};
export {};
//# sourceMappingURL=use-date-time-picker.d.ts.map