import { MaybeRefOrGetter } from 'vue'; export interface ResizePanelWidthConstraints { minWidth: number; maxWidth: number; mainMinWidth?: number; layoutGap?: number; } export interface ResizePercentConstraints { minPercent: number; maxPercent: number; } export declare function resizedLeadingPanelWidth(startWidth: number, deltaX: number, containerWidth: number, constraints: ResizePanelWidthConstraints): number; export declare function resizedTrailingPanelWidth(startWidth: number, deltaX: number, containerWidth: number, constraints: ResizePanelWidthConstraints): number; export declare function resizedVerticalSplitPercent(startPercent: number, deltaY: number, containerHeight: number, constraints: ResizePercentConstraints): number; export interface ManualLayoutResizeContext { kind: TKind; startValue: number; deltaX: number; deltaY: number; containerRect: DOMRectReadOnly; secondaryRect: DOMRectReadOnly | null; } export interface ManualLayoutResizeTarget { cursor?: string; getContainerElement: () => HTMLElement | null; getSecondaryElement?: () => HTMLElement | null; getStartValue: () => number; onResize: (context: ManualLayoutResizeContext) => void; } /** Coordinates pointer-driven resizing for one or more layout splitters. */ export declare function useManualLayoutResize(options: { enabled: MaybeRefOrGetter; resolveTarget: (kind: TKind) => ManualLayoutResizeTarget | null; }): { activeResize: import('vue').ShallowRef<{ kind: TKind; startClientX: number; startClientY: number; startValue: number; containerRect: DOMRectReadOnly; secondaryRect: DOMRectReadOnly | null; cursor: string; } | null, { kind: TKind; startClientX: number; startClientY: number; startValue: number; containerRect: DOMRectReadOnly; secondaryRect: DOMRectReadOnly | null; cursor: string; } | null>; isResizing: import('vue').ComputedRef; isResizingKind: (kind: TKind) => boolean; startResize: (kind: TKind, event: PointerEvent) => void; stopResize: () => void; };