import { type Granularity } from './date-segments.cjs'; /** Anything a date-shaped member accepts: the native object, or its ISO-8601 wire form. */ export type DateInput = Date | string; /** A date range, structurally identical to Calendar's own `DateRange`. */ export interface DateRangeLike { start: Date; end: Date | null; } /** What {@link toCalendarValue} produces — the `Date`-shaped selection every framework emits. */ export type DateValue = Date | Date[] | DateRangeLike | null; /** How many dates a selection holds, deciding how a wire string widens. */ export type SelectionModeLike = 'single' | 'multiple' | 'range'; /** @internal Puts {@link toDate}'s malformed-input warning back to "not yet warned". */ export declare function resetMalformedDateWarning(): void; /** * Reads a consumer-supplied value into a local `Date` or `null`, parsing strings field-by-field (never via `new Date(string)`, which reads `YYYY-MM-DD` as UTC) and warning in dev on invalid shapes. * * @param input a `Date`, an ISO-8601 string, or `null`/`undefined` * @param source the property it arrived on, named in the warning * @returns the local calendar date, or `null` when unreadable */ export declare function toDate(input: DateInput | null | undefined, source?: string): Date | null; /** * The canonical ISO-8601 string for a date — what to persist and what `