import { VideoAttachmentStateProviderProps } from './types';

/**
 * VideoAttachmentStateProvider determines which video container should have video attached
 * and which participant should be displayed in the active-video area.
 *
 * Responsibilities:
 * - Centralizes logic for determining attachment mode
 * - Enforces priority order: self-share > other-share > other-camera > self-camera > none
 * - Gates attendee camera attachment when the attendee lacks video permission
 * - Exposes userId (SDK attachment target) and displayUserId (UI display target) separately
 *
 * This provider does NOT handle actual attach/detach operations.
 * Those are handled by the useVideoAttachment hook in UserVideo component.
 */
declare const VideoAttachmentStateProvider: ({ children }: VideoAttachmentStateProviderProps) => import("react/jsx-runtime").JSX.Element;
export default VideoAttachmentStateProvider;
