import React, { AnimationEventHandler, AriaRole, ComponentType, DragEventHandler, FocusEventHandler, KeyboardEventHandler, MouseEventHandler, PointerEventHandler, ReactNode, Ref, SyntheticEvent, TouchEventHandler, TransitionEventHandler, UIEventHandler, WheelEventHandler } from 'react'; import { DateFormats, Localizer } from './Localization'; import { UserProvidedMessages } from './messages'; import { SearchMetadata, Value } from './types'; import { Filter } from './Filter'; import { TransitionProps } from 'react-transition-group/Transition'; import { ListProps, ListHandle, GroupBy, OptionComponentProp, RenderGroupProp, RenderItemProp } from './List'; import { TextAccessor, DataKeyAccessor } from './Accessors'; import { PopupProps } from './Popup'; export interface WidgetProps { className?: string; tabIndex?: number; id?: string; autoFocus?: boolean; messages?: UserProvidedMessages; } /** * Smaller subset of relevant HTML attributes that make sense for the container */ export interface WidgetHTMLProps extends React.AriaAttributes { suppressContentEditableWarning?: boolean; suppressHydrationWarning?: boolean; accessKey?: string; className?: string; contextMenu?: string; dir?: string; hidden?: boolean; id?: string; lang?: string; style?: React.CSSProperties; tabIndex?: number; title?: string; role?: AriaRole; onFocus?: FocusEventHandler; onFocusCapture?: FocusEventHandler; onBlur?: FocusEventHandler; onBlurCapture?: FocusEventHandler; onKeyDown?: KeyboardEventHandler; onKeyDownCapture?: KeyboardEventHandler; onKeyPress?: KeyboardEventHandler; onKeyPressCapture?: KeyboardEventHandler; onKeyUp?: KeyboardEventHandler; onKeyUpCapture?: KeyboardEventHandler; onAuxClick?: MouseEventHandler; onAuxClickCapture?: MouseEventHandler; onClick?: MouseEventHandler; onClickCapture?: MouseEventHandler; onContextMenu?: MouseEventHandler; onContextMenuCapture?: MouseEventHandler; onDoubleClick?: MouseEventHandler; onDoubleClickCapture?: MouseEventHandler; onDrag?: DragEventHandler; onDragCapture?: DragEventHandler; onDragEnd?: DragEventHandler; onDragEndCapture?: DragEventHandler; onDragEnter?: DragEventHandler; onDragEnterCapture?: DragEventHandler; onDragExit?: DragEventHandler; onDragExitCapture?: DragEventHandler; onDragLeave?: DragEventHandler; onDragLeaveCapture?: DragEventHandler; onDragOver?: DragEventHandler; onDragOverCapture?: DragEventHandler; onDragStart?: DragEventHandler; onDragStartCapture?: DragEventHandler; onDrop?: DragEventHandler; onDropCapture?: DragEventHandler; onMouseDown?: MouseEventHandler; onMouseDownCapture?: MouseEventHandler; onMouseEnter?: MouseEventHandler; onMouseLeave?: MouseEventHandler; onMouseMove?: MouseEventHandler; onMouseMoveCapture?: MouseEventHandler; onMouseOut?: MouseEventHandler; onMouseOutCapture?: MouseEventHandler; onMouseOver?: MouseEventHandler; onMouseOverCapture?: MouseEventHandler; onMouseUp?: MouseEventHandler; onMouseUpCapture?: MouseEventHandler; onTouchCancel?: TouchEventHandler; onTouchCancelCapture?: TouchEventHandler; onTouchEnd?: TouchEventHandler; onTouchEndCapture?: TouchEventHandler; onTouchMove?: TouchEventHandler; onTouchMoveCapture?: TouchEventHandler; onTouchStart?: TouchEventHandler; onTouchStartCapture?: TouchEventHandler; onPointerDown?: PointerEventHandler; onPointerDownCapture?: PointerEventHandler; onPointerMove?: PointerEventHandler; onPointerMoveCapture?: PointerEventHandler; onPointerUp?: PointerEventHandler; onPointerUpCapture?: PointerEventHandler; onPointerCancel?: PointerEventHandler; onPointerCancelCapture?: PointerEventHandler; onPointerEnter?: PointerEventHandler; onPointerEnterCapture?: PointerEventHandler; onPointerLeave?: PointerEventHandler; onPointerLeaveCapture?: PointerEventHandler; onPointerOver?: PointerEventHandler; onPointerOverCapture?: PointerEventHandler; onPointerOut?: PointerEventHandler; onPointerOutCapture?: PointerEventHandler; onGotPointerCapture?: PointerEventHandler; onGotPointerCaptureCapture?: PointerEventHandler; onLostPointerCapture?: PointerEventHandler; onLostPointerCaptureCapture?: PointerEventHandler; onScroll?: UIEventHandler; onScrollCapture?: UIEventHandler; onWheel?: WheelEventHandler; onWheelCapture?: WheelEventHandler; onAnimationStart?: AnimationEventHandler; onAnimationStartCapture?: AnimationEventHandler; onAnimationEnd?: AnimationEventHandler; onAnimationEndCapture?: AnimationEventHandler; onAnimationIteration?: AnimationEventHandler; onAnimationIterationCapture?: AnimationEventHandler; onTransitionEnd?: TransitionEventHandler; onTransitionEndCapture?: TransitionEventHandler; } export interface PopupWidgetProps { open?: boolean; defaultOpen?: boolean; onToggle?: (isOpen: boolean) => void; className?: string; containerClassName?: string; dropUp?: boolean; popupTransition?: React.ComponentType; popupComponent?: React.ComponentType; onKeyPress?: KeyboardEventHandler; onKeyDown?: KeyboardEventHandler; } export declare type SearchHandler = (searchTerm: string, metadata: SearchMetadata) => void; export interface Searchable { searchTerm?: string; defaultSearchTerm?: string; onSearch?: SearchHandler; } export declare type AllowCreate = boolean | 'onFilter'; export interface Filterable { filter?: Filter; allowCreate?: AllowCreate; delay?: number; } export declare type ChangeHandler = (dataItem: TDataItem, metadata: { searchTerm?: string; lastValue: Value; source: 'listbox' | 'input'; originalEvent?: SyntheticEvent; }) => void; export declare type MultipleChangeHandler = (dataItem: readonly TDataItem[], metadata: { action: 'insert' | 'remove'; dataItem: TDataItem; searchTerm?: string; lastValue: Value; originalEvent?: React.SyntheticEvent; }) => void; export declare type SelectHandler = (dataItem: TDataItem, metadata: { originalEvent?: SyntheticEvent; }) => void; export interface BaseListboxInputProps { data?: readonly TDataItem[]; textField?: TextAccessor; dataKey?: DataKeyAccessor; value?: TValue; defaultValue?: TValue; onChange?: ChangeHandler; defaultFocusedItem?: TDataItem; onSelect?: SelectHandler; placeholder?: string; focusFirstItem?: boolean; busy?: boolean; busySpinner?: ReactNode; disabled?: boolean | ReadonlyArray; readOnly?: boolean; selectIcon?: ReactNode; inputProps?: object; listProps?: object; renderListItem?: RenderItemProp; renderListGroup?: RenderGroupProp; optionComponent?: OptionComponentProp; groupBy?: GroupBy; listComponent?: ComponentType & { ref: Ref; }>; } export declare type InferFormat = TLocalizer extends Localizer ? TFormat : unknown; export interface DateLocalizationProps { formats?: DateFormats>; } export interface NumberLocalizationProps { formats?: DateFormats>; } //# sourceMappingURL=shared.d.ts.map