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