@dynamix-layout/react
Version:
A powerful React component for creating dynamic, resizable, and draggable layouts.
33 lines (32 loc) • 2.09 kB
TypeScript
import { LayoutTree, DynamixLayoutCore, NodeOptions } from '../../../core/src';
import { default as React } from 'react';
import { useDynamixLayoutOptions } from '../types';
export declare const useDynamixLayout: ({ tabOutput, rootId, layoutTree, updateJSON, dimensions, tabHeadHeight, enableTabbar, bondWidth, minTabHeight, minTabWidth, sliderUpdateTimeout, windowResizeTimeout, disableSliderTimeout, disableResizeTimeout, }: useDynamixLayoutOptions) => {
tabsets: Map<string, NodeOptions> | undefined;
sliders: Map<string, NodeOptions> | undefined;
tabsetsRef: React.RefObject<Map<string, HTMLDivElement>>;
panelsRef: React.RefObject<Map<string, HTMLDivElement>>;
tabsRef: React.RefObject<Map<string, HTMLDivElement>>;
slidersRef: React.RefObject<Map<string, HTMLDivElement>>;
layoutJSON: LayoutTree | undefined;
layoutInstance: DynamixLayoutCore;
hoverElementRef: React.RefObject<HTMLDivElement | null>;
rootSplitHoverEl: React.RefObject<HTMLDivElement[]>;
dragging: boolean;
isUpdating: boolean;
setIsUpdating: React.Dispatch<React.SetStateAction<boolean>>;
setDragging: React.Dispatch<React.SetStateAction<boolean>>;
setTabsets: React.Dispatch<React.SetStateAction<Map<string, NodeOptions> | undefined>>;
setSliders: React.Dispatch<React.SetStateAction<Map<string, NodeOptions> | undefined>>;
setLayoutJSON: React.Dispatch<React.SetStateAction<LayoutTree | undefined>>;
onDragStart: (e: React.DragEvent<HTMLDivElement>) => void;
onDragOver: (e: React.DragEvent<HTMLDivElement>) => void;
onDragEnd: (e: React.DragEvent<HTMLDivElement>) => void;
onDragEnter: (e: React.DragEvent<HTMLDivElement>) => void;
onDragLeave: (e: React.DragEvent<HTMLDivElement>) => void;
onDrop: (e: React.DragEvent<HTMLDivElement>) => void;
onPointerDown: (e: React.PointerEvent<HTMLDivElement>) => void;
updateActiveTab: (e: React.MouseEvent<HTMLElement>) => void;
handleRootSplit: (e: React.DragEvent<HTMLDivElement>) => void;
handleNavbarDragOver: (e: React.DragEvent<HTMLDivElement>) => void;
};