import { DateValue } from '../../../shared/types'; import { DateTimeEditableSegmentTypes, DateTimeSegment } from '../types'; import { DateComponent, DateComponents } from './DateComponents'; export interface DateTimeFieldAdapterOptions { formatter: Intl.DateTimeFormat; min?: DateValue; max?: DateValue; placeholder?: DateValue; } export declare class DateTimeFieldAdapter { readonly resolvedOptions: Intl.ResolvedDateTimeFormatOptions; readonly formatter: Intl.DateTimeFormat; readonly min: DateComponents; readonly minTime: number; readonly max: DateComponents; readonly maxTime: number; readonly placeholder: number; readonly requiredSegments: DateComponent; readonly placeholderParts: Intl.DateTimeFormatPart[]; private minSpecified; private maxSpecified; private numberFormatter; private baseDate; constructor(options: DateTimeFieldAdapterOptions); getSegments(dateComponents: DateComponents): DateTimeSegment[]; getLimits(dateComponents: DateComponents, type: DateTimeEditableSegmentTypes): { min: number; max: number; }; moveByStep(dateComponents: DateComponents, type: DateTimeEditableSegmentTypes, step: number): number; setSegmentValue(dateComponents: DateComponents, type: DateTimeEditableSegmentTypes, segmentValue: number | null): DateComponents; toDate(dateComponents: DateComponents): Date | null; normalizeDateComponents(dateComponents: DateComponents): DateComponents; private formatValue; private getInitialValueForStep; private getSegmentsMaskFromFormatParts; private formatToParts; }