import type { DateFrameworkType } from "@salt-ds/date-adapters"; import type { ComponentPropsWithoutRef } from "react"; /** * Interface representing the status of a day in the Calendar. */ export interface DayStatus { /** * If `true`, the day is selectable but outside of current month. */ outOfRange?: boolean; /** * If `true`, the day is selected. */ selected?: boolean; /** * If `true`, the day is today. */ today?: boolean; /** * If set, the day is unselectable with a reason. */ unselectable?: string | false; /** * If set, the day is highlighted with a reason. */ highlighted?: string | false; /** * If `true`, the day is focused. */ focused?: boolean; /** * If `true`, the day is hidden. */ hidden?: boolean; } /** * UseCalendar hook props to return a calendar day's status * @template TDate - The type of the date object. */ export interface useCalendarDayProps { /** * The date of the calendar day. */ date: TDate; /** * The month of the calendar day. */ month: TDate; } export declare function useCalendarDay(props: useCalendarDayProps): { status: DayStatus; dayProps: ComponentPropsWithoutRef<"button">; focusedDateRef: any; unselectableReason: string | false | undefined; highlightedReason: string | false | undefined; };