import React from 'react'; import { ReactDatePickerProps } from 'react-datepicker'; import { MaskedInputProps } from 'react-text-mask'; import { PropertyType } from '../../utils/index.js'; type CustomProps = Partial>; type DateMaskOverride = ({ regex: string; raw: undefined; } | { raw: string; regex: undefined; } | string)[]; type InputMaskProps = Omit & { mask?: DateMaskOverride; }; /** * Props for DatePicker * * @memberof DatePicker * @alias DatePickerProps * @property {any} {...} Any custom props to pass down to the ReactDatePicker * @see https://reactdatepicker.com/ */ export type DatePickerProps = CustomProps & { /** * If datepicker should be disabled */ disabled?: boolean; /** * selected date */ value?: string | Date; /** * on change callback taking ISO string as a date */ onChange: (date: string | null) => void; /** * property type, could be either 'date' or 'datetime' */ propertyType?: PropertyType; /** * input mask props for text input in case you want to use it, see: https://github.com/text-mask/text-mask */ inputMask?: InputMaskProps; }; /** * @classdesc * * * * * Component responsible for showing dates. It is a wrapper to * [react datepicker]{@link https://reactdatepicker.com/}. * * ### Usage * * ```javascript * import { DatePicker, DatePickerProps } from '@adminjs/design-system' * ``` * * @component * @subcategory Molecules * @see https://reactdatepicker.com/ * @see {@link https://storybook.adminjs.co/?path=/story/designsystem-molecules-datepicker--default Storybook} * @see DatePickerProps * @hideconstructor * * @example * return ( * * console.log(date)}/> * * ) * @section design-system */ declare const DatePicker: React.FC; export { DatePicker }; export default DatePicker;