import React from 'react'; import type { CalendarInputCommonProps, CalendarItem, CalendarPeriodName } from './types'; import { DisplayMode } from '../types'; export interface CalendarInputProps extends CalendarInputCommonProps { className?: string; /** * 최소 선택 단위를 지정합니다. day의 경우 일반 캘린더가 표시되고, month/year/decade의 경우 특수한 캘린더가 표시됩니다. * 사용자는 period와 별개로 달력의 헤더를 클릭해서 빠른 탐색을 위해 더 큰 단위의 선택 단위로 잠시 빠져나갈 수 있습니다. */ period?: CalendarPeriodName; /** * 사용자가 날짜를 처음 선택할 때, from/to에 대해 어떤 시각을 기본값으로 정의할 지 지정합니다. */ defaultOffset?: [Date, Date]; /** * 사용자가 날짜를 선택했을 때, 조건이 충족된 경우 다음 항목 (from->to)으로 넘어가거나 onConfirm을 호출해야 하는지 여부를 지정합니다. */ shouldConfirm?: boolean; /** * 사용자가 날짜에 호버했을 때, 해당 인터벌에 해당하는 모든 날짜들에 대해 하이라이트가 필요한지 지정합니다. */ showAllHoverTarget?: boolean; /** * 보여줄 개월 단위를 지정합니다. day인 경우에만 사용합니다. */ numberOfMonths?: number; /** * 날짜를 선택할 때 시간 정보를 유지할 지 선택합니다. 가령, true로 설정하면 2025-01-01 14:00이 선택된 상태에서 2025-02-01 선택시, 14:00이 유지됩니다. * @default true */ keepOffset?: boolean; displayMode: DisplayMode; /** * 사용자가 period와 같은 선택 단위에 있는 경우 (실제로 날짜를 선택하고 있는 경우) 하단에 보여줄 컨텐츠입니다. */ footerWhenStackEmpty?: React.ReactNode; onItemClick?: (item: CalendarItem) => boolean | void; } export declare const CalendarInput: React.FC;