export interface IMediaElement { /** * Returns the id of the element. */ id: string; /** * Returns the node name. Only available on native HTML tags. */ readonly nodeName?: string; /** * Returns the node element. Only available on Angular classes. */ readonly elem?: any; /** * Returns an AudioTrackList object with the audio tracks for a given video element. */ readonly audioTracks: AudioTrackList; /** * Gets or sets a value that indicates whether to start playing the media automatically. */ autoplay: boolean; /** * Gets a collection of buffered time ranges. */ readonly buffered: TimeRanges; /** * Gets or sets a flag that indicates whether the client provides a set of controls for the media (in case the developer does not include controls for the player). */ controls: boolean; crossOrigin: string | null; /** * Gets the address or URL of the current media resource that is selected by IHTMLMediaElement. */ readonly currentSrc: string; /** * Gets or sets the current playback position, in seconds. */ currentTime: number; defaultMuted: boolean; /** * Gets or sets the default playback rate when the user is not using fast forward or reverse for a video or audio resource. */ defaultPlaybackRate: number; /** * Returns the duration in seconds of the current media resource. A NaN value is returned if duration is not available, or Infinity if the media resource is streaming. */ readonly duration: number; /** * Gets information about whether the playback has ended or not. */ readonly ended: boolean; /** * Returns an object representing the current error state of the audio or video element. */ readonly error: MediaError; /** * Gets or sets a flag to specify whether playback should restart after it completes. */ loop: boolean; readonly mediaKeys: MediaKeys | null; /** * Specifies the purpose of the audio or video media, such as background audio or alerts. */ msAudioCategory: string; /** * Specifies the output device id that the audio will be sent to. */ msAudioDeviceType: string; readonly msGraphicsTrustStatus: MSGraphicsTrust; /** * Gets the MSMediaKeys object, which is used for decrypting media data, that is associated with this media element. */ readonly msKeys: MSMediaKeys; /** * Gets or sets whether the DLNA PlayTo device is available. */ msPlayToDisabled: boolean; /** * Gets or sets the path to the preferred media source. This enables the Play To target device to stream the media content, which can be DRM protected, from a different location, such as a cloud media server. */ msPlayToPreferredSourceUri: string; /** * Gets or sets the primary DLNA PlayTo device. */ msPlayToPrimary: boolean; /** * Gets the source associated with the media element for use by the PlayToManager. */ readonly msPlayToSource: any; /** * Specifies whether or not to enable low-latency playback on the media element. */ msRealTime: boolean; /** * Gets or sets a flag that indicates whether the audio (either audio or the audio track on video media) is muted. */ muted: boolean; /** * Gets the current network activity for the element. */ readonly networkState: number; onencrypted: (this: HTMLMediaElement, ev: MediaEncryptedEvent) => any; onmsneedkey: (this: HTMLMediaElement, ev: MSMediaKeyNeededEvent) => any; /** * Gets a flag that specifies whether playback is paused. */ readonly paused: boolean; /** * Gets or sets the current rate of speed for the media resource to play. This speed is expressed as a multiple of the normal speed of the media resource. */ playbackRate: number; /** * Gets TimeRanges for the current media resource that has been played. */ readonly played: TimeRanges; /** * Gets or sets the current playback position, in seconds. */ preload: string; readyState: number; /** * Returns a TimeRanges object that represents the ranges of the current media resource that can be seeked. */ readonly seekable: TimeRanges; /** * Gets a flag that indicates whether the the client is currently moving to a new playback position in the media resource. */ readonly seeking: boolean; /** * The address or URL of the a media resource that is to be considered. */ src: string; srcObject: MediaStream | null; readonly textTracks: TextTrackList; readonly videoTracks: VideoTrackList; /** * Gets or sets the volume level for audio portions of the media element. */ volume: number; addTextTrack(kind: string, label?: string, language?: string): TextTrack; /** * Returns a string that specifies whether the client can play a given media resource type. */ canPlayType(type: string): string; /** * Resets the audio or video object and loads a new media resource. */ load(): void; /** * Clears all effects from the media pipeline. */ msClearEffects(): void; msGetAsCastingSource(): any; /** * Inserts the specified audio effect into media pipeline. */ msInsertAudioEffect(activatableClassId: string, effectRequired: boolean, config?: any): void; msSetMediaKeys(mediaKeys: MSMediaKeys): void; /** * Specifies the media protection manager for a given media pipeline. */ msSetMediaProtectionManager(mediaProtectionManager?: any): void; /** * Pauses the current playback and sets paused to TRUE. This can be used to test whether the media is playing or paused. You can also use the pause or play events to tell whether the media is playing or not. */ pause(): void; /** * Loads and starts playback of a media resource. */ play(): Promise; setMediaKeys(mediaKeys: MediaKeys | null): Promise; readonly HAVE_CURRENT_DATA: number; readonly HAVE_ENOUGH_DATA: number; readonly HAVE_FUTURE_DATA: number; readonly HAVE_METADATA: number; readonly HAVE_NOTHING: number; readonly NETWORK_EMPTY: number; readonly NETWORK_IDLE: number; readonly NETWORK_LOADING: number; readonly NETWORK_NO_SOURCE: number; addEventListener(type: string, listener: EventListenerOrEventListenerObject, useCapture?: boolean): void; }