import React, { createContext, useContext } from 'react'; import type { SceneOverlayViewport } from './overlayViewport'; export type SceneOverlayViewContextValue = { /** Внешний контейнер оверлея (полная область превью / презентации). */ rootRef: React.RefObject; /** Слой маркеров легенды на материале (вне clipped viewport). */ markerLayerRef: React.RefObject; /** Размеры области раскладки материалов (viewport.w/h). */ view: { w: number; h: number }; /** Смещение и размер viewport внутри rootRef (contentRect на презентации). */ viewport: SceneOverlayViewport | null; }; export const SceneOverlayViewContext = createContext(null); export function useSceneOverlayView(): SceneOverlayViewContextValue | null { return useContext(SceneOverlayViewContext); }