export interface ClientPosition { clientX: number; clientY: number; } export declare function useEventListener(type: K, listener?: (this: Document, ev: DocumentEventMap[K]) => void): void; export interface DragState { offset: number; extraState: T; } export declare function useDragState(split: 'horizontal' | 'vertical', onDragFinished: (dragState: DragState) => void): [DragState | null, (pos: ClientPosition, extraState: T) => void];