import { MaybeDateValue } from '../../../shared/types'; import { DateTimeEditableSegmentTypes } from '../types'; export declare enum DateComponent { dayPeriod = 1, second = 2, minute = 4, hour = 8, day = 16, month = 32, year = 64 } declare type DateComponentsLike = { [P in DateTimeEditableSegmentTypes]?: number | null; }; export declare class DateComponents { static from(date?: MaybeDateValue): DateComponents; static isSame(type: DateTimeEditableSegmentTypes, a: DateComponents, b: DateComponents): boolean; static isEqual(a: DateComponents, b: DateComponents): boolean; static isDateComponentType(type: string): type is DateTimeEditableSegmentTypes; private components; private filledComponentsMask; constructor(components?: DateComponentsLike); get(type: DateTimeEditableSegmentTypes): number | null; get(type: DateTimeEditableSegmentTypes, defaultValue: number): number; get(type: DateTimeEditableSegmentTypes, defaultValue: number | null | undefined): number | null; has(components: DateComponent): boolean; with(type: DateTimeEditableSegmentTypes, value: number | null): DateComponents; toDate(defaultDate: Date): Date; private set; private invalidateMask; } export {};