Skip to content

Commit b8d8206

Browse files
authored
chore: export types (#713)
* chore: export more types * chore: export more types
1 parent b06659d commit b8d8206

File tree

3 files changed

+24
-10
lines changed

3 files changed

+24
-10
lines changed

src/PickerInput/RangePicker.tsx

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -48,9 +48,8 @@ function separateConfig<T>(config: T | [T, T] | null | undefined, defaultConfig:
4848

4949
export type RangeValueType<DateType> = [start?: DateType, end?: DateType];
5050

51-
export interface RangePickerProps<DateType extends object>
52-
extends Omit<SharedPickerProps<DateType>, 'showTime' | 'id'>,
53-
Omit<RangeTimeProps<DateType>, 'format' | 'defaultValue'> {
51+
export interface BaseRangePickerProps<DateType extends object>
52+
extends Omit<SharedPickerProps<DateType>, 'showTime' | 'id'> {
5453
// Structure
5554
id?: SelectorIdType;
5655

@@ -119,6 +118,10 @@ export interface RangePickerProps<DateType extends object>
119118
) => void;
120119
}
121120

121+
export interface RangePickerProps<DateType extends object>
122+
extends BaseRangePickerProps<DateType>,
123+
Omit<RangeTimeProps<DateType>, 'format' | 'defaultValue'> {}
124+
122125
function getActiveRange(activeIndex: number) {
123126
return activeIndex === 1 ? 'end' : 'start';
124127
}

src/PickerInput/SinglePicker.tsx

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,8 @@ import SingleSelector from './Selector/SingleSelector';
3434

3535
// TODO: isInvalidateDate with showTime.disabledTime should not provide `range` prop
3636

37-
export interface PickerProps<DateType extends object = any>
38-
extends SharedPickerProps<DateType>,
39-
Omit<SharedTimeProps<DateType>, 'format' | 'defaultValue'> {
37+
export interface BasePickerProps<DateType extends object = any>
38+
extends SharedPickerProps<DateType> {
4039
// Structure
4140
id?: string;
4241

@@ -97,6 +96,10 @@ export interface PickerProps<DateType extends object = any>
9796
onPanelChange?: (values: DateType, modes: PanelMode) => void;
9897
}
9998

99+
export interface PickerProps<DateType extends object = any>
100+
extends BasePickerProps<DateType>,
101+
Omit<SharedTimeProps<DateType>, 'format' | 'defaultValue'> {}
102+
100103
/** Internal usage. For cross function get same aligned props */
101104
export type ReplacedPickerProps<DateType extends object = any> = {
102105
onChange?: (date: DateType | DateType[], dateString: string | string[]) => void;

src/index.tsx

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,19 @@
2727
* - [Break] RangePicker go to end field, `pickerValue` will follow the start field if not controlled.
2828
*/
2929

30-
import type { PickerRef } from './interface';
30+
import type { PickerRef, SharedTimeProps } from './interface';
3131
import RangePicker, { type RangePickerProps } from './PickerInput/RangePicker';
32-
import Picker, { type PickerProps } from './PickerInput/SinglePicker';
33-
import PickerPanel, { type PickerPanelProps } from './PickerPanel';
32+
import Picker, { type BasePickerProps, type PickerProps } from './PickerInput/SinglePicker';
33+
import PickerPanel, { type BasePickerPanelProps, type PickerPanelProps } from './PickerPanel';
3434

3535
export { Picker, RangePicker, PickerPanel };
36-
export type { RangePickerProps, PickerProps, PickerPanelProps, PickerRef };
36+
export type {
37+
RangePickerProps,
38+
PickerProps,
39+
PickerPanelProps,
40+
PickerRef,
41+
BasePickerProps,
42+
BasePickerPanelProps,
43+
SharedTimeProps,
44+
};
3745
export default Picker;

0 commit comments

Comments
 (0)