import { ContentAnalysis, LayoutComputeResult, LayoutEngineConfig, LayoutMode, UseAdaptiveLayoutReturn } from '../types'; /** * Options for useAdaptiveLayout hook. */ export interface UseAdaptiveLayoutOptions { /** Initial layout mode */ initialMode?: LayoutMode; /** Layout engine configuration */ config?: Partial; /** Callback when layout mode changes */ onModeChange?: (mode: LayoutMode, analysis: ContentAnalysis) => void; /** Callback when layout is computed */ onLayoutComputed?: (result: LayoutComputeResult) => void; /** Whether to auto-detect layout mode */ autoDetect?: boolean; } /** * Hook for accessing and controlling the adaptive layout system. * * @param options - Hook configuration options * @returns Adaptive layout state and controls * * @example * ```tsx * function MyComponent() { * const { * layoutState, * mode, * analysis, * setMode, * containerRef * } = useAdaptiveLayout({ * initialMode: 'grid', * autoDetect: true, * onModeChange: (mode) => console.log('Mode changed:', mode) * }); * * return ( *
*

Current mode: {mode}

*

Items: {analysis?.itemCount}

*
* ); * } * ``` */ export declare function useAdaptiveLayout(options?: UseAdaptiveLayoutOptions): UseAdaptiveLayoutReturn; export type { UseAdaptiveLayoutReturn };