mirror of
https://github.com/servo/servo.git
synced 2025-07-11 17:33:47 +01:00
128 lines
3.9 KiB
Text
128 lines
3.9 KiB
Text
// GENERATED CONTENT - DO NOT EDIT
|
|
// Content was automatically extracted by Reffy into reffy-reports
|
|
// (https://github.com/tidoust/reffy-reports)
|
|
// Source: Encrypted Media Extensions (https://w3c.github.io/encrypted-media/)
|
|
|
|
[Exposed=Window]
|
|
partial interface Navigator {
|
|
[SecureContext] Promise<MediaKeySystemAccess> requestMediaKeySystemAccess(DOMString keySystem,
|
|
sequence<MediaKeySystemConfiguration> supportedConfigurations);
|
|
};
|
|
|
|
enum MediaKeysRequirement {
|
|
"required",
|
|
"optional",
|
|
"not-allowed"
|
|
};
|
|
|
|
dictionary MediaKeySystemConfiguration {
|
|
DOMString label = "";
|
|
sequence<DOMString> initDataTypes = [];
|
|
sequence<MediaKeySystemMediaCapability> audioCapabilities = [];
|
|
sequence<MediaKeySystemMediaCapability> videoCapabilities = [];
|
|
MediaKeysRequirement distinctiveIdentifier = "optional";
|
|
MediaKeysRequirement persistentState = "optional";
|
|
sequence<DOMString> sessionTypes;
|
|
};
|
|
|
|
dictionary MediaKeySystemMediaCapability {
|
|
DOMString contentType = "";
|
|
DOMString robustness = "";
|
|
};
|
|
|
|
[Exposed=Window,
|
|
SecureContext]
|
|
interface MediaKeySystemAccess {
|
|
readonly attribute DOMString keySystem;
|
|
MediaKeySystemConfiguration getConfiguration();
|
|
Promise<MediaKeys> createMediaKeys();
|
|
};
|
|
|
|
enum MediaKeySessionType {
|
|
"temporary",
|
|
"persistent-license"
|
|
};
|
|
|
|
[Exposed=Window,
|
|
SecureContext]
|
|
interface MediaKeys {
|
|
MediaKeySession createSession(optional MediaKeySessionType sessionType = "temporary");
|
|
Promise<boolean> setServerCertificate(BufferSource serverCertificate);
|
|
};
|
|
|
|
[Exposed=Window,
|
|
SecureContext]
|
|
interface MediaKeySession : EventTarget {
|
|
readonly attribute DOMString sessionId;
|
|
readonly attribute unrestricted double expiration;
|
|
readonly attribute Promise<void> closed;
|
|
readonly attribute MediaKeyStatusMap keyStatuses;
|
|
attribute EventHandler onkeystatuseschange;
|
|
attribute EventHandler onmessage;
|
|
Promise<void> generateRequest(DOMString initDataType,
|
|
BufferSource initData);
|
|
Promise<boolean> load(DOMString sessionId);
|
|
Promise<void> update(BufferSource response);
|
|
Promise<void> close();
|
|
Promise<void> remove();
|
|
};
|
|
|
|
[Exposed=Window,
|
|
SecureContext]
|
|
interface MediaKeyStatusMap {
|
|
iterable<BufferSource, MediaKeyStatus>;
|
|
readonly attribute unsigned long size;
|
|
boolean has(BufferSource keyId);
|
|
any get(BufferSource keyId);
|
|
};
|
|
|
|
enum MediaKeyStatus {
|
|
"usable",
|
|
"expired",
|
|
"released",
|
|
"output-restricted",
|
|
"output-downscaled",
|
|
"status-pending",
|
|
"internal-error"
|
|
};
|
|
|
|
enum MediaKeyMessageType {
|
|
"license-request",
|
|
"license-renewal",
|
|
"license-release",
|
|
"individualization-request"
|
|
};
|
|
|
|
[Exposed=Window,
|
|
SecureContext,
|
|
Constructor(DOMString type, MediaKeyMessageEventInit eventInitDict)]
|
|
interface MediaKeyMessageEvent : Event {
|
|
readonly attribute MediaKeyMessageType messageType;
|
|
readonly attribute ArrayBuffer message;
|
|
};
|
|
|
|
dictionary MediaKeyMessageEventInit : EventInit {
|
|
required MediaKeyMessageType messageType;
|
|
required ArrayBuffer message;
|
|
};
|
|
|
|
[Exposed=Window]
|
|
partial interface HTMLMediaElement {
|
|
[SecureContext]
|
|
readonly attribute MediaKeys? mediaKeys;
|
|
attribute EventHandler onencrypted;
|
|
attribute EventHandler onwaitingforkey;
|
|
[SecureContext] Promise<void> setMediaKeys(MediaKeys? mediaKeys);
|
|
};
|
|
|
|
[Exposed=Window,
|
|
Constructor(DOMString type, optional MediaEncryptedEventInit eventInitDict)]
|
|
interface MediaEncryptedEvent : Event {
|
|
readonly attribute DOMString initDataType;
|
|
readonly attribute ArrayBuffer? initData;
|
|
};
|
|
|
|
dictionary MediaEncryptedEventInit : EventInit {
|
|
DOMString initDataType = "";
|
|
ArrayBuffer? initData = null;
|
|
};
|