UNPKG

nepali-sambat

Version:

React datepicker using Bikram Sambat calendar

80 lines (71 loc) 2.71 kB
import React from 'react'; interface CustomDate { year: number; month: number; day: number; } type CustomDateFormatOptions = { format?: "YYYY-MM-DD" | "DD-MM-YYYY" | "MM/DD/YYYY" | "YYYY/MM/DD" | string; lang?: "eng" | "nep"; separator?: string; }; interface DatePickerProps { value?: CustomDate | null; onChange?: (date: CustomDate) => void; placeholder?: string; disabled?: boolean; minDate?: CustomDate; maxDate?: CustomDate; formatOptions?: CustomDateFormatOptions; className?: object; inputClassName?: string; calendarClassName?: string; position?: "bottom" | "top" | "auto"; dayClassName?: string; selectedDayClassName?: string; todayClassName?: string; disabledDayClassName?: string; icon: any; } interface CalendarProps { lang?: "eng" | "nep"; selectedDate?: CustomDate | null; viewDate: CustomDate; onDateSelect: (date: CustomDate) => void; onViewDateChange: (date: CustomDate) => void; minDate?: CustomDate; maxDate?: CustomDate; calendarClassName?: string; dayClassName?: string; selectedDayClassName?: string; todayClassName?: string; disabledDayClassName?: string; className?: object; } interface DateInputProps { value?: CustomDate | null; onChange?: (value: string) => void; onSelect?: (date: CustomDate | null) => void; placeholder?: string; disabled?: boolean; formatOptions?: CustomDateFormatOptions; className?: string; onFocus?: () => void; onBlur?: () => void; } declare const NepaliDatePicker: React.FC<DatePickerProps>; declare const NepaliCalendar: React.FC<CalendarProps>; declare const DateInput: React.FC<DateInputProps>; declare function convertADToBS(adDate: Date): CustomDate; declare function convertBSToAD(bsDate: CustomDate): CustomDate; declare function getTodayBS(): CustomDate; declare function getDaysInMonth(year: number, month: number): number; declare function isValidBsDate(date: CustomDate): boolean; declare function isDateInRange(date: CustomDate, minDate?: CustomDate, maxDate?: CustomDate): boolean; declare function formatDate(date: CustomDate, options?: CustomDateFormatOptions): string; declare function parseDate(dateStr: string, format?: string): CustomDate | null; declare const bsMonthsEng: string[]; declare const bsMonthsNep: string[]; declare const bsDaysEng: string[]; declare const bsDaysNep: string[]; export { NepaliCalendar as Calendar, type CustomDate, DateInput, type DatePickerProps, NepaliDatePicker, bsDaysEng, bsDaysNep, bsMonthsEng, bsMonthsNep, convertADToBS, convertBSToAD, formatDate, getDaysInMonth, getTodayBS, isDateInRange, isValidBsDate, parseDate };