@kwiz/fluentui
Version:
KWIZ common controls for FluentUI
20 lines (19 loc) • 668 B
TypeScript
export interface iDraggedItemType<DragType extends string> {
type: DragType;
}
export interface iDraggableProps<ItemType extends iDraggedItemType<string>> {
item: ItemType;
onBeginDrag?: () => void;
onEndDrag?: (dropResult: any) => void;
}
export interface iDroppableProps<DropTypes extends string, ItemTypes extends iDraggedItemType<DropTypes>> {
acceptTypes: DropTypes[];
onItemDrop: (item: ItemTypes) => void;
onHover?: (item: ItemTypes) => void;
onDrop?: () => void;
}
export interface iDragDropContext {
isDragging: boolean;
dragItem: iDraggedItemType<string>;
setDragItem: (value: iDraggedItemType<string>) => void;
}