interface MediaKeySession implements EventTargetimport { type MediaKeySession } from "https://deno.land/x/windmill@v1.361.1/node_modules/evt/src/lib/types/lib.dom.ts"; This EncryptedMediaExtensions API interface represents a context for message exchange with a content decryption module (CDM). Propertiesreadonlyclosed: Promise<void>readonlyexpiration: numberreadonlykeyStatuses: MediaKeyStatusMaponkeystatuseschange: ((this: MediaKeySession, ev: Event) => any) | nullonmessage: ((this: MediaKeySession, ev: MediaKeyMessageEvent) => any) | nullreadonlysessionId: stringMethodsclose(): Promise<void>generateRequest(initDataType: string, initData: BufferSource): Promise<void>load(sessionId: string): Promise<boolean>remove(): Promise<void>update(response: BufferSource): Promise<void>addEventListener<K extends keyof MediaKeySessionEventMap>(type: K,listener: (this: MediaKeySession, ev: MediaKeySessionEventMap[K]) => any,options?: boolean | AddEventListenerOptions,): voidaddEventListener(type: string,listener: EventListenerOrEventListenerObject,options?: boolean | AddEventListenerOptions,): voidremoveEventListener<K extends keyof MediaKeySessionEventMap>(type: K,listener: (this: MediaKeySession, ev: MediaKeySessionEventMap[K]) => any,options?: boolean | EventListenerOptions,): voidremoveEventListener(type: string,listener: EventListenerOrEventListenerObject,options?: boolean | EventListenerOptions,): void