import { InternalDate } from '../../../lib/date/InternalDate';
import type { InputKeyResult, InternalDateTypesOrder } from '../../../lib/date/types';
import { InternalDateComponentType } from '../../../lib/date/types';
import type { DatePickerLocale } from '../../DatePicker/locale';
import type { DateInputProps } from '../DateInput';
export declare class InternalDateMediator {
    iDate: InternalDate;
    update: (props: DateInputProps, locale: DatePickerLocale) => InternalDateMediator;
    inputKey(key: string, type: InternalDateComponentType | null, inputMode: boolean, dateInputAllowInvalidValuesInDays?: boolean): InputKeyResult;
    paste: (pasted: string) => InternalDateMediator;
    restore: () => boolean;
    shiftDateComponent(type: InternalDateComponentType | null, step: number): boolean;
    getShiftedType(type: InternalDateComponentType | null, step: number): InternalDateComponentType | null;
    getFragments: () => import("../../../lib/date/types").InternalDateFragment[];
    deleteOneCharRight: (type: InternalDateComponentType, inputMode: boolean) => void;
    isChangedLocale: (locale: DatePickerLocale) => boolean;
    isNull: (type: InternalDateComponentType | null) => boolean;
    isEmpty: () => boolean;
    get: (type: InternalDateComponentType | null) => import("../../../lib/date/types").InternalDateComponentRaw;
    clear: (type: InternalDateComponentType | null) => InternalDate;
    validateString: (value: string) => boolean;
    getString: () => string;
    getInternalString: () => string;
    getTypesOrder: () => InternalDateTypesOrder;
    getLeftmostType: () => InternalDateComponentType;
    getRightmostType: () => InternalDateComponentType;
}
