import { DebugConfig } from '../types'; export interface ColumnConfig { id: string; title: string; minWidth?: number; maxWidth?: number; initialWidth?: number; resizable?: boolean; collapsible?: boolean; } export interface ColumnLayoutState { columns: ColumnConfig[]; columnWidths: Record; isResizing: boolean; resizingColumn: string | null; columnPanels: Record; showInsertPlaceholders: boolean; } export interface UseColumnLayoutProps { initialColumns: ColumnConfig[]; initialPanels: Record; debug?: DebugConfig; onLayoutChange?: (layout: ColumnLayoutState) => void; } export interface UseColumnLayoutReturn { layoutState: ColumnLayoutState; addColumn: (config: ColumnConfig, position?: number) => void; removeColumn: (columnId: string) => void; moveColumn: (fromIndex: number, toIndex: number) => void; startResize: (columnId: string, startX: number) => void; handleResize: (currentX: number) => void; endResize: () => void; setColumnWidth: (columnId: string, width: number) => void; resetColumnWidths: () => void; movePanel: (panelId: string, fromColumn: string, toColumn: string, insertIndex: number) => void; addPanel: (panelId: string, columnId: string, insertIndex?: number) => void; removePanel: (panelId: string) => void; updateColumnCount: (count: number) => void; autoBalanceColumns: () => void; getColumnById: (columnId: string) => ColumnConfig | undefined; getTotalWidth: () => number; getColumnElement: (columnId: string) => HTMLElement | null; setShowInsertPlaceholders: (show: boolean) => void; } export declare const useColumnLayout: ({ initialColumns, initialPanels, debug, onLayoutChange }: UseColumnLayoutProps) => UseColumnLayoutReturn; //# sourceMappingURL=useColumnLayout.d.ts.map