import type { DeviceController, Call } from '../types/index.js'; import type { ContextHost } from './types.js'; /** * ReactiveController that bridges DeviceController + Call into a clean * DevicesState provided via Lit context. Consumers need zero RxJS. * * Usage in a provider component: * * private _devices = new DevicesContextController(this); * * // Wire up devices (can be done before a call exists): * this._devices.connectDevices(deviceController); * * // Wire up call (mute state, server-driven changes): * this._devices.connectCall(call); * * // Tear down individually or all at once: * this._devices.disconnectCall(); * this._devices.disconnect(); */ export declare class DevicesContextController { private _provider; private _dc; private _deviceSubs; private _callSubs; private _state; constructor(host: ContextHost); hostConnected(): void; hostDisconnected(): void; connectDevices(dc: DeviceController): void; /** Force device re-enumeration (call after getUserMedia grants permission). */ refreshDevices(): void; connectCall(call: Call): void; disconnectCall(): void; disconnect(): void; private _patch; } //# sourceMappingURL=DevicesContextController.d.ts.map