import { type IntlShape } from 'react-intl'; import type { RequireAtLeastOne } from 'type-fest'; import type { Precision } from '../../../core/time/shared.types.js'; import type { TimeValue, Timeframe } from '../../../core/types/time.js'; /** @internal */ export declare const messages: { ms: { description: string; defaultMessage: string; id: string; }; s: { description: string; defaultMessage: string; id: string; }; m: { description: string; defaultMessage: string; id: string; }; h: { description: string; defaultMessage: string; id: string; }; d: { description: string; defaultMessage: string; id: string; }; w: { description: string; defaultMessage: string; id: string; }; M: { description: string; defaultMessage: string; id: string; }; q: { description: string; defaultMessage: string; id: string; }; y: { description: string; defaultMessage: string; id: string; }; requiredTimeframe: { defaultMessage: string; id: string; description: string; }; requiredFrom: { defaultMessage: string; id: string; description: string; }; requiredTo: { defaultMessage: string; id: string; description: string; }; invalid: { description: string; defaultMessage: string; id: string; }; invalidFrom: { defaultMessage: string; description: string; id: string; }; invalidTo: { defaultMessage: string; id: string; description: string; }; invalidTimeframe: { defaultMessage: string; id: string; description: string; }; invalidOrder: { defaultMessage: string; id: string; description: string; }; outsideRange: { defaultMessage: string; id: string; description: string; }; now: { description: string; defaultMessage: string; id: string; }; to: { description: string; defaultMessage: string; id: string; }; tomorrow: { description: string; defaultMessage: string; id: string; }; today: { description: string; defaultMessage: string; id: string; }; yesterday: { description: string; defaultMessage: string; id: string; }; 'roundDown-s': { description: string; defaultMessage: string; id: string; }; 'roundDown-m': { description: string; defaultMessage: string; id: string; }; 'roundDown-h': { description: string; defaultMessage: string; id: string; }; 'roundDown-d': { description: string; defaultMessage: string; id: string; }; 'roundDown-w': { description: string; defaultMessage: string; id: string; }; 'roundDown-M': { description: string; defaultMessage: string; id: string; }; 'roundDown-q': { description: string; defaultMessage: string; id: string; }; 'roundDown-y': { description: string; defaultMessage: string; id: string; }; 'full-day': { description: string; defaultMessage: string; id: string; }; 'remaining-day': { description: string; defaultMessage: string; id: string; }; }; /**@internal */ export declare function isExpressionString(candidate: string): boolean; /** * Converts a candidate value into a TimeValue. In case it doesn't yield * a valid date it sets absoluteDate to emptyString and returns the * partial value in value. * @internal */ export declare function getTimeValue(candidate?: TimeValue | string | null, precision?: Precision, relativeNow?: number, type?: 'iso8601' | 'expression'): TimeValue | undefined | null; /** @internal */ export declare function mapToPartialTimeframe(value?: Partial<{ from: string | null | TimeValue; to: string | null | TimeValue; }> | null, precision?: Precision): { from: TimeValue | null; to: TimeValue | null; } | null; /** @internal */ export declare function mapToTimeframe(value?: Partial<{ from: string; to: string; }> | Partial | null, precision?: 'minutes' | 'seconds' | 'milliseconds'): RequireAtLeastOne | null; /** * You can use the `_parseValue` utility function to convert a Timeframe or Timeframe value into an object containing `from` and `to` * `TimeValue`s or null values. If `fallbackToNow` is set to true, the `to` value falls back to `now` in case the to value is empty. * @internal */ export declare function parseValue(value: { from: TimeValue | string | null; to: TimeValue | string | null; } | null, fallbackToNow?: boolean, precision?: Precision): { from: TimeValue | null; to: TimeValue | null; }; /** * Formatter that displays sanitized time value strings. * @internal */ export declare function formatTimeValue(input: TimeValue | Omit | string | null, precision?: Precision): string; /** * Returns the from and to string values from a Timeframe or its shorthand version. * @internal */ export declare function getFromToValues(value?: { from: TimeValue | string | null; to: TimeValue | string | null; } | null): { valueFrom?: undefined; valueTo?: undefined; } | { valueFrom: string | undefined; valueTo: string | undefined; }; /** * Returns the display value string for a given timeframe. * @internal */ export declare function formatTimeframe(value: Timeframe | { from: string; to: string; } | null, intl: IntlShape, precision?: Precision): { displayValue: string; isInvalid: boolean; hint: string; }; /** * Extracts the display value string from the from and to time values. * @internal */ export declare function extractDisplayValueFromTimeValues(from: TimeValue | null, to: TimeValue | null, intl: IntlShape, precision?: Precision, valueFrom?: string, valueTo?: string): { displayValue: string; isInvalid: boolean; hint: string; }; /** * @internal */ export declare function formatDetails(details: TimeValue, intl: IntlShape, precision?: Precision, showTimeOnly?: boolean, isRelativeToNow?: boolean): string; /** * Gets the translated message to show when a value is outside the min and/or max * @internal * @deprecated - use proper validation fn with error messages object */ export declare function getOutsideRangeMessage(intl: IntlShape, min?: string, max?: string, precision?: Precision): string; /** * Removes the specified precision from a ISOString. * @internal */ export declare function removePrecision(isoString: string, precision?: Precision): string; /** * Removes the specified precision from a Timeframe or returns the input unchanged. * @internal */ export declare const removePrecisionFromTimeFrame: (date: { from: TimeValue | string | null; to: TimeValue | string | null; } | null | undefined, precision?: Precision) => { from: TimeValue | null; to: TimeValue | null; } | null; /** * Removes the specified precision from a TimeValue or returns the input unchanged. * @internal */ export declare const removePrecisionFromTimeValue: (date: TimeValue | null, precision?: Precision) => TimeValue | null;