import IDisposable from '../../lang/IDisposable'; import ReadOnlySubject from '../../rx/ReadOnlySubject'; import IProtectionStrategy from './IProtectionStrategy'; export default class ChannelProtectionManager implements IDisposable { private readonly _protectionStrategy; private readonly _readOnlyProtectionStrategy; private readonly _mediaKeys; private readonly _readOnlyMediaKeys; get protectionStrategy(): ReadOnlySubject; get mediaKeys(): ReadOnlySubject; initializeProtection(): Promise; waitForProtectionStrategy(): Promise; waitForMediaKeys(): Promise; dispose(): Promise; private getEffectiveProtectionStrategy; }