import { MutableRefObject, ReactNode } from 'react'; /** * Selector selection context type. * Provides a mutable ref that TableRenderer writes selected transfers to, * and dialog footer buttons read from when dispatching Add/Set actions. * * Uses a ref instead of state to avoid re-renders when selection changes - * the value is only read at dispatch time. */ export interface SelectorSelectionContextType { /** Mutable ref holding the currently selected transfers */ selectedTransfersRef: MutableRefObject; /** The owner transfer for the selector (who owns the relation) */ ownerTransfer?: unknown; } /** * Hook to access selector selection context. * * @returns SelectorSelectionContextType * @throws Error if used outside SelectorSelectionProvider */ export declare function useSelectorSelection(): SelectorSelectionContextType; /** * Hook to access selector selection context (optional). * Returns null when not inside a selector dialog. * * @returns SelectorSelectionContextType | null */ export declare function useSelectorSelectionOptional(): SelectorSelectionContextType | null; /** * Props for SelectorSelectionProvider. */ export interface SelectorSelectionProviderProps { children: ReactNode; /** The owner transfer for the selector relation */ ownerTransfer?: unknown; } /** * Provider for selector selection state. * Wraps selector dialog content to enable sharing selection state * between TableRenderer (writer) and dialog footer buttons (reader). */ export declare function SelectorSelectionProvider({ children, ownerTransfer }: SelectorSelectionProviderProps): import("react/jsx-runtime").JSX.Element; //# sourceMappingURL=selector-selection-context.d.ts.map