acud
Version:
acg react 组件库
67 lines (66 loc) • 3.53 kB
TypeScript
import * as React from 'react';
import { GenerateConfig } from '../src/generate/index';
import { PickerBaseProps as RCPickerBaseProps, PickerDateProps as RCPickerDateProps, PickerTimeProps as RCPickerTimeProps } from '../src/Picker';
import { SharedTimeProps } from '../src/panels/TimePanel';
import { RangePickerBaseProps as RCRangePickerBaseProps, RangePickerDateProps as RCRangePickerDateProps, RangePickerTimeProps as RCRangePickerTimeProps } from '../src/RangePicker';
import { PickerMode, Locale as RcPickerLocale } from '../src/interface';
import { SizeType } from '../../config-provider/SizeContext';
import PickerButton from '../PickerButton';
import PickerTag from '../PickerTag';
export declare const Components: {
button: typeof PickerButton;
rangeItem: typeof PickerTag;
};
export declare function getTimeProps<DateType>(props: {
format?: string;
picker?: PickerMode;
} & SharedTimeProps<DateType>): SharedTimeProps<DateType> | {
showTime: SharedTimeProps<DateType>;
};
type InjectDefaultProps<Props> = Omit<Props, 'locale' | 'generateConfig' | 'prevIcon' | 'nextIcon' | 'superPrevIcon' | 'superNextIcon' | 'hideHeader' | 'components'> & {
locale?: PickerLocale;
size?: SizeType;
bordered?: boolean;
};
interface TimePickerLocale {
placeholder?: string;
rangePlaceholder?: [string, string];
}
export type PickerLocale = {
lang: RcPickerLocale & AdditionalPickerLocaleLangProps;
timePickerLocale: TimePickerLocale;
} & AdditionalPickerLocaleProps;
export type AdditionalPickerLocaleProps = {
dateFormat?: string;
dateTimeFormat?: string;
weekFormat?: string;
monthFormat?: string;
};
export type AdditionalPickerLocaleLangProps = {
placeholder: string;
yearPlaceholder?: string;
quarterPlaceholder?: string;
monthPlaceholder?: string;
weekPlaceholder?: string;
rangeYearPlaceholder?: [string, string];
rangeMonthPlaceholder?: [string, string];
rangeWeekPlaceholder?: [string, string];
rangePlaceholder?: [string, string];
};
export type PickerBaseProps<DateType> = InjectDefaultProps<RCPickerBaseProps<DateType>>;
export type PickerDateProps<DateType> = InjectDefaultProps<RCPickerDateProps<DateType>>;
export type PickerTimeProps<DateType> = InjectDefaultProps<RCPickerTimeProps<DateType>>;
export type PickerProps<DateType> = PickerBaseProps<DateType> | PickerDateProps<DateType> | PickerTimeProps<DateType>;
export type RangePickerBaseProps<DateType> = InjectDefaultProps<RCRangePickerBaseProps<DateType>>;
export type RangePickerDateProps<DateType> = InjectDefaultProps<RCRangePickerDateProps<DateType>>;
export type RangePickerTimeProps<DateType> = InjectDefaultProps<RCRangePickerTimeProps<DateType>>;
export type RangePickerProps<DateType> = RangePickerBaseProps<DateType> | RangePickerDateProps<DateType> | RangePickerTimeProps<DateType>;
declare function generatePicker<DateType>(generateConfig: GenerateConfig<DateType>): React.ComponentClass<PickerProps<DateType>, any> & {
WeekPicker: React.ComponentClass<Omit<PickerDateProps<DateType>, "picker">, any>;
MonthPicker: React.ComponentClass<Omit<PickerDateProps<DateType>, "picker">, any>;
YearPicker: React.ComponentClass<Omit<PickerDateProps<DateType>, "picker">, any>;
RangePicker: React.ComponentClass<RangePickerProps<DateType>>;
TimePicker: React.ComponentClass<Omit<PickerTimeProps<DateType>, "picker">, any>;
QuarterPicker: React.ComponentClass<Omit<PickerTimeProps<DateType>, "picker">, any>;
};
export default generatePicker;