import { Vector2D } from '../../types/common'; /** * Layout element configuration */ export interface LayoutElement { id: string; width: number; height: number; initialPosition?: Vector2D; mass?: number; fixed?: boolean; } /** * Layout configuration */ export interface PhysicsLayoutConfig { elements: LayoutElement[]; containerWidth: number; containerHeight: number; padding?: number; spacing?: number; attraction?: number; repulsion?: number; damping?: number; mode?: 'grid' | 'flow' | 'force' | 'magnetic' | 'cluster'; } /** * Layout result */ export interface LayoutResult { positions: Map; isStable: boolean; iterations: number; } /** * Hook for physics-based layout */ export declare const usePhysicsLayout: (config: PhysicsLayoutConfig) => { positions: Map; isStable: boolean; iterations: number; reset: () => void; getLayout: () => LayoutResult; start: () => void; stop: () => void; isRunning: boolean; }; //# sourceMappingURL=usePhysicsLayout.d.ts.map