import React, { ReactNode } from 'react'; import { Moment } from 'moment'; import { TDate } from '@ucloud-fe/calendar'; import LOCALE from './locale/zh_CN'; import { TShortcut } from './Footer'; interface RangeProps { /** 当前值,受控 */ value?: [TDate | null, TDate | null]; /** 默认值,非受控 */ defaultValue?: [TDate | null, TDate | null]; /** 修改回调,返回 moment 对象数组 */ onChange?: (v: [Moment | null, Moment | null]) => void; /** 初始化回调函数,传入 option 的情况下会输出 option 对应的值,配合 option 或者 defaultOption 使用 */ onInitialChange?: (v: [Moment | null, Moment | null]) => void; /** 选项 */ options?: { label: ReactNode; value: string; disabled?: boolean; range?: { start?: TDate; end?: TDate; }; }[]; /** 当前选项,受控 */ option?: string; /** 默认选项,非受控 */ defaultOption?: string; /** 选项变化回调 */ onOptionChange?: (option: string) => void; /** * @deprecated 不传入 options 即可隐藏 * 隐藏快捷选项 */ hideOptions?: boolean; /** 是否可为空 */ nullable?: [boolean | undefined, boolean | undefined] | [boolean | undefined] | []; /** 输入和展示的字符串格式,为数组时,第一个用作展示 */ format?: string | string[]; /** * @deprecated 使用 format 替换 * 展示格式,会传入 DatePicker 和 Month 中(按照 type) */ display?: { date?: { /** @deprecated 设置日期展示格式,使用 format 替换 */ format?: string; /** @deprecated 是否展示日期选择,仅时间选择需求使用 TimePicker 替换 */ show?: boolean; }; /** 设置为 false,隐藏时 */ hour?: boolean; /** 设置为 false,隐藏分 */ minute?: boolean; /** 设置为 false,隐藏秒 */ second?: boolean; range?: { /** @deprecated 新版无用 */ format?: string; }; }; /** 自定义规则 */ rules?: { range?: [TDate | void, TDate | void]; maxRange?: any; minRange?: any; }; /** 状态 */ status?: 'default' | 'error'; /** placeholder */ placeholder?: [string | undefined, string | undefined] | [string | undefined] | []; /** picker 类型 */ type?: 'date' | 'month'; /** 面板快捷内容 */ shortcuts?: [TShortcut[] | null, TShortcut[] | null] | [TShortcut[] | null]; /** 控件尺寸 */ size?: 'sm' | 'md' | 'lg'; /** 是否禁用 */ disabled?: boolean; /** 弹出层的 z-index */ zIndex?: number; /** 自定义默认选项 props */ selectProps?: any; /** 自定义时间选择框弹出层props */ popoverProps?: any; /** 自定义渲染 */ customRender?: { /** 自定义渲染只读时(非自定义选项)的展示内容(时间区域) */ readonlyDisplay?: (value: [TDate | null, TDate | null]) => ReactNode; }; /** * @ignore * 自定义 datePicker 的 props */ /** 提示信息,展示在时间选择弹窗中 */ rangeTip?: ReactNode; /** @ignore */ locale?: typeof LOCALE; } declare const _default: React.MemoExoticComponent<({ options: _options, option: _option, defaultOption, onOptionChange: _onOptionChange, hideOptions, value: _value, defaultValue, onChange: _onChange, onInitialChange, nullable, size, display, format, rules, type, disabled, zIndex, locale: _locale, selectProps, popoverProps: _popoverProps, rangeTip, status, placeholder, shortcuts, customRender, ...rest }: RangeProps) => JSX.Element>; export default _default;