import type { StyleProp, ViewStyle, ImageSourcePropType, TextStyle, ImageStyle, ColorValue } from 'react-native'; export type TCalendarProps = { /** * Calendar container style */ style?: StyleProp; /** * Selected date */ value?: string; /** * Is Show select time picker */ isShowSelectTime?: boolean; /** * Show month label */ showMonthLabel?: boolean; /** * Date separator character, can be anything like `/`, `-`, etc */ dateSeparator?: string; /** * Minimum date to be picked */ minDate?: string; /** * Maximum date to be picked */ maxDate?: string; /** * @required * On date change callback */ onChange: (date: string) => void; /** * Header style which contains arrows and year-month */ headerContainerStyle?: StyleProp; /** * Year-month box style */ yearMonthBoxStyle?: StyleProp; /** * Year - Month text style */ yearMonthTextStyle?: StyleProp; /** * Icons container style */ iconContainerStyle?: StyleProp; /** * Path to back icon */ backIcon?: ImageSourcePropType | undefined; /** * Back icon style */ backIconStyle?: StyleProp; /** * Path to next icon */ nextIcon?: ImageSourcePropType | undefined; /** * Next icon style */ nextIconStyle?: StyleProp; /** * Select time container style */ selectTimeContainerStyle?: StyleProp; /** * Select time picker style */ selectTimePickerStyle?: StyleProp; /** * Select time picker items style */ selectTimePickerItemStyle?: StyleProp; /** * Select time picker mode */ selectTimePickerMode?: 'dialog' | 'dropdown'; /** * select time dropdown icon color */ selectTimeDropdownIconColor?: ColorValue; /** * Each year box style in year selector */ eachYearStyle?: StyleProp; /** * Selected Each year box style in year selector */ selectedEachYearStyle?: StyleProp; /** * Each year text style in year selector */ eachYearTextStyle?: StyleProp; /** * Selected Each year text style in year selector */ selectedEachYearTextStyle?: StyleProp; /** * Each month box style in month selector */ eachMonthStyle?: StyleProp; /** * Selected Each month box style in month selector */ selectedEachMonthStyle?: StyleProp; /** * Each month text style in month selector */ eachMonthTextStyle?: StyleProp; /** * Selected Each month text style in month selector */ selectedEachMonthTextStyle?: StyleProp; /** * Top row style which contains weekdays */ weekdaysContainerStyle?: StyleProp; /** * Each weekday style */ weekdayStyle?: StyleProp; /** * Each weekday text style */ weekdayTextStyle?: StyleProp; /** * Each day style in calendar */ dayStyle?: StyleProp; /** * Selected day style */ selectedDayStyle?: StyleProp; /** * Selected day color */ selectedDayColor?: string; /** * Each day text style */ dayTextStyle?: StyleProp; /** * Selected day text color */ selectedDayTextColor?: string; /** * Normal days text color */ dayTextColor?: string; /** * Disabled days text color */ disabledTextColor?: string; } export type TDatePickerProps = TCalendarProps & { /** * Date Picker Modal style */ datePickerModalStyle?: StyleProp; /** * Date Picker Dismiss Icon color */ datePickerDismissIconColor?: ColorValue; /** * Custom render Item for date picker input */ renderItem?: Element }