export interface AudioTrack { enabled : boolean ; readonly id : string ; kind : string ; readonly label : string ; language : string ; readonly sourceBuffer : SourceBuffer | null ; } declare var AudioTrack ; export interface AudioTrackListEventMap { addtrack : TrackEvent ; change : Event ; removetrack : TrackEvent ; } /** Used to represent a list of the audio tracks contained within a given HTML media element, with each track represented by a separate AudioTrack object in the list. */ export interface AudioTrackList extends EventTarget { readonly length : number ; onaddtrack : ( ( this : AudioTrackList , ev : TrackEvent ) => any ) | null ; onchange : ( ( this : AudioTrackList , ev : Event ) => any ) | null ; onremovetrack : ( ( this : AudioTrackList , ev : TrackEvent ) => any ) | null ; getTrackById ( id ) : AudioTrack | null ; item ( index ) : AudioTrack ; addEventListener < K extends keyof AudioTrackListEventMap > ( type , listener , options ? ) : void ; addEventListener ( type , listener , options ? ) : void ; removeEventListener < K extends keyof AudioTrackListEventMap > ( type , listener , options ? ) : void ; removeEventListener ( type , listener , options ? ) : void ; [ index ] : AudioTrack ; } declare var AudioTrackList ; /** A single video track from a <video> element. */ export interface VideoTrack { readonly id : string ; kind : string ; readonly label : string ; language : string ; selected : boolean ; readonly sourceBuffer : SourceBuffer | null ; } declare var VideoTrack ; export interface VideoTrackListEventMap { addtrack : TrackEvent ; change : Event ; removetrack : TrackEvent ; } /** Used to represent a list of the video tracks contained within a <video> element, with each track represented by a separate VideoTrack object in the list. */ export interface VideoTrackList extends EventTarget { readonly length : number ; onaddtrack : ( ( this : VideoTrackList , ev : TrackEvent ) => any ) | null ; onchange : ( ( this : VideoTrackList , ev : Event ) => any ) | null ; onremovetrack : ( ( this : VideoTrackList , ev : TrackEvent ) => any ) | null ; readonly selectedIndex : number ; getTrackById ( id ) : VideoTrack | null ; item ( index ) : VideoTrack ; addEventListener < K extends keyof VideoTrackListEventMap > ( type , listener , options ? ) : void ; addEventListener ( type , listener , options ? ) : void ; removeEventListener < K extends keyof VideoTrackListEventMap > ( type , listener , options ? ) : void ; removeEventListener ( type , listener , options ? ) : void ; [ index ] : VideoTrack ; } declare var VideoTrackList ;