1 | import React, { AnimationEventHandler, AriaRole, ComponentType, DragEventHandler, FocusEventHandler, KeyboardEventHandler, MouseEventHandler, PointerEventHandler, ReactNode, Ref, SyntheticEvent, TouchEventHandler, TransitionEventHandler, UIEventHandler, WheelEventHandler } from 'react';
|
2 | import { DateFormats, Localizer } from './Localization';
|
3 | import { UserProvidedMessages } from './messages';
|
4 | import { SearchMetadata, Value } from './types';
|
5 | import { Filter } from './Filter';
|
6 | import { TransitionProps } from 'react-transition-group/Transition';
|
7 | import { ListProps, ListHandle, GroupBy, OptionComponentProp, RenderGroupProp, RenderItemProp } from './List';
|
8 | import { TextAccessor, DataKeyAccessor } from './Accessors';
|
9 | import { PopupProps } from './Popup';
|
10 | export interface WidgetProps {
|
11 | className?: string;
|
12 | tabIndex?: number;
|
13 | id?: string;
|
14 | autoFocus?: boolean;
|
15 | messages?: UserProvidedMessages;
|
16 | }
|
17 |
|
18 |
|
19 |
|
20 | export interface WidgetHTMLProps<T = HTMLDivElement> extends React.AriaAttributes {
|
21 | suppressContentEditableWarning?: boolean;
|
22 | suppressHydrationWarning?: boolean;
|
23 | accessKey?: string;
|
24 | className?: string;
|
25 | contextMenu?: string;
|
26 | dir?: string;
|
27 | hidden?: boolean;
|
28 | id?: string;
|
29 | lang?: string;
|
30 | style?: React.CSSProperties;
|
31 | tabIndex?: number;
|
32 | title?: string;
|
33 | role?: AriaRole;
|
34 | onFocus?: FocusEventHandler<T>;
|
35 | onFocusCapture?: FocusEventHandler<T>;
|
36 | onBlur?: FocusEventHandler<T>;
|
37 | onBlurCapture?: FocusEventHandler<T>;
|
38 | onKeyDown?: KeyboardEventHandler<T>;
|
39 | onKeyDownCapture?: KeyboardEventHandler<T>;
|
40 | onKeyPress?: KeyboardEventHandler<T>;
|
41 | onKeyPressCapture?: KeyboardEventHandler<T>;
|
42 | onKeyUp?: KeyboardEventHandler<T>;
|
43 | onKeyUpCapture?: KeyboardEventHandler<T>;
|
44 | onAuxClick?: MouseEventHandler<T>;
|
45 | onAuxClickCapture?: MouseEventHandler<T>;
|
46 | onClick?: MouseEventHandler<T>;
|
47 | onClickCapture?: MouseEventHandler<T>;
|
48 | onContextMenu?: MouseEventHandler<T>;
|
49 | onContextMenuCapture?: MouseEventHandler<T>;
|
50 | onDoubleClick?: MouseEventHandler<T>;
|
51 | onDoubleClickCapture?: MouseEventHandler<T>;
|
52 | onDrag?: DragEventHandler<T>;
|
53 | onDragCapture?: DragEventHandler<T>;
|
54 | onDragEnd?: DragEventHandler<T>;
|
55 | onDragEndCapture?: DragEventHandler<T>;
|
56 | onDragEnter?: DragEventHandler<T>;
|
57 | onDragEnterCapture?: DragEventHandler<T>;
|
58 | onDragExit?: DragEventHandler<T>;
|
59 | onDragExitCapture?: DragEventHandler<T>;
|
60 | onDragLeave?: DragEventHandler<T>;
|
61 | onDragLeaveCapture?: DragEventHandler<T>;
|
62 | onDragOver?: DragEventHandler<T>;
|
63 | onDragOverCapture?: DragEventHandler<T>;
|
64 | onDragStart?: DragEventHandler<T>;
|
65 | onDragStartCapture?: DragEventHandler<T>;
|
66 | onDrop?: DragEventHandler<T>;
|
67 | onDropCapture?: DragEventHandler<T>;
|
68 | onMouseDown?: MouseEventHandler<T>;
|
69 | onMouseDownCapture?: MouseEventHandler<T>;
|
70 | onMouseEnter?: MouseEventHandler<T>;
|
71 | onMouseLeave?: MouseEventHandler<T>;
|
72 | onMouseMove?: MouseEventHandler<T>;
|
73 | onMouseMoveCapture?: MouseEventHandler<T>;
|
74 | onMouseOut?: MouseEventHandler<T>;
|
75 | onMouseOutCapture?: MouseEventHandler<T>;
|
76 | onMouseOver?: MouseEventHandler<T>;
|
77 | onMouseOverCapture?: MouseEventHandler<T>;
|
78 | onMouseUp?: MouseEventHandler<T>;
|
79 | onMouseUpCapture?: MouseEventHandler<T>;
|
80 | onTouchCancel?: TouchEventHandler<T>;
|
81 | onTouchCancelCapture?: TouchEventHandler<T>;
|
82 | onTouchEnd?: TouchEventHandler<T>;
|
83 | onTouchEndCapture?: TouchEventHandler<T>;
|
84 | onTouchMove?: TouchEventHandler<T>;
|
85 | onTouchMoveCapture?: TouchEventHandler<T>;
|
86 | onTouchStart?: TouchEventHandler<T>;
|
87 | onTouchStartCapture?: TouchEventHandler<T>;
|
88 | onPointerDown?: PointerEventHandler<T>;
|
89 | onPointerDownCapture?: PointerEventHandler<T>;
|
90 | onPointerMove?: PointerEventHandler<T>;
|
91 | onPointerMoveCapture?: PointerEventHandler<T>;
|
92 | onPointerUp?: PointerEventHandler<T>;
|
93 | onPointerUpCapture?: PointerEventHandler<T>;
|
94 | onPointerCancel?: PointerEventHandler<T>;
|
95 | onPointerCancelCapture?: PointerEventHandler<T>;
|
96 | onPointerEnter?: PointerEventHandler<T>;
|
97 | onPointerEnterCapture?: PointerEventHandler<T>;
|
98 | onPointerLeave?: PointerEventHandler<T>;
|
99 | onPointerLeaveCapture?: PointerEventHandler<T>;
|
100 | onPointerOver?: PointerEventHandler<T>;
|
101 | onPointerOverCapture?: PointerEventHandler<T>;
|
102 | onPointerOut?: PointerEventHandler<T>;
|
103 | onPointerOutCapture?: PointerEventHandler<T>;
|
104 | onGotPointerCapture?: PointerEventHandler<T>;
|
105 | onGotPointerCaptureCapture?: PointerEventHandler<T>;
|
106 | onLostPointerCapture?: PointerEventHandler<T>;
|
107 | onLostPointerCaptureCapture?: PointerEventHandler<T>;
|
108 | onScroll?: UIEventHandler<T>;
|
109 | onScrollCapture?: UIEventHandler<T>;
|
110 | onWheel?: WheelEventHandler<T>;
|
111 | onWheelCapture?: WheelEventHandler<T>;
|
112 | onAnimationStart?: AnimationEventHandler<T>;
|
113 | onAnimationStartCapture?: AnimationEventHandler<T>;
|
114 | onAnimationEnd?: AnimationEventHandler<T>;
|
115 | onAnimationEndCapture?: AnimationEventHandler<T>;
|
116 | onAnimationIteration?: AnimationEventHandler<T>;
|
117 | onAnimationIterationCapture?: AnimationEventHandler<T>;
|
118 | onTransitionEnd?: TransitionEventHandler<T>;
|
119 | onTransitionEndCapture?: TransitionEventHandler<T>;
|
120 | }
|
121 | export interface PopupWidgetProps {
|
122 | open?: boolean;
|
123 | defaultOpen?: boolean;
|
124 | onToggle?: (isOpen: boolean) => void;
|
125 | className?: string;
|
126 | containerClassName?: string;
|
127 | dropUp?: boolean;
|
128 | popupTransition?: React.ComponentType<TransitionProps>;
|
129 | popupComponent?: React.ComponentType<PopupProps>;
|
130 | onKeyPress?: KeyboardEventHandler<HTMLDivElement>;
|
131 | onKeyDown?: KeyboardEventHandler<HTMLDivElement>;
|
132 | }
|
133 | export declare type SearchHandler = (searchTerm: string, metadata: SearchMetadata) => void;
|
134 | export interface Searchable {
|
135 | searchTerm?: string;
|
136 | defaultSearchTerm?: string;
|
137 | onSearch?: SearchHandler;
|
138 | }
|
139 | export declare type AllowCreate = boolean | 'onFilter';
|
140 | export interface Filterable<TDataItem> {
|
141 | filter?: Filter<TDataItem>;
|
142 | allowCreate?: AllowCreate;
|
143 | delay?: number;
|
144 | }
|
145 | export declare type ChangeHandler<TDataItem> = (dataItem: TDataItem, metadata: {
|
146 | searchTerm?: string;
|
147 | lastValue: Value;
|
148 | source: 'listbox' | 'input';
|
149 | originalEvent?: SyntheticEvent;
|
150 | }) => void;
|
151 | export declare type MultipleChangeHandler<TDataItem> = (dataItem: readonly TDataItem[], metadata: {
|
152 | action: 'insert' | 'remove';
|
153 | dataItem: TDataItem;
|
154 | searchTerm?: string;
|
155 | lastValue: Value;
|
156 | originalEvent?: React.SyntheticEvent;
|
157 | }) => void;
|
158 | export declare type SelectHandler<TDataItem> = (dataItem: TDataItem, metadata: {
|
159 | originalEvent?: SyntheticEvent;
|
160 | }) => void;
|
161 | export interface BaseListboxInputProps<TDataItem, TValue = Value> {
|
162 | data?: readonly TDataItem[];
|
163 | textField?: TextAccessor;
|
164 | dataKey?: DataKeyAccessor;
|
165 | value?: TValue;
|
166 | defaultValue?: TValue;
|
167 | onChange?: ChangeHandler<TDataItem>;
|
168 | defaultFocusedItem?: TDataItem;
|
169 | onSelect?: SelectHandler<TDataItem>;
|
170 | placeholder?: string;
|
171 | focusFirstItem?: boolean;
|
172 | busy?: boolean;
|
173 | busySpinner?: ReactNode;
|
174 | disabled?: boolean | ReadonlyArray<TDataItem>;
|
175 | readOnly?: boolean;
|
176 | selectIcon?: ReactNode;
|
177 | inputProps?: object;
|
178 | listProps?: object;
|
179 | renderListItem?: RenderItemProp<TDataItem>;
|
180 | renderListGroup?: RenderGroupProp;
|
181 | optionComponent?: OptionComponentProp;
|
182 | groupBy?: GroupBy<TDataItem>;
|
183 | listComponent?: ComponentType<ListProps<TDataItem> & {
|
184 | ref: Ref<ListHandle>;
|
185 | }>;
|
186 | }
|
187 | export declare type InferFormat<TLocalizer> = TLocalizer extends Localizer<infer TFormat, any> ? TFormat : unknown;
|
188 | export interface DateLocalizationProps<TLocalizer = unknown> {
|
189 | formats?: DateFormats<InferFormat<TLocalizer>>;
|
190 | }
|
191 | export interface NumberLocalizationProps<TLocalizer = unknown> {
|
192 | formats?: DateFormats<InferFormat<TLocalizer>>;
|
193 | }
|
194 |
|
\ | No newline at end of file |