import type { DateTime } from '@gravity-ui/date-utils'; import type { DatePickerState } from "../../DatePicker/index.js"; import type { RelativeDateFieldState } from "../../RelativeDateField/index.js"; import type { DateFieldBase } from "../../types/index.js"; export type Value = { type: 'absolute'; value: DateTime; } | { type: 'relative'; value: string; }; export type RelativeDatePickerMode = Value['type']; export interface RelativeDatePickerStateOptions extends DateFieldBase { /** Round up parsed date to the nearest granularity. */ roundUp?: boolean; } export interface RelativeDatePickerState { value: Value | null; setValue: (value: Value | null) => void; mode: RelativeDatePickerMode; setMode: (mode: RelativeDatePickerMode) => void; datePickerState: DatePickerState; relativeDateState: RelativeDateFieldState; selectedDate: DateTime | null; /** * Whether the field is disabled. */ disabled?: boolean; /** * Whether the value is immutable. */ readOnly?: boolean; isActive: boolean; setActive: (isActive: boolean) => void; } export declare function useRelativeDatePickerState(props: RelativeDatePickerStateOptions): RelativeDatePickerState;