/*! @license * Shaka Player * Copyright 2016 Google LLC * SPDX-License-Identifier: Apache-2.0 */ declare class GlobalError extends Error {} //!! generated by clutz. // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka { class Player extends shaka.util.FakeEventTarget implements shaka.util.IDestroyable { private noStructuralTyping_shaka_Player : any; constructor (mediaElement ? : HTMLMediaElement | null , videoContainer ? : HTMLElement | null , dependencyInjector ? : (a : shaka.Player | null ) => any ) ; /** * Adds the given chapters track to the loaded manifest. load() * must resolve before calling. The presentation must have a duration. * This returns the created track. */ addChaptersTrack (uri : string , language : string , mimeType ? : string ) : Promise < shaka.extern.Track > ; /** * Load a new font on the page. If the font was already loaded, it does * nothing. */ addFont (name : string , url : string ) : any ; /** * Adds the given text track to the loaded manifest. load() must * resolve before calling. The presentation must have a duration. * This returns the created track, which can immediately be selected by the * application. The track will not be automatically selected. */ addTextTrackAsync (uri : string , language : string , kind : string , mimeType ? : string , codec ? : string , label ? : string , forced ? : boolean ) : Promise < shaka.extern.Track > ; /** * Adds the given thumbnails track to the loaded manifest. * load() must resolve before calling. The presentation must * have a duration. * This returns the created track, which can immediately be used by the * application. */ addThumbnailsTrack (uri : string , mimeType ? : string ) : Promise < shaka.extern.Track > ; /** * Attaches the player to a media element. * If the player was already attached to a media element, first detaches from * that media element. */ attach (mediaElement : HTMLMediaElement , initializeMediaSource ? : boolean ) : Promise < any > ; /** * Calling attachCanvas will tell the player to set canvas * element for LCEVC decoding. */ attachCanvas (canvas : HTMLCanvasElement | null ) : any ; /** * Cancel trick-play. If the player has not loaded content or is still loading * content this will be a no-op. */ cancelTrickPlay ( ) : any ; /** * Changes low latency configuration settings on the Player. * @param config This object should follow the {@link shaka.extern.PlayerConfiguration} object. Not all fields need to be set; unset fields retain their old values. */ configurationForLowLatency (config : object ) : any ; /** * Changes configuration settings on the Player. This checks the names of * keys and the types of values to avoid coding errors. If there are errors, * this logs them to the console and returns false. Correct fields are still * applied even if there are other errors. You can pass an explicit * undefined value to restore the default value. This has two * modes of operation: *

* First, this can be passed a single "plain" object. This object should * follow the {@link shaka.extern.PlayerConfiguration} object. Not all fields * need to be set; unset fields retain their old values. *

* Second, this can be passed two arguments. The first is the name of the key * to set. This should be a '.' separated path to the key. For example, * 'streaming.alwaysStreamText'. The second argument is the * value to set. * @param config This should either be a field name or an object. * @param value In the second mode, this is the value to set. */ configure (config : string | object , value ? : any ) : boolean ; /** * After destruction, a Player object cannot be used again. */ destroy ( ) : Promise < any > ; /** * Calls |destroy| on each PreloadManager object this player has created. */ destroyAllPreloads ( ) : any ; /** * Detach the player from the current media element. Leaves the player in a * state where it cannot play media, until it has been attached to something * else. */ detach (keepAdManager ? : boolean ) : Promise < any > ; /** * Detach the player from the current media element, if any, and returns a * PreloadManager that contains the loaded manifest of that asset, if any. * Allows for the asset to be re-loaded by this player faster, in the future. * When in src= mode, this detach but does not make a PreloadManager. * Leaves the player in a state where it cannot play media, until it has been * attached to something else. */ detachAndSavePreload (keepAdManager ? : boolean , saveLivePosition ? : boolean ) : Promise < shaka.media.PreloadManager | null > ; /** * Get the drm info used to initialize EME. If EME is not being used, this * will return null. If the player is idle or has not initialized * EME yet, this will return null. */ drmInfo ( ) : shaka.extern.DrmInfo | null ; /** * Returns the active sessions metadata */ getActiveSessionsMetadata ( ) : shaka.extern.DrmSessionMetadata [] ; /** * Returns a shaka.ads.AdManager instance, responsible for Dynamic * Ad Insertion functionality. */ getAdManager ( ) : shaka.extern.IAdManager | null ; /** * Returns Thumbnail objects for each thumbnail for a given image track ID. * If the player has not loaded content, this will return a null. */ getAllThumbnails (trackId : number ) : Promise < shaka.extern.Thumbnail [] | null > ; /** * Get the uri to the asset that the player has loaded. If the player has not * loaded content, this will return null. */ getAssetUri ( ) : string | null ; /** * Return a list of audio languages available. If the player has not loaded * any content, this will return an empty list. */ getAudioLanguages ( ) : string [] ; /** * Return a list of audio language-role combinations available. If the * player has not loaded any content, this will return an empty list. */ getAudioLanguagesAndRoles ( ) : shaka.extern.LanguageRole [] ; /** * Returns the ratio of video length buffered compared to buffering Goal */ getBufferFullness ( ) : number ; /** * Get information about what the player has buffered. If the player has not * loaded content or is currently loading content, the buffered content will * be empty. */ getBufferedInfo ( ) : shaka.extern.BufferedInfo ; /** * This returns the list of chapters. */ getChapters (language : string ) : shaka.extern.Chapter [] ; /** * Return a list of chapters tracks. */ getChaptersTracks ( ) : shaka.extern.TrackList ; /** * Return a copy of the current configuration. Modifications of the returned * value will not affect the Player's active configuration. You must call * player.configure() to make changes. */ getConfiguration ( ) : shaka.extern.PlayerConfiguration ; /** * Return a copy of the current configuration for low latency. */ getConfigurationForLowLatency ( ) : object ; /** * Get the next known expiration time for any EME session. If the session * never expires, this will return Infinity. If there are no EME * sessions, this will return Infinity. If the player has not * loaded content, this will return Infinity. */ getExpiration ( ) : number ; /** * Gets information about the currently fetched video, audio, and text. * In the case of a multi-codec or multi-mimeType manifest, this can let you * determine the exact codecs and mimeTypes being fetched at the moment. */ getFetchedPlaybackInfo ( ) : shaka.extern.PlaybackInfo ; /** * Return a list of image tracks that can be switched to. * If the player has not loaded content, this will return an empty list. */ getImageTracks ( ) : shaka.extern.TrackList ; /** * Gets a map of EME key ID to the current key status. */ getKeyStatuses ( ) : { [ key: string ]: string } ; /** * Get the current load mode. */ getLoadMode ( ) : shaka.Player.LoadMode ; /** * Get the manifest that the player has loaded. If the player has not loaded * any content, this will return null. * NOTE: This structure is NOT covered by semantic versioning compatibility * guarantees. It may change at any time! * This is marked as deprecated to warn Closure Compiler users at compile-time * to avoid using this method. */ getManifest ( ) : shaka.extern.Manifest | null ; /** * Get the type of manifest parser that the player is using. If the player has * not loaded any content, this will return null. */ getManifestParserFactory ( ) : ( shaka.extern.ManifestParser.Factory ) | null ; /** * Get the current manifest type. */ getManifestType ( ) : string | null ; /** * Get the media element that the player is currently using to play loaded * content. If the player has not loaded content, this will return * null. */ getMediaElement ( ) : HTMLMediaElement | null ; getNetworkingEngine ( ) : shaka.net.NetworkingEngine | null ; /** * Return a copy of the current non default configuration. Modifications of * the returned value will not affect the Player's active configuration. * You must call player.configure() to make changes. */ getNonDefaultConfiguration ( ) : object ; /** * Get the playback rate of what is playing right now. If we are using trick * play, this will return the trick play rate. * If no content is playing, this will return 0. * If content is buffering, this will return the expected playback rate once * the video starts playing. *

* If the player has not loaded content, this will return a playback rate of * 0. */ getPlaybackRate ( ) : number ; /** * Get the current playhead position as a date. */ getPlayheadTimeAsDate ( ) : Date | null ; /** * Get the presentation start time as a date. */ getPresentationStartTimeAsDate ( ) : Date | null ; /** * Get the presentation segment availability duration. This should only be * called when the player has loaded a live stream. If the player has not * loaded a live stream, this will return null. */ getSegmentAvailabilityDuration ( ) : number | null ; /** * Get statistics for the current playback session. If the player is not * playing content, this will return an empty stats object. */ getStats ( ) : shaka.extern.Stats ; /** * Return a list of text languages available. If the player has not loaded * any content, this will return an empty list. */ getTextLanguages ( ) : string [] ; /** * Return a list of text language-role combinations available. If the player * has not loaded any content, this will be return an empty list. */ getTextLanguagesAndRoles ( ) : shaka.extern.LanguageRole [] ; /** * Return a list of text tracks that can be switched to. *

* If the player has not loaded content, this will return an empty list. */ getTextTracks ( ) : shaka.extern.TrackList ; /** * Return a Thumbnail object from a image track Id and time. * If the player has not loaded content, this will return a null. */ getThumbnails (trackId : number , time : number ) : Promise < shaka.extern.Thumbnail | null > ; /** * Return a list of variant tracks that can be switched to. *

* If the player has not loaded content, this will return an empty list. */ getVariantTracks ( ) : shaka.extern.TrackList ; /** * Go to live in a live stream. */ goToLive ( ) : any ; /** * Check if the manifest contains only audio-only content. If the player has * not loaded content, this will return false. *

* The player does not support content that contain more than one type of * variants (i.e. mixing audio-only, video-only, audio-video). Content will be * filtered to only contain one type of variant. */ isAudioOnly ( ) : boolean ; /** * Check if the player is currently in a buffering state (has too little * content to play smoothly). If the player has not loaded content, this will * return false. */ isBuffering ( ) : boolean ; /** * Indicate if the video has ended. */ isEnded ( ) : boolean ; /** * Indicates if the player has fully loaded the stream. */ isFullyLoaded ( ) : boolean ; /** * Get if the player is playing in-progress content. If the player has not * loaded content, this will return false. */ isInProgress ( ) : boolean ; /** * Get if the player is playing live content. If the player has not loaded * content, this will return false. */ isLive ( ) : boolean ; /** * Indicate if we are using remote playback. */ isRemotePlayback ( ) : boolean ; /** * Check if the text displayer is enabled. */ isTextTrackVisible ( ) : boolean ; /** * Get the key system currently used by EME. If EME is not being used, this * will return an empty string. If the player has not loaded content, this * will return an empty string. */ keySystem ( ) : string ; /** * Loads a new stream. * If another stream was already playing, first unloads that stream. * @param startTime When startTime is null or undefined, playback will start at the default start time (0 for VOD and liveEdge for LIVE). */ load (assetUriOrPreloader : string | shaka.media.PreloadManager | null , startTime ? : number | null , mimeType ? : string | null ) : Promise < any > ; /** * Starts to preload a given asset, and returns a PreloadManager object that * represents that preloading process. * The PreloadManager will load the manifest for that asset, as well as the * initialization segment. It will not preload anything more than that; * this feature is intended for reducing start-time latency, not for fully * downloading assets before playing them (for that, use * |shaka.offline.Storage|). * You can pass that PreloadManager object in to the |load| method on this * Player instance to finish loading that particular asset, or you can call * the |destroy| method on the manager if the preload is no longer necessary. * If this returns null rather than a PreloadManager, that indicates that the * asset must be played with src=, which cannot be preloaded. * @param startTime When startTime is null or undefined, playback will start at the default start time (0 for VOD and liveEdge for LIVE). */ preload (assetUri : string , startTime ? : number | null , mimeType ? : string | null ) : Promise < shaka.media.PreloadManager | null > ; /** * Releases all of the mutexes of the player. Meant for use by the tests. */ releaseAllMutexes ( ) : any ; /** * Reset configuration to default. */ resetConfiguration ( ) : any ; /** * Retry streaming after a streaming failure has occurred. When the player has * not loaded content or is loading content, this will be a no-op and will * return false. *

* If the player has loaded content, and streaming has not seen an error, this * will return false. *

* If the player has loaded content, and streaming seen an error, but the * could not resume streaming, this will return false. */ retryStreaming (retryDelaySeconds ? : number ) : boolean ; /** * Get the range of time (in seconds) that seeking is allowed. If the player * has not loaded content and the manifest is HLS, this will return a range * from 0 to 0. */ seekRange ( ) : shaka.extern.BufferedRange ; /** * Sets the current audio language and current variant role to the selected * language, role and channel count, and chooses a new variant if need be. * If the player has not loaded any content, this will be a no-op. */ selectAudioLanguage (language : string , role ? : string , channelsCount ? : number , safeMargin ? : number , codec ? : string , spatialAudio ? : boolean ) : any ; /** * Sets the current text language and current text role to the selected * language and role, and chooses a new variant if need be. If the player has * not loaded any content, this will be a no-op. */ selectTextLanguage (language : string , role ? : string , forced ? : boolean ) : any ; /** * Select a specific text track. track should come from a call to * getTextTracks. If the track is not found, this will be a * no-op. If the player has not loaded content, this will be a no-op. *

* Note that AdaptationEvents are not fired for manual track * selections. */ selectTextTrack (track : shaka.extern.Track ) : any ; /** * Select a specific variant track to play. track should come * from a call to getVariantTracks. If track cannot * be found, this will be a no-op. If the player has not loaded content, this * will be a no-op. *

* Changing variants will take effect once the currently buffered content has * been played. To force the change to happen sooner, use * clearBuffer with safeMargin. Setting * clearBuffer to true will clear all buffered * content after safeMargin, allowing the new variant to start * playing sooner. *

* Note that AdaptationEvents are not fired for manual track * selections. * @param safeMargin Optional amount of buffer (in seconds) to retain when clearing the buffer. Useful for switching variant quickly without causing a buffering event. Defaults to 0 if not provided. Ignored if clearBuffer is false. Can cause hiccups on some browsers if chosen too small, e.g. The amount of two segments is a fair minimum to consider as safeMargin value. */ selectVariantTrack (track : shaka.extern.Track , clearBuffer ? : boolean , safeMargin ? : number ) : any ; /** * Select variant tracks that have a given label. This assumes the * label uniquely identifies an audio stream, so all the variants * are expected to have the same variant.audio. * @param clearBuffer Optional clear buffer or not when switch to new variant Defaults to true if not provided * @param safeMargin Optional amount of buffer (in seconds) to retain when clearing the buffer. Defaults to 0 if not provided. Ignored if clearBuffer is false. */ selectVariantsByLabel (label : string , clearBuffer ? : boolean , safeMargin ? : number ) : any ; /** * Set the maximum resolution that the platform's hardware can handle. */ setMaxHardwareResolution (width : number , height : number ) : any ; /** * Enable or disable the text displayer. If the player is in an unloaded * state, the request will be applied next time content is loaded. */ setTextTrackVisibility (isVisible : boolean ) : any ; /** * Set the videoContainer to construct UITextDisplayer. */ setVideoContainer (videoContainer : HTMLElement | null ) : any ; /** * Enable trick play to skip through content without playing by repeatedly * seeking. For example, a rate of 2.5 would result in 2.5 seconds of content * being skipped every second. A negative rate will result in moving * backwards. *

* If the player has not loaded content or is still loading content this will * be a no-op. Wait until load has completed before calling. *

* Trick play will be canceled automatically if the playhead hits the * beginning or end of the seekable range for the content. */ trickPlay (rate : number , useTrickPlayTrack ? : boolean ) : any ; /** * Unloads the currently playing stream, if any. */ unload (initializeMediaSource ? : boolean , keepAdManager ? : boolean ) : Promise < any > ; /** * Unloads the currently playing stream, if any, and returns a PreloadManager * that contains the loaded manifest of that asset, if any. * Allows for the asset to be re-loaded by this player faster, in the future. * When in src= mode, this unloads but does not make a PreloadManager. */ unloadAndSavePreload (initializeMediaSource ? : boolean , keepAdManager ? : boolean ) : Promise < shaka.media.PreloadManager | null > ; /** * Provides a way to update the stream start position during the media loading * process. Can for example be called from the manifestparsed * event handler to update the start position based on information in the * manifest. */ updateStartTime (startTime : number ) : any ; /** * Return whether the browser provides basic support. If this returns false, * Shaka Player cannot be used at all. In this case, do not construct a * Player instance and do not use the library. */ static isBrowserSupported ( ) : boolean ; /** * Probes the browser to determine what features are supported. This makes a * number of requests to EME/MSE/etc which may result in user prompts. This * should only be used for diagnostics. *

* NOTE: This may show a request to the user for permission. */ static probeSupport (promptsOkay ? : boolean ) : Promise < shaka.extern.SupportType > ; /** * Registers a plugin callback that will be called with * support(). The callback will return the value that will be * stored in the return value from support(). */ static registerSupportPlugin (name : string , callback : ( ) => any ) : any ; /** * Set a factory to create an ad manager during player construction time. * This method needs to be called before instantiating the Player class. */ static setAdManagerFactory (factory : shaka.extern.IAdManager.Factory ) : any ; static version : string ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.Player { /** * In order to know what method of loading the player used for some content, we * have this enum. It lets us know if content has not been loaded, loaded with * media source, or loaded with src equals. * This enum has a low resolution, because it is only meant to express the * outer limits of the various states that the player is in. For example, when * someone calls a public method on player, it should not matter if they have * initialized drm engine, it should only matter if they finished loading * content. */ /** * In order to know what method of loading the player used for some content, we * have this enum. It lets us know if content has not been loaded, loaded with * media source, or loaded with src equals. * This enum has a low resolution, because it is only meant to express the * outer limits of the various states that the player is in. For example, when * someone calls a public method on player, it should not matter if they have * initialized drm engine, it should only matter if they finished loading * content. */ enum LoadMode { DESTROYED = 0.0 , MEDIA_SOURCE = 2.0 , NOT_LOADED = 1.0 , SRC_EQUALS = 3.0 , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.abr { class SimpleAbrManager implements shaka.extern.AbrManager , shaka.util.IReleasable { private noStructuralTyping_shaka_abr_SimpleAbrManager : any; chooseVariant ( ) : shaka.extern.Variant ; configure (config : any ) : any ; disable ( ) : any ; enable ( ) : any ; getBandwidthEstimate ( ) : any ; init (switchCallback : any ) : any ; playbackRateChanged (rate : any ) : any ; release ( ) : any ; segmentDownloaded (deltaTimeMs : number , numBytes : number , allowSwitch : boolean , request ? : shaka.extern.Request ) : any ; setCmsdManager (cmsdManager : any ) : any ; setMediaElement (mediaElement : any ) : any ; setVariants (variants : any ) : any ; stop ( ) : any ; trySuggestStreams ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ads { /** * A class responsible for ad-related interactions. */ class AdManager extends shaka.util.FakeEventTarget implements shaka.extern.IAdManager , shaka.util.IReleasable { private noStructuralTyping_shaka_ads_AdManager : any; addAdUrlInterstitial (url : any ) : any ; addCustomInterstitial (interstitial : any ) : any ; addMediaTailorTrackingUrl (url : string ) : any ; configure (config : any ) : any ; getCuePoints ( ) : shaka.extern.AdCuePoint [] ; getInterstitialPlayer ( ) : any ; getServerSideCuePoints ( ) : shaka.extern.AdCuePoint [] ; getStats ( ) : shaka.extern.AdsStats ; initClientSide (adContainer : any , video : any , adsRenderingSettings : any ) : any ; initInterstitial (adContainer : any , basePlayer : any , baseVideo : any ) : any ; initMediaTailor (adContainer : any , networkingEngine : any , video : any ) : any ; initServerSide (adContainer : any , video : any ) : any ; onAssetUnload ( ) : any ; onCueMetadataChange (value : any ) : any ; onDASHInterstitialMetadata (basePlayer : any , baseVideo : any , region : any ) : any ; onDashTimedMetadata (region : any ) : any ; onHLSInterstitialMetadata (basePlayer : any , baseVideo : any , interstitial : any ) : any ; onHlsTimedMetadata (metadata : any , timestamp : any ) : any ; onManifestUpdated (isLive : any ) : any ; release ( ) : any ; replaceServerSideAdTagParameters (adTagParameters : any ) : any ; requestClientSideAds (imaRequest : any ) : any ; requestMediaTailorStream (url : string , adsParams : object | null , backupUrl ? : string ) : Promise < string > ; requestServerSideStream (imaRequest : any , backupUrl ? : string ) : Promise < string > ; setLocale (locale : any ) : any ; updateClientSideAdsRenderingSettings (adsRenderingSettings : any ) : any ; /** * The event name for when a sequence of ads has been loaded. * Deprecated, please use {@link shaka.ads.Utils} */ static ADS_LOADED : string ; /** * The event name for when the client side SDK signalled its readiness * to play a VPAID ad or an ad rule. * Deprecated, please use {@link shaka.ads.Utils} */ static AD_BREAK_READY : string ; /** * The event name for when the ad is buffering. * Deprecated, please use {@link shaka.ads.Utils} */ static AD_BUFFERING : string ; /** * The event name for when the ad was clicked. * Deprecated, please use {@link shaka.ads.Utils} */ static AD_CLICKED : string ; /** * The event name for when the ad was closed by the user. * Deprecated, please use {@link shaka.ads.Utils} */ static AD_CLOSED : string ; /** * The event name for when an ad has completed playing. * Deprecated, please use {@link shaka.ads.Utils} */ static AD_COMPLETE : string ; /** * The name of the event for when an ad requires the video of the main content * to be attached. * Deprecated, please use {@link shaka.ads.Utils} */ static AD_CONTENT_ATTACH_REQUESTED : string ; /** * The name of the event for when an ad requires the main content to be paused. * Fired when the platform does not support multiple media elements. * Deprecated, please use {@link shaka.ads.Utils} */ static AD_CONTENT_PAUSE_REQUESTED : string ; /** * The name of the event for when an ad requires the main content to be resumed. * Fired when the platform does not support multiple media elements. * Deprecated, please use {@link shaka.ads.Utils} */ static AD_CONTENT_RESUME_REQUESTED : string ; /** * The event name for when the ad's duration changed. * Deprecated, please use {@link shaka.ads.Utils} */ static AD_DURATION_CHANGED : string ; /** * The event name for when the ad manager dispatch errors. * Deprecated, please use {@link shaka.ads.Utils} */ static AD_ERROR : string ; /** * The event name for when an ad playhead crosses first quartile. * Deprecated, please use {@link shaka.ads.Utils} */ static AD_FIRST_QUARTILE : string ; /** * The event name for when the ad's URL was hit. * Deprecated, please use {@link shaka.ads.Utils} */ static AD_IMPRESSION : string ; /** * The event name for when the interaction callback for the ad was * triggered. * Deprecated, please use {@link shaka.ads.Utils} */ static AD_INTERACTION : string ; /** * The event name for when the ad changes from or to linear. * Deprecated, please use {@link shaka.ads.Utils} */ static AD_LINEAR_CHANGED : string ; /** * The event name for when the ad data becomes available. * Deprecated, please use {@link shaka.ads.Utils} */ static AD_LOADED : string ; /** * The event name for when the ad's metadata becomes available. * Deprecated, please use {@link shaka.ads.Utils} */ static AD_METADATA : string ; /** * The event name for when an ad playhead crosses midpoint. * Deprecated, please use {@link shaka.ads.Utils} */ static AD_MIDPOINT : string ; /** * The event name for when the ad was muted. * Deprecated, please use {@link shaka.ads.Utils} */ static AD_MUTED : string ; /** * The event name for when the ad was paused. * Deprecated, please use {@link shaka.ads.Utils} */ static AD_PAUSED : string ; /** * The event name for when there is an update to the current ad's progress. * Deprecated, please use {@link shaka.ads.Utils} */ static AD_PROGRESS : string ; /** * The event name for when the ad display encountered a recoverable * error. * Deprecated, please use {@link shaka.ads.Utils} */ static AD_RECOVERABLE_ERROR : string ; /** * The event name for when the ad was resumed after a pause. * Deprecated, please use {@link shaka.ads.Utils} */ static AD_RESUMED : string ; /** * The event name for when an ad is skipped by the user. * Deprecated, please use {@link shaka.ads.Utils} */ static AD_SKIPPED : string ; /** * The event name for when the ad's skip status changes * (usually it becomes skippable when it wasn't before). * Deprecated, please use {@link shaka.ads.Utils} */ static AD_SKIP_STATE_CHANGED : string ; /** * The event name for when an ad has started playing. * Deprecated, please use {@link shaka.ads.Utils} */ static AD_STARTED : string ; /** * The event name for when an ad has finished playing * (played all the way through, was skipped, or was unable to proceed * due to an error). * Deprecated, please use {@link shaka.ads.Utils} */ static AD_STOPPED : string ; /** * The event name for when an ad playhead crosses third quartile. * Deprecated, please use {@link shaka.ads.Utils} */ static AD_THIRD_QUARTILE : string ; /** * The event name for when the ad volume has changed. * Deprecated, please use {@link shaka.ads.Utils} */ static AD_VOLUME_CHANGED : string ; /** * The event name for when all the ads were completed. * Deprecated, please use {@link shaka.ads.Utils} */ static ALL_ADS_COMPLETED : string ; /** * The event name for when the ad's cue points (start/end markers) * have changed. * Deprecated, please use {@link shaka.ads.Utils} */ static CUEPOINTS_CHANGED : string ; /** * The event name for when the native IMA ad manager object has * loaded and become available. * Deprecated, please use {@link shaka.ads.Utils} */ static IMA_AD_MANAGER_LOADED : string ; /** * The event name for when the native IMA stream manager object has * loaded and become available. * Deprecated, please use {@link shaka.ads.Utils} */ static IMA_STREAM_MANAGER_LOADED : string ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ads { class ClientSideAd implements shaka.extern.IAd { private noStructuralTyping_shaka_ads_ClientSideAd : any; constructor (imaAd : any , imaAdManager : any , video : HTMLMediaElement | null ) ; canSkipNow ( ) : any ; getAdId ( ) : any ; getAdvertiserName ( ) : any ; getCreativeAdId ( ) : any ; getDescription ( ) : any ; getDuration ( ) : any ; getMediaUrl ( ) : any ; getMinSuggestedDuration ( ) : any ; getPodIndex ( ) : any ; getPositionInSequence ( ) : any ; getRemainingTime ( ) : any ; getSequenceLength ( ) : any ; getTimeOffset ( ) : any ; getTimeUntilSkippable ( ) : any ; getTitle ( ) : any ; getVastMediaBitrate ( ) : any ; getVastMediaHeight ( ) : any ; getVastMediaWidth ( ) : any ; getVolume ( ) : any ; isClientRendering ( ) : any ; isLinear ( ) : any ; isMuted ( ) : any ; isPaused ( ) : any ; isSkippable ( ) : any ; isUsingAnotherMediaElement ( ) : any ; needsSkipUI ( ) : any ; pause ( ) : any ; play ( ) : any ; release ( ) : any ; resize (width : any , height : any ) : any ; setMuted (muted : any ) : any ; setVolume (volume : any ) : any ; skip ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ads { class InterstitialAd implements shaka.extern.IAd { private noStructuralTyping_shaka_ads_InterstitialAd : any; constructor (video : HTMLMediaElement | null , interstitial : shaka.extern.AdInterstitial , onSkip : ( ) => any , sequenceLength : number , adPosition : number , isUsingAnotherMediaElement : boolean ) ; canSkipNow ( ) : any ; getAdId ( ) : any ; getAdvertiserName ( ) : any ; getCreativeAdId ( ) : any ; getDescription ( ) : any ; getDuration ( ) : any ; getMediaUrl ( ) : any ; getMinSuggestedDuration ( ) : any ; getPodIndex ( ) : any ; getPositionInSequence ( ) : any ; getRemainingTime ( ) : any ; getSequenceLength ( ) : any ; getTimeOffset ( ) : any ; getTimeUntilSkippable ( ) : any ; getTitle ( ) : any ; getVastMediaBitrate ( ) : any ; getVastMediaHeight ( ) : any ; getVastMediaWidth ( ) : any ; getVolume ( ) : any ; isClientRendering ( ) : any ; isLinear ( ) : any ; isMuted ( ) : any ; isPaused ( ) : any ; isSkippable ( ) : any ; isUsingAnotherMediaElement ( ) : any ; needsSkipUI ( ) : any ; pause ( ) : any ; play ( ) : any ; release ( ) : any ; resize (width : any , height : any ) : any ; setMuted (muted : any ) : any ; setVolume (volume : any ) : any ; skip ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ads { class InterstitialStaticAd implements shaka.extern.IAd { private noStructuralTyping_shaka_ads_InterstitialStaticAd : any; constructor (interstitial : shaka.extern.AdInterstitial , sequenceLength : number , adPosition : number ) ; canSkipNow ( ) : any ; getAdId ( ) : any ; getAdvertiserName ( ) : any ; getCreativeAdId ( ) : any ; getDescription ( ) : any ; getDuration ( ) : any ; getMediaUrl ( ) : any ; getMinSuggestedDuration ( ) : any ; getPodIndex ( ) : any ; getPositionInSequence ( ) : any ; getRemainingTime ( ) : any ; getSequenceLength ( ) : any ; getTimeOffset ( ) : any ; getTimeUntilSkippable ( ) : any ; getTitle ( ) : any ; getVastMediaBitrate ( ) : any ; getVastMediaHeight ( ) : any ; getVastMediaWidth ( ) : any ; getVolume ( ) : any ; isClientRendering ( ) : any ; isLinear ( ) : any ; isMuted ( ) : any ; isPaused ( ) : any ; isSkippable ( ) : any ; isUsingAnotherMediaElement ( ) : any ; needsSkipUI ( ) : any ; pause ( ) : any ; play ( ) : any ; release ( ) : any ; resize (width : any , height : any ) : any ; setMuted (muted : any ) : any ; setVolume (volume : any ) : any ; skip ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ads { class MediaTailorAd implements shaka.extern.IAd { private noStructuralTyping_shaka_ads_MediaTailorAd : any; constructor (mediaTailorAd : any | null , adPosition : number , totalAds : number , isLinear : boolean , video : HTMLMediaElement | null ) ; canSkipNow ( ) : any ; getAdId ( ) : any ; getAdvertiserName ( ) : any ; getCreativeAdId ( ) : any ; getDescription ( ) : any ; getDuration ( ) : any ; getMediaUrl ( ) : any ; getMinSuggestedDuration ( ) : any ; getPodIndex ( ) : any ; getPositionInSequence ( ) : any ; getRemainingTime ( ) : any ; getSequenceLength ( ) : any ; getTimeOffset ( ) : any ; getTimeUntilSkippable ( ) : any ; getTitle ( ) : any ; getVastMediaBitrate ( ) : any ; getVastMediaHeight ( ) : any ; getVastMediaWidth ( ) : any ; getVolume ( ) : any ; isClientRendering ( ) : any ; isLinear ( ) : any ; isMuted ( ) : any ; isPaused ( ) : any ; isSkippable ( ) : any ; isUsingAnotherMediaElement ( ) : any ; needsSkipUI ( ) : any ; pause ( ) : any ; play ( ) : any ; release ( ) : any ; resize (width : any , height : any ) : any ; setMuted (muted : any ) : any ; setVolume (volume : any ) : any ; skip ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ads { class ServerSideAd implements shaka.extern.IAd { private noStructuralTyping_shaka_ads_ServerSideAd : any; constructor (imaAd : any | null , video : HTMLMediaElement | null ) ; canSkipNow ( ) : any ; getAdId ( ) : any ; getAdvertiserName ( ) : any ; getCreativeAdId ( ) : any ; getDescription ( ) : any ; getDuration ( ) : any ; getMediaUrl ( ) : any ; getMinSuggestedDuration ( ) : any ; getPodIndex ( ) : any ; getPositionInSequence ( ) : any ; getRemainingTime ( ) : any ; getSequenceLength ( ) : any ; getTimeOffset ( ) : any ; getTimeUntilSkippable ( ) : any ; getTitle ( ) : any ; getVastMediaBitrate ( ) : any ; getVastMediaHeight ( ) : any ; getVastMediaWidth ( ) : any ; getVolume ( ) : any ; isClientRendering ( ) : any ; isLinear ( ) : any ; isMuted ( ) : any ; isPaused ( ) : any ; isSkippable ( ) : any ; isUsingAnotherMediaElement ( ) : any ; needsSkipUI ( ) : any ; pause ( ) : any ; play ( ) : any ; release ( ) : any ; resize (width : any , height : any ) : any ; setMuted (muted : any ) : any ; setVolume (volume : any ) : any ; skip ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ads { /** * A class responsible for ad utils. */ class Utils { private noStructuralTyping_shaka_ads_Utils : any; /** * The event name for when a sequence of ads has been loaded. */ static ADS_LOADED : string ; /** * The event name for when the client side SDK signalled its readiness * to play a VPAID ad or an ad rule. */ static AD_BREAK_READY : string ; /** * The event name for when the ad is buffering. */ static AD_BUFFERING : string ; /** * The event name for when the ad was clicked. */ static AD_CLICKED : string ; /** * The event name for when the ad was closed by the user. */ static AD_CLOSED : string ; /** * The event name for when an ad has completed playing. */ static AD_COMPLETE : string ; /** * The name of the event for when an ad requires the video of the main content * to be attached. */ static AD_CONTENT_ATTACH_REQUESTED : string ; /** * The name of the event for when an ad requires the main content to be paused. * Fired when the platform does not support multiple media elements. */ static AD_CONTENT_PAUSE_REQUESTED : string ; /** * The name of the event for when an ad requires the main content to be resumed. * Fired when the platform does not support multiple media elements. */ static AD_CONTENT_RESUME_REQUESTED : string ; /** * The event name for when the ad's duration changed. */ static AD_DURATION_CHANGED : string ; /** * The event name for when the ad manager dispatch errors. */ static AD_ERROR : string ; /** * The event name for when an ad playhead crosses first quartile. */ static AD_FIRST_QUARTILE : string ; /** * The event name for when the ad's URL was hit. */ static AD_IMPRESSION : string ; /** * The event name for when the interaction callback for the ad was * triggered. */ static AD_INTERACTION : string ; /** * The event name for when the ad changes from or to linear. */ static AD_LINEAR_CHANGED : string ; /** * The event name for when the ad data becomes available. */ static AD_LOADED : string ; /** * The event name for when the ad's metadata becomes available. */ static AD_METADATA : string ; /** * The event name for when an ad playhead crosses midpoint. */ static AD_MIDPOINT : string ; /** * The event name for when the ad was muted. */ static AD_MUTED : string ; /** * The event name for when the ad was paused. */ static AD_PAUSED : string ; /** * The event name for when there is an update to the current ad's progress. */ static AD_PROGRESS : string ; /** * The event name for when the ad display encountered a recoverable * error. */ static AD_RECOVERABLE_ERROR : string ; /** * The event name for when the ad was resumed after a pause. */ static AD_RESUMED : string ; /** * The event name for when an ad is skipped by the user.. */ static AD_SKIPPED : string ; /** * The event name for when the ad's skip status changes * (usually it becomes skippable when it wasn't before). */ static AD_SKIP_STATE_CHANGED : string ; /** * The event name for when an ad has started playing. */ static AD_STARTED : string ; /** * The event name for when an ad has finished playing * (played all the way through, was skipped, or was unable to proceed * due to an error). */ static AD_STOPPED : string ; /** * The event name for when an ad playhead crosses third quartile. */ static AD_THIRD_QUARTILE : string ; /** * The event name for when the ad volume has changed. */ static AD_VOLUME_CHANGED : string ; /** * The event name for when all the ads were completed. */ static ALL_ADS_COMPLETED : string ; /** * The event name for when the ad's cue points (start/end markers) * have changed. */ static CUEPOINTS_CHANGED : string ; /** * The event name for when the native IMA ad manager object has * loaded and become available. */ static IMA_AD_MANAGER_LOADED : string ; /** * The event name for when the native IMA stream manager object has * loaded and become available. */ static IMA_STREAM_MANAGER_LOADED : string ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.cast { class CastProxy extends shaka.util.FakeEventTarget implements shaka.util.IDestroyable { private noStructuralTyping_shaka_cast_CastProxy : any; constructor (video : HTMLMediaElement , player : shaka.Player , receiverAppId : string , androidReceiverCompatible : boolean ) ; canCast ( ) : boolean ; cast ( ) : Promise < any > ; changeReceiverId (newAppId : string , newCastAndroidReceiver ? : boolean ) : any ; /** * Destroys the proxy and the underlying local Player. * @param forceDisconnect If true, force the receiver app to shut down by disconnecting. Does nothing if not connected. */ destroy (forceDisconnect ? : boolean ) : Promise < any > ; /** * Force the receiver app to shut down by disconnecting. */ forceDisconnect ( ) : any ; /** * Get a proxy for the Player that delegates to local and remote Player * objects as appropriate. */ getPlayer ( ) : shaka.Player ; /** * Get a proxy for the video element that delegates to local and remote video * elements as appropriate. */ getVideo ( ) : HTMLMediaElement ; isCasting ( ) : boolean ; receiverName ( ) : string ; /** * Set application-specific data. * @param appData Application-specific data to relay to the receiver. */ setAppData (appData : object | null ) : any ; /** * Show a dialog where user can choose to disconnect from the cast connection. */ suggestDisconnect ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.cast { /** * A receiver to communicate between the Chromecast-hosted player and the * sender application. */ class CastReceiver extends shaka.util.FakeEventTarget implements shaka.util.IDestroyable { private noStructuralTyping_shaka_cast_CastReceiver : any; /** * A receiver to communicate between the Chromecast-hosted player and the * sender application. */ constructor (video : HTMLMediaElement , player : shaka.Player , appDataCallback ? : (a : object | null ) => any , contentIdCallback ? : (a : string ) => string ) ; /** * Clear all Cast content metadata. * Should be called from an appDataCallback. */ clearContentMetadata ( ) : any ; /** * Destroys the underlying Player, then terminates the cast receiver app. */ destroy ( ) : Promise < any > ; isConnected ( ) : boolean ; isIdle ( ) : boolean ; /** * Set the Cast content's artist. * Also sets the metadata type to music. * Should be called from an appDataCallback. */ setContentArtist (artist : string ) : any ; /** * Set the Cast content's thumbnail image. * Should be called from an appDataCallback. */ setContentImage (imageUrl : string ) : any ; /** * Set all Cast content metadata, as defined by the Cast SDK. * Should be called from an appDataCallback. * For a simpler way to set basic metadata, see: * - setContentTitle() * - setContentImage() * - setContentArtist() * @param metadata A Cast metadata object, one of: - https://developers.google.com/cast/docs/reference/messages#GenericMediaMetadata - https://developers.google.com/cast/docs/reference/messages#MovieMediaMetadata - https://developers.google.com/cast/docs/reference/messages#TvShowMediaMetadata - https://developers.google.com/cast/docs/reference/messages#MusicTrackMediaMetadata */ setContentMetadata (metadata : object | null ) : any ; /** * Set the Cast content's title. * Should be called from an appDataCallback. */ setContentTitle (title : string ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.cea { /** * CEA-X08 captions decoder. */ class CeaDecoder implements shaka.extern.ICaptionDecoder { private noStructuralTyping_shaka_cea_CeaDecoder : any; clear ( ) : any ; decode ( ) : shaka.extern.ICaptionDecoder.ClosedCaption [] ; extract (userDataSeiMessage : Uint8Array , pts : number ) : any ; getStreams ( ) : string [] ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.cea { /** * MPEG4 stream parser used for extracting 708 closed captions data. */ class Mp4CeaParser implements shaka.extern.ICeaParser { private noStructuralTyping_shaka_cea_Mp4CeaParser : any; init (initSegment : ArrayBuffer | ArrayBufferView ) : any ; parse (mediaSegment : ArrayBuffer | ArrayBufferView ) : shaka.extern.ICeaParser.CaptionPacket [] ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.cea { /** * MPEG TS CEA parser. */ class TsCeaParser implements shaka.extern.ICeaParser { private noStructuralTyping_shaka_cea_TsCeaParser : any; init (initSegment : ArrayBuffer | ArrayBufferView ) : any ; parse (mediaSegment : ArrayBuffer | ArrayBufferView ) : shaka.extern.ICeaParser.CaptionPacket [] ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.config { enum AutoShowText { ALWAYS = 1.0 , IF_PREFERRED_TEXT_LANGUAGE = 2.0 , IF_SUBTITLES_MAY_BE_NEEDED = 3.0 , NEVER = 0.0 , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.config { enum CodecSwitchingStrategy { RELOAD = 'reload' , SMOOTH = 'smooth' , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.dash { /** * Creates a new DASH parser. */ class DashParser implements shaka.extern.ManifestParser { private noStructuralTyping_shaka_dash_DashParser : any; banLocation (uri : any ) : any ; configure (config : shaka.extern.ManifestConfiguration , isPreloadFn ? : ( ) => boolean ) : any ; onExpirationUpdated (sessionId : any , expiration : any ) : any ; onInitialVariantChosen (variant : any ) : any ; setMediaElement (mediaElement : any ) : any ; start (uri : any , playerInterface : any ) : any ; stop ( ) : any ; update ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka { class dependencies { private noStructuralTyping_shaka_dependencies : any; /** * Registers a new dependency. * @param key which is used for retrieving a dependency * @param dep a dependency */ static add (key : shaka.dependencies.Allowed , dep : any ) : any ; /** * Check if we have a dependency for the key. * @param key key */ static has (key : shaka.dependencies.Allowed ) : boolean ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.dependencies { enum Allowed { ISOBoxer = 'ISOBoxer' , muxjs = 'muxjs' , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.hls { /** * HLS parser. */ class HlsParser implements shaka.extern.ManifestParser { private noStructuralTyping_shaka_hls_HlsParser : any; banLocation (uri : any ) : any ; configure (config : shaka.extern.ManifestConfiguration , isPreloadFn ? : ( ) => boolean ) : any ; onExpirationUpdated (sessionId : any , expiration : any ) : any ; onInitialVariantChosen (variant : any ) : any ; setMediaElement (mediaElement : any ) : any ; start (uri : any , playerInterface : any ) : any ; stop ( ) : any ; update ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.lcevc { class Dec implements shaka.util.IReleasable { private noStructuralTyping_shaka_lcevc_Dec : any; constructor (media : HTMLVideoElement | null , canvas : HTMLCanvasElement | null , lcevcConfig : shaka.extern.LcevcConfiguration ) ; /** * Close LCEVC Decoder. */ release ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.media { /** * A set of variants that we want to adapt between. */ class AdaptationSet { private noStructuralTyping_shaka_media_AdaptationSet : any; constructor (root : shaka.extern.Variant , candidates ? : Iterable < shaka.extern.Variant > , compareCodecs ? : boolean ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.media { /** * An adaptation set criteria is a unit of logic that can take a set of * variants and return a subset of variants that should (and can) be * adapted between. */ interface AdaptationSetCriteria { /** * Sets the AdaptationSetCriteria configuration. */ configure (config : shaka.media.AdaptationSetCriteria.Configuration ) : any ; /** * Take a set of variants, and return a subset of variants that can be * adapted between. */ create (variants : shaka.extern.Variant [] ) : shaka.media.AdaptationSet ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.media.AdaptationSetCriteria { type Configuration = { audioCodec : string , audioLabel : string , channelCount : number , codecSwitchingStrategy : shaka.config.CodecSwitchingStrategy , hdrLevel : string , language : string , role : string , spatialAudio : boolean , videoLabel : string , videoLayout : string } ; } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.media.AdaptationSetCriteria { /** * A factory for creating the AdaptationSetCriteria. */ type Factory = ( ) => shaka.media.AdaptationSetCriteria ; } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.media { /** * Closed Caption Parser provides all operations for parsing the closed captions * embedded in Dash videos streams. */ class ClosedCaptionParser implements shaka.media.IClosedCaptionParser { private noStructuralTyping_shaka_media_ClosedCaptionParser : any; /** * Closed Caption Parser provides all operations for parsing the closed captions * embedded in Dash videos streams. */ constructor (mimeType : string ) ; static findDecoder ( ) : ( shaka.extern.CaptionDecoderPlugin ) | null ; static findParser (mimeType : string ) : ( shaka.extern.CeaParserPlugin ) | null ; static registerDecoder (plugin : shaka.extern.CaptionDecoderPlugin ) : any ; static registerParser (mimeType : string , plugin : shaka.extern.CeaParserPlugin ) : any ; static unregisterDecoder ( ) : any ; static unregisterParser (mimeType : string ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.media { /** * The IClosedCaptionParser defines the interface to provide all operations for * parsing the closed captions embedded in Dash videos streams. * TODO: Remove this interface and move method definitions * directly to ClosedCaptionParser. */ interface IClosedCaptionParser { } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.media { /** * Creates an InitSegmentReference, which provides the location to an * initialization segment. */ class InitSegmentReference { private noStructuralTyping_shaka_media_InitSegmentReference : any; constructor (uris : ( ) => string [] , startByte : number , endByte : number | null , mediaQuality ? : null | shaka.extern.MediaQualityInfo , timescale ? : null | number , segmentData ? : null | ArrayBuffer | ArrayBufferView , aesKey ? : shaka.extern.aesKey | null ) ; /** * Returns the offset from the start of the resource to the end of the * segment, inclusive. A value of null indicates that the segment extends * to the end of the resource. */ getEndByte ( ) : number | null ; /** * Returns the offset from the start of the resource to the * start of the segment. */ getStartByte ( ) : number ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.media { class ManifestParser { private noStructuralTyping_shaka_media_ManifestParser : any; /** * Registers a manifest parser by file extension. * @param extension The file extension of the manifest. * @param parserFactory The factory used to create parser instances. */ static registerParserByExtension (extension : string , parserFactory : shaka.extern.ManifestParser.Factory ) : any ; /** * Registers a manifest parser by MIME type. * @param mimeType The MIME type of the manifest. * @param parserFactory The factory used to create parser instances. */ static registerParserByMime (mimeType : string , parserFactory : shaka.extern.ManifestParser.Factory ) : any ; /** * Unregisters a manifest parser by MIME type. * @param mimeType The MIME type of the manifest. */ static unregisterParserByMime (mimeType : string ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.media.ManifestParser { enum AccessibilityPurpose { HARD_OF_HEARING = 'hard of hearing' , VISUALLY_IMPAIRED = 'visually impaired' , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.media { /** * A meta-SegmentIndex composed of multiple other SegmentIndexes. * Used in constructing multi-Period Streams for DASH. */ class MetaSegmentIndex extends shaka.media.SegmentIndex implements Iterable < shaka.media.SegmentReference > { private noStructuralTyping_shaka_media_MetaSegmentIndex : any; /** * A meta-SegmentIndex composed of multiple other SegmentIndexes. * Used in constructing multi-Period Streams for DASH. */ constructor ( ) ; //!! Symbol.iterator inserted by Clutz for Iterable subtype [Symbol.iterator](): Iterator < shaka.media.SegmentReference > ; evict (time : number ) : any ; find (time : any ) : any ; fit (windowStart : number , windowEnd : number | null , c ? : boolean ) : any ; forEachTopLevelReference (fn : any ) : any ; get (position : any ) : any ; merge (references : any ) : any ; mergeAndEvict (references : shaka.media.SegmentReference [] , windowStart : number ) : any ; offset (offset : number ) : any ; release ( ) : any ; updateEvery (interval : number , updateCallback : ( ) => ( shaka.media.SegmentReference | null ) [] | null ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.media { class PreloadManager extends shaka.util.FakeEventTarget implements shaka.util.IDestroyable { private noStructuralTyping_shaka_media_PreloadManager : any; constructor (assetUri : string , mimeType : string | null , startTime : number | null , playerInterface : any ) ; /** * Releases or stops all non-entrusted resources. */ destroy ( ) : Promise < any > ; /** * Waits for the loading to be finished (or to fail with an error). */ waitForFinish ( ) : Promise < any > ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.media { /** * PresentationTimeline. */ class PresentationTimeline { private noStructuralTyping_shaka_media_PresentationTimeline : any; constructor (presentationStartTime : number | null , presentationDelay : number , autoCorrectDrift ? : boolean ) ; /** * Gets the presentation's segment availability time offset. This should be * only configured for Low Latency Dash. */ getAvailabilityTimeOffset ( ) : number ; /** * Gets the presentation delay in seconds. */ getDelay ( ) : number ; getDuration ( ) : number ; getInitialProgramDateTime ( ) : number | null ; getMaxSegmentDuration ( ) : number ; /** * Gets the end time of the last available segment. */ getMaxSegmentEndTime ( ) : number | null ; getPresentationStartTime ( ) : number | null ; /** * Gets the seek range start time, offset by the given amount. This is used * to ensure that we don't "fall" back out of the seek window while we are * buffering. * @param offset The offset to add to the start time for live streams. */ getSafeSeekRangeStart (offset : number ) : number ; /** * Gets the seek range end. */ getSeekRangeEnd ( ) : number ; /** * Gets the seek range start time. */ getSeekRangeStart ( ) : number ; /** * Gets the presentation's segment availability duration. */ getSegmentAvailabilityDuration ( ) : number ; /** * Gets the presentation's current segment availability end time. Segments * starting after this time should be assumed to be unavailable. */ getSegmentAvailabilityEnd ( ) : number ; /** * Gets the presentation's current segment availability start time. Segments * ending at or before this time should be assumed to be unavailable. */ getSegmentAvailabilityStart ( ) : number ; isInProgress ( ) : boolean ; isLive ( ) : boolean ; /** * Returns if the presentation timeline's start time is locked. */ isStartTimeLocked ( ) : boolean ; /** * Lock the presentation timeline's start time. After this is called, no * further adjustments to presentationStartTime_ will be permitted. * This should be called after all Periods have been parsed, and all calls to * notifySegments() from the initial manifest parse have been made. * Without this, we can get assertion failures in SegmentIndex for certain * DAI content. If DAI adds ad segments to the manifest faster than * real-time, adjustments to presentationStartTime_ can cause availability * windows to jump around on updates. */ lockStartTime ( ) : any ; /** * Gives PresentationTimeline a Stream's maximum segment duration so it can * size and position the segment availability window. This function should be * called once for each Stream (no more, no less), but does not have to be * called if notifySegments() is called instead for a particular stream. * @param maxSegmentDuration The maximum segment duration for a particular stream. */ notifyMaxSegmentDuration (maxSegmentDuration : number ) : any ; /** * Gives PresentationTimeline a Stream's minimum segment start time. */ notifyMinSegmentStartTime (startTime : number ) : any ; /** * Gives PresentationTimeline an startTime and endTime of the period. * This should be only set for Dash. */ notifyPeriodDuration (startTime : number , endTime : number ) : any ; /** * Gives PresentationTimeline an array of segments so it can size and position * the segment availability window, and account for missing segment * information. These segments do not necessarily need to all be from the * same stream. */ notifySegments (references : shaka.media.SegmentReference [] ) : any ; /** * Gives PresentationTimeline a Stream's timeline so it can size and position * the segment availability window, and account for missing segment * information. */ notifyTimeRange (timeline : shaka.media.PresentationTimeline.TimeRange [] , startOffset : number ) : any ; /** * Offsets the segment times by the given amount. * @param offset The number of seconds to offset by. A positive number adjusts the segment times forward. */ offset (offset : number ) : any ; /** * Sets the presentation's segment availability time offset. This should be * only set for Low Latency Dash. * The segments are available earlier for download than the availability start * time, so we can move closer to the live edge. */ setAvailabilityTimeOffset (offset : number ) : any ; /** * Sets the clock offset, which is the difference between the client's clock * and the server's clock, in milliseconds (i.e., serverTime = Date.now() + * clockOffset). * @param offset The clock offset, in ms. */ setClockOffset (offset : number ) : any ; /** * Sets the presentation delay in seconds. */ setDelay (delay : number ) : any ; /** * Sets the presentation's duration. * @param duration The presentation's duration in seconds. Infinity indicates that the presentation continues indefinitely. */ setDuration (duration : number ) : any ; /** * Sets the initial program date time. */ setInitialProgramDateTime (initialProgramDateTime : number ) : any ; /** * Sets the presentation's start time. * @param presentationStartTime The wall-clock time, in seconds, when the presentation started or will start. Only required for live. */ setPresentationStartTime (presentationStartTime : number ) : any ; /** * Sets the presentation's segment availability duration. The segment * availability duration should only be set for live. * @param segmentAvailabilityDuration The presentation's new segment availability duration in seconds. */ setSegmentAvailabilityDuration (segmentAvailabilityDuration : number ) : any ; /** * Sets the presentation's static flag. * @param isStatic If true, the presentation is static, meaning all segments are available at once. */ setStatic (isStatic : boolean ) : any ; /** * Sets the start time of the user-defined seek range. This is only used for * VOD content. */ setUserSeekStart (time : number ) : any ; /** * True if the presentation start time is being used to calculate the live * edge. * Using the presentation start time means that the stream may be subject to * encoder drift. At runtime, we will avoid using the presentation start time * whenever possible. */ usingPresentationStartTime ( ) : boolean ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.media.PresentationTimeline { type TimeRange = { end : number , partialSegments : number , segmentPosition : number , start : number , unscaledStart : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.media { /** * SegmentIndex. */ class SegmentIndex implements shaka.extern.SegmentIndex , shaka.util.IReleasable , Iterable < shaka.media.SegmentReference > { private noStructuralTyping_shaka_media_SegmentIndex : any; /** * SegmentIndex. */ constructor (references : shaka.media.SegmentReference [] ) ; //!! Symbol.iterator inserted by Clutz for Iterable subtype [Symbol.iterator](): Iterator < shaka.media.SegmentReference > ; /** * Removes all SegmentReferences that end before the given time. * @param time The time in seconds. */ evict (time : number ) : any ; find (time : any ) : any ; /** * Drops references that start after windowEnd, or end before windowStart, * and contracts the last reference so that it ends at windowEnd. * Do not call on the last period of a live presentation (unknown duration). * It is okay to call on the other periods of a live presentation, where the * duration is known and another period has been added. * @param isNew Whether this is a new SegmentIndex and we shouldn't update the number of evicted elements. */ fit (windowStart : number , windowEnd : number | null , isNew ? : boolean ) : any ; get (position : any ) : any ; /** * Returns a new iterator that initially points to the segment that contains * the given time, or the nearest independent segment before it. * Like the normal iterator, next() must be called first to get to the first * element. Returns null if we do not find a segment at the * requested time. * The first segment returned by the iterator _MUST_ be an independent * segment. Assumes that only partial references can be dependent, based on * RFC 8216 rev 13, section 8.1: "Each (non-Partial) Media Segment in a Media * Playlist will contain at least one independent frame." */ getIteratorForTime (time : number , allowNonIndependent ? : boolean , reverse ? : boolean ) : shaka.media.SegmentIterator | null ; getNumEvicted ( ) : any ; getNumReferences ( ) : any ; /** * Marks the index as immutable. Segments cannot be added or removed after * this point. This doesn't affect the references themselves. This also * makes the destroy/release methods do nothing. * This is mainly for testing. */ markImmutable ( ) : any ; /** * Merges the given SegmentReferences and evicts the ones that end before the * given time. Supports extending the original references only. * Will not replace old references or interleave new ones. * Used, for example, by the DASH and HLS parser, where manifests may not list * all available references, so we must keep available references in memory to * fill the availability window. * @param references The list of SegmentReferences, which must be sorted first by their start times (ascending) and second by their end times (ascending). * @param windowStart The start of the availability window to filter out the references that are no longer available. */ mergeAndEvict (references : shaka.media.SegmentReference [] , windowStart : number ) : any ; /** * Offset all segment references by a fixed amount. * @param offset The amount to add to each segment's start and end times. */ offset (offset : number ) : any ; release ( ) : any ; /** * Updates the references every so often. Stops when the references list * returned by the callback is null. * @param interval The interval in seconds. */ updateEvery (interval : number , updateCallback : ( ) => ( shaka.media.SegmentReference | null ) [] | null ) : any ; /** * Create a SegmentIndex for a single segment of the given start time and * duration at the given URIs. */ static forSingleSegment (startTime : number , duration : number , uris : string [] ) : shaka.media.SegmentIndex ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.media { /** * An iterator over a SegmentIndex's references. */ class SegmentIterator implements Iterator < shaka.media.SegmentReference | null > { private noStructuralTyping_shaka_media_SegmentIterator : any; /** * An iterator over a SegmentIndex's references. */ constructor (segmentIndex : shaka.media.SegmentIndex | null , index : number , partialSegmentIndex : number , reverse : boolean ) ; current ( ) : shaka.media.SegmentReference | null ; currentPosition ( ) : number ; next ( ) : any ; resetToLastIndependent ( ) : any ; setReverse (reverse : boolean ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.media.SegmentPrefetch { type FetchDispatcher = (a : shaka.media.InitSegmentReference | shaka.media.SegmentReference , b : shaka.extern.Stream , c ? : ( (a : ArrayBuffer | ArrayBufferView ) => Promise < any > ) | null ) => shaka.net.NetworkingEngine.PendingRequest ; } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.media { /** * SegmentReference provides the start time, end time, and location to a media * segment. */ class SegmentReference { private noStructuralTyping_shaka_media_SegmentReference : any; constructor (startTime : number , endTime : number , uris : ( ) => string [] , startByte : number , endByte : number | null , initSegmentReference : shaka.media.InitSegmentReference | null , timestampOffset : number , appendWindowStart : number , appendWindowEnd : number , partialReferences ? : shaka.media.SegmentReference [] , tilesLayout ? : string | null , tileDuration ? : number | null , syncTime ? : number | null , status ? : shaka.media.SegmentReference.Status , aesKey ? : shaka.extern.aesKey | null , allPartialSegments ? : boolean ) ; /** * Returns the offset from the start of the resource to the end of the * segment, inclusive. A value of null indicates that the segment extends to * the end of the resource. */ getEndByte ( ) : number | null ; /** * Returns the segment's end time in seconds. */ getEndTime ( ) : number ; /** * Return the segment data. */ getSegmentData ( ) : ArrayBuffer | ArrayBufferView | null ; /** * Returns the offset from the start of the resource to the * start of the segment. */ getStartByte ( ) : number ; /** * Returns the segment's start time in seconds. */ getStartTime ( ) : number ; /** * Returns the segment's status. */ getStatus ( ) : shaka.media.SegmentReference.Status ; /** * Returns the segment's thumbnail sprite. */ getThumbnailSprite ( ) : shaka.media.SegmentReference.ThumbnailSprite | null ; /** * Returns the segment's explicit tile duration. * Only defined in image segments. */ getTileDuration ( ) : number | null ; /** * Returns the segment's tiles layout. Only defined in image segments. */ getTilesLayout ( ) : string | null ; /** * Creates and returns the URIs of the resource containing the segment. */ getUris ( ) : string [] ; /** * Returns true if the segment has a byterange optimization. */ hasByterangeOptimization ( ) : boolean ; /** * Returns true if the segment is independent. */ isIndependent ( ) : boolean ; /** * Returns true if reference as being the last part of the full segment. */ isLastPartial ( ) : boolean ; /** * Returns true if the segment is partial. */ isPartial ( ) : boolean ; /** * Returns true if the segment is preloaded. */ isPreload ( ) : boolean ; /** * Mark the reference as byterange optimization. * The "byterange optimization" means that it is playable using MP4 low * latency streaming with chunked data. */ markAsByterangeOptimization ( ) : any ; /** * Mark the reference as being the last part of the full segment */ markAsLastPartial ( ) : any ; /** * Mark the reference as non-independent. */ markAsNonIndependent ( ) : any ; /** * Mark the reference as partial. */ markAsPartial ( ) : any ; /** * Mark the reference as preload. */ markAsPreload ( ) : any ; /** * Mark the reference as unavailable. */ markAsUnavailable ( ) : any ; /** * Offset the segment reference by a fixed amount. * @param offset The amount to add to the segment's start and end times. */ offset (offset : number ) : any ; /** * Set the segment data. */ setSegmentData (segmentData : ArrayBuffer | ArrayBufferView ) : any ; /** * Set the segment's thumbnail sprite. */ setThumbnailSprite (thumbnailSprite : shaka.media.SegmentReference.ThumbnailSprite ) : any ; /** * Sync this segment against a particular sync time that will serve as "0" in * the presentation timeline. */ syncAgainst (lowestSyncTime : number ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.media.SegmentReference { /** * Rather than using booleans to communicate what the state of the reference, * we have this enum. */ /** * Rather than using booleans to communicate what the state of the reference, * we have this enum. */ enum Status { AVAILABLE = 0.0 , MISSING = 2.0 , UNAVAILABLE = 1.0 , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.media.SegmentReference { type ThumbnailSprite = { height : number , positionX : number , positionY : number , width : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.mss { /** * Creates a new MSS parser. */ class MssParser implements shaka.extern.ManifestParser { private noStructuralTyping_shaka_mss_MssParser : any; banLocation (uri : any ) : any ; configure (config : shaka.extern.ManifestConfiguration , isPreloadFn ? : ( ) => boolean ) : any ; onExpirationUpdated (sessionId : any , expiration : any ) : any ; onInitialVariantChosen (variant : any ) : any ; setMediaElement (mediaElement : HTMLMediaElement | null ) : any ; start (uri : any , playerInterface : any ) : any ; stop ( ) : any ; update ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.net { class DataUriPlugin { private noStructuralTyping_shaka_net_DataUriPlugin : any; static parse (uri : string , request : shaka.extern.Request , requestType : shaka.net.NetworkingEngine.RequestType , progressUpdated : shaka.extern.ProgressUpdated ) : shaka.extern.IAbortableOperation < any > ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.net { class HttpFetchPlugin { private noStructuralTyping_shaka_net_HttpFetchPlugin : any; /** * Determine if the Fetch API is supported in the browser. Note: this is * deliberately exposed as a method to allow the client app to use the same * logic as Shaka when determining support. */ static isSupported ( ) : boolean ; static parse (uri : string , request : shaka.extern.Request , requestType : shaka.net.NetworkingEngine.RequestType , progressUpdated : shaka.extern.ProgressUpdated , headersReceived : shaka.extern.HeadersReceived , config : shaka.extern.SchemePluginConfig ) : shaka.extern.IAbortableOperation < any > ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.net { class HttpXHRPlugin { private noStructuralTyping_shaka_net_HttpXHRPlugin : any; static parse (uri : string , request : shaka.extern.Request , requestType : shaka.net.NetworkingEngine.RequestType , progressUpdated : shaka.extern.ProgressUpdated , headersReceived : shaka.extern.HeadersReceived , config : shaka.extern.SchemePluginConfig ) : shaka.extern.IAbortableOperation < any > ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.net { /** * NetworkingEngine wraps all networking operations. This accepts plugins that * handle the actual request. A plugin is registered using registerScheme. * Each scheme has at most one plugin to handle the request. */ class NetworkingEngine extends shaka.util.FakeEventTarget implements shaka.util.IDestroyable { private noStructuralTyping_shaka_net_NetworkingEngine : any; /** * NetworkingEngine wraps all networking operations. This accepts plugins that * handle the actual request. A plugin is registered using registerScheme. * Each scheme has at most one plugin to handle the request. */ constructor (onProgressUpdated ? : shaka.net.NetworkingEngine.onProgressUpdated , onHeadersReceived ? : shaka.net.NetworkingEngine.OnHeadersReceived , onDownloadCompleted ? : shaka.net.NetworkingEngine.OnDownloadCompleted , onDownloadFailed ? : shaka.net.NetworkingEngine.OnDownloadFailed , onRequest ? : shaka.net.NetworkingEngine.OnRequest , onRetry ? : shaka.net.NetworkingEngine.OnRetry , onResponse ? : shaka.net.NetworkingEngine.OnResponse ) ; /** * Clears all request filters. */ clearAllRequestFilters ( ) : any ; /** * Clears all response filters. */ clearAllResponseFilters ( ) : any ; /** * Clears Common Access Token map. */ clearCommonAccessTokenMap ( ) : any ; destroy ( ) : Promise < any > ; /** * Registers a new request filter. All filters are applied in the order they * are registered. */ registerRequestFilter (filter : shaka.extern.RequestFilter ) : any ; /** * Registers a new response filter. All filters are applied in the order they * are registered. */ registerResponseFilter (filter : shaka.extern.ResponseFilter ) : any ; /** * Makes a network request and returns the resulting data. */ request (type : shaka.net.NetworkingEngine.RequestType , request : shaka.extern.Request , context ? : shaka.extern.RequestContext ) : shaka.net.NetworkingEngine.PendingRequest ; setForceHTTP (forceHTTP : boolean ) : any ; setForceHTTPS (forceHTTPS : boolean ) : any ; /** * Removes a request filter. */ unregisterRequestFilter (filter : shaka.extern.RequestFilter ) : any ; /** * Removes a response filter. */ unregisterResponseFilter (filter : shaka.extern.ResponseFilter ) : any ; /** * Gets a copy of the default retry parameters. */ static defaultRetryParameters ( ) : shaka.extern.RetryParameters ; /** * Makes a simple network request for the given URIs. */ static makeRequest (uris : string [] , retryParams : shaka.extern.RetryParameters , streamDataCallback ? : ( (a : ArrayBuffer | ArrayBufferView ) => Promise < any > ) | null ) : shaka.extern.Request ; /** * Registers a scheme plugin. This plugin will handle all requests with the * given scheme. If a plugin with the same scheme already exists, it is * replaced, unless the existing plugin is of higher priority. * If no priority is provided, this defaults to the highest priority of * APPLICATION. */ static registerScheme (scheme : string , plugin : shaka.extern.SchemePlugin , priority ? : number , progressSupport ? : boolean ) : any ; /** * Removes a scheme plugin. */ static unregisterScheme (scheme : string ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.net.NetworkingEngine { /** * A more advanced form of the RequestType structure, meant to describe * sub-types of basic request types. * For example, an INIT_SEGMENT is a sub-type of SEGMENT. * This is meant to allow for more specificity to be added to the request type * data, without breaking backwards compatibility. */ /** * A more advanced form of the RequestType structure, meant to describe * sub-types of basic request types. * For example, an INIT_SEGMENT is a sub-type of SEGMENT. * This is meant to allow for more specificity to be added to the request type * data, without breaking backwards compatibility. */ enum AdvancedRequestType { INIT_SEGMENT = 0.0 , INTERSTITIAL_AD_URL = 12.0 , INTERSTITIAL_ASSET_LIST = 11.0 , MASTER_PLAYLIST = 3.0 , MEDIATAILOR_SESSION_INFO = 7.0 , MEDIATAILOR_STATIC_RESOURCE = 9.0 , MEDIATAILOR_TRACKING_EVENT = 10.0 , MEDIATAILOR_TRACKING_INFO = 8.0 , MEDIA_PLAYLIST = 2.0 , MEDIA_SEGMENT = 1.0 , MPD = 4.0 , MPD_PATCH = 6.0 , MSS = 5.0 , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.net.NetworkingEngine { /** * A wrapper class for the number of bytes remaining to be downloaded for the * request. * Instead of using PendingRequest directly, this class is needed to be sent to * plugin as a parameter, and a Promise is returned, before PendingRequest is * created. */ class NumBytesRemainingClass { private noStructuralTyping_shaka_net_NetworkingEngine_NumBytesRemainingClass : any; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.net.NetworkingEngine { type OnDownloadCompleted = (a : shaka.extern.Request , b : shaka.extern.Response ) => any ; } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.net.NetworkingEngine { type OnDownloadFailed = (a : shaka.extern.Request , b : shaka.util.Error | null , c : number , d : boolean ) => any ; } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.net.NetworkingEngine { type OnHeadersReceived = (a : { [ key: string ]: string } , b : shaka.extern.Request , c : shaka.net.NetworkingEngine.RequestType ) => any ; } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.net.NetworkingEngine { type OnRequest = (a : shaka.net.NetworkingEngine.RequestType , b : shaka.extern.Request , c : shaka.extern.RequestContext | undefined ) => any ; } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.net.NetworkingEngine { type OnResponse = (a : shaka.net.NetworkingEngine.RequestType , b : shaka.extern.Response , c : shaka.extern.RequestContext | undefined ) => any ; } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.net.NetworkingEngine { type OnRetry = (a : shaka.net.NetworkingEngine.RequestType , b : shaka.extern.RequestContext | undefined , c : string , d : string ) => any ; } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.net.NetworkingEngine { /** * A pending network request. This can track the current progress of the * download, and allows the request to be aborted if the network is slow. */ class PendingRequest extends shaka.util.AbortableOperation < any > implements shaka.extern.IAbortableOperation < any > { private noStructuralTyping_shaka_net_NetworkingEngine_PendingRequest : any; /** * A pending network request. This can track the current progress of the * download, and allows the request to be aborted if the network is slow. */ constructor (promise : Promise < any > , onAbort : shaka.extern.CreateSegmentIndexFunction , numBytesRemainingObj : shaka.net.NetworkingEngine.NumBytesRemainingClass | null ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.net.NetworkingEngine { /** * Priority level for network scheme plugins. * If multiple plugins are provided for the same scheme, only the * highest-priority one is used. */ /** * Priority level for network scheme plugins. * If multiple plugins are provided for the same scheme, only the * highest-priority one is used. */ enum PluginPriority { APPLICATION = 3.0 , FALLBACK = 1.0 , PREFERRED = 2.0 , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.net.NetworkingEngine { /** * Request types. Allows a filter to decide which requests to read/alter. */ /** * Request types. Allows a filter to decide which requests to read/alter. */ enum RequestType { ADS = 7.0 , APP = 3.0 , CONTENT_STEERING = 8.0 , KEY = 6.0 , LICENSE = 2.0 , MANIFEST = 0.0 , SEGMENT = 1.0 , SERVER_CERTIFICATE = 5.0 , TIMING = 4.0 , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.net.NetworkingEngine { type onProgressUpdated = (a : number , b : number , c : boolean , d ? : shaka.extern.Request ) => any ; } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.offline { class OfflineScheme { private noStructuralTyping_shaka_offline_OfflineScheme : any; static plugin (uri : string , request : shaka.extern.Request , requestType : shaka.net.NetworkingEngine.RequestType , progressUpdated : shaka.extern.ProgressUpdated ) : shaka.extern.IAbortableOperation < any > ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.offline { class Storage implements shaka.util.IDestroyable { private noStructuralTyping_shaka_offline_Storage : any; constructor (player ? : shaka.Player ) ; /** * Sets configuration values for Storage. This is associated with * Player.configure and will change the player instance given at * initialization. * @param config This should either be a field name or an object following the form of {@link shaka.extern.PlayerConfiguration}, where you may omit any field you do not wish to change. * @param value This should be provided if the previous parameter was a string field name. */ configure (config : string | object , value ? : any ) : boolean ; destroy ( ) : Promise < any > ; /** * Return a copy of the current configuration. Modifications of the returned * value will not affect the Storage instance's active configuration. You * must call storage.configure() to make changes. */ getConfiguration ( ) : shaka.extern.PlayerConfiguration ; /** * Return the networking engine that storage is using. If storage was * initialized with a player instance, then the networking engine returned * will be the same as |player.getNetworkingEngine()|. * The returned value will only be null if |destroy| was called before * |getNetworkingEngine|. */ getNetworkingEngine ( ) : shaka.net.NetworkingEngine | null ; /** * Lists all the stored content available. */ list ( ) : Promise < shaka.extern.StoredContent [] > ; /** * Removes the given stored content. This will also attempt to release the * licenses, if any. */ remove (contentUri : string ) : Promise < any > ; /** * Removes any EME sessions that were not successfully removed before. This * returns whether all the sessions were successfully removed. */ removeEmeSessions ( ) : Promise < boolean > ; /** * Stores the given manifest. If the content is encrypted, and encrypted * content cannot be stored on this platform, the Promise will be rejected * with error code 6001, REQUESTED_KEY_SYSTEM_CONFIG_UNAVAILABLE. * Multiple assets can be downloaded at the same time, but note that since * the storage instance has a single networking engine, multiple storage * objects will be necessary if some assets require unique network filters. * This snapshots the storage config at the time of the call, so it will not * honor any changes to config mid-store operation. * @param uri The URI of the manifest to store. * @param appMetadata An arbitrary object from the application that will be stored along-side the offline content. Use this for any application-specific metadata you need associated with the stored content. For details on the data types that can be stored here, please refer to {@link https://bit.ly/StructClone} * @param mimeType The mime type for the content |manifestUri| points to. * @param externalThumbnails The external thumbnails to store along the main content. * @param externalText The external text to store along the main content. */ store (uri : string , appMetadata ? : object , mimeType ? : string | null , externalThumbnails ? : string [] | null , externalText ? : shaka.extern.ExtraText [] | null ) : shaka.extern.IAbortableOperation < any > ; /** * Delete the on-disk storage and all the content it contains. This should not * be done in normal circumstances. Only do it when storage is rendered * unusable, such as by a version mismatch. No business logic will be run, and * licenses will not be released. */ static deleteAll ( ) : Promise < any > ; /** * Gets whether offline storage is supported. Returns true if offline storage * is supported for clear content. Support for offline storage of encrypted * content will not be determined until storage is attempted. */ static support ( ) : boolean ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.offline { /** * StorageMuxer is responsible for managing StorageMechanisms and addressing * cells. The primary purpose of the muxer is to give the caller the correct * cell for the operations they want to perform. * |findActive| will be used when the caller wants a cell that supports * add-operations. This will be used when saving new content to storage. * |findAll| will be used when the caller want to look at all the content * in storage. * |resolvePath| will be used to convert a path (from |findActive| and * |findAll|) into a cell, which it then returns. */ class StorageMuxer implements shaka.util.IDestroyable { private noStructuralTyping_shaka_offline_StorageMuxer : any; /** * Free all resources used by the muxer, mechanisms, and cells. This should * not affect the stored content. */ destroy ( ) : Promise < any > ; /** * Register a storage mechanism for use with the default storage muxer. This * will have no effect on any storage muxer already in main memory. */ static register (name : string , factory : ( ) => shaka.extern.StorageMechanism | null ) : any ; /** * Unregister a storage mechanism for use with the default storage muxer. This * will have no effect on any storage muxer already in main memory. * @param name The name that the storage mechanism was registered under. */ static unregister (name : string ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka { class polyfill { private noStructuralTyping_shaka_polyfill : any; /** * Install all polyfills. */ static installAll ( ) : any ; /** * Registers a new polyfill to be installed. * @param priority An optional number priority. Higher priorities will be executed before lower priority ones. Default is 0. */ static register (polyfill : ( ) => any , priority ? : number ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.polyfill { class Aria { private noStructuralTyping_shaka_polyfill_Aria : any; /** * Install the polyfill if needed. */ static install ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.polyfill { class EncryptionScheme { private noStructuralTyping_shaka_polyfill_EncryptionScheme : any; /** * Install the polyfill if needed. */ static install ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.polyfill { class Fullscreen { private noStructuralTyping_shaka_polyfill_Fullscreen : any; /** * Install the polyfill if needed. */ static install ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.polyfill { class MediaCapabilities { private noStructuralTyping_shaka_polyfill_MediaCapabilities : any; /** * Install the polyfill if needed. */ static install ( ) : any ; /** * A copy of the MediaCapabilities instance, to prevent Safari from * garbage-collecting the polyfilled method on it. We make it public and export * it to ensure that it is not stripped out by the compiler. */ static originalMcap : any | null ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.polyfill { class MediaSource { private noStructuralTyping_shaka_polyfill_MediaSource : any; /** * Install the polyfill if needed. */ static install ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.polyfill { class Orientation { private noStructuralTyping_shaka_polyfill_Orientation : any; /** * Install the polyfill if needed. */ static install ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.polyfill { class PatchedMediaKeysApple { private noStructuralTyping_shaka_polyfill_PatchedMediaKeysApple : any; /** * Installs the polyfill if needed. * @param enableUninstall enables uninstalling the polyfill */ static install (enableUninstall ? : boolean ) : any ; /** * Uninstalls the polyfill if needed and enabled. */ static uninstall ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.polyfill { class PatchedMediaKeysCert { private noStructuralTyping_shaka_polyfill_PatchedMediaKeysCert : any; /** * Installs the polyfill if needed. */ static install ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.polyfill { class PatchedMediaKeysWebkit { private noStructuralTyping_shaka_polyfill_PatchedMediaKeysWebkit : any; /** * Installs the polyfill if needed. */ static install ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.polyfill { class PiPWebkit { private noStructuralTyping_shaka_polyfill_PiPWebkit : any; /** * Install the polyfill if needed. */ static install ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.polyfill { class RandomUUID { private noStructuralTyping_shaka_polyfill_RandomUUID : any; /** * Install the polyfill if needed. */ static install ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.polyfill { class Symbol { private noStructuralTyping_shaka_polyfill_Symbol : any; /** * Install the polyfill if needed. */ static install ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.polyfill { class VTTCue { private noStructuralTyping_shaka_polyfill_VTTCue : any; /** * Install the polyfill if needed. */ static install ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.polyfill { class VideoPlayPromise { private noStructuralTyping_shaka_polyfill_VideoPlayPromise : any; /** * Install the polyfill if needed. */ static install ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.polyfill { class VideoPlaybackQuality { private noStructuralTyping_shaka_polyfill_VideoPlaybackQuality : any; /** * Install the polyfill if needed. */ static install ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text { class Cue { private noStructuralTyping_shaka_text_Cue : any; constructor (startTime : number , endTime : number , payload : string ) ; /** * Text background color as a CSS color, e.g. "#FFFFFF" or "white". */ backgroundColor : string ; /** * The URL of the background image, e.g. "data:[mime type];base64,[data]". */ backgroundImage : string ; /** * The border around this cue as a CSS border. */ border : string ; /** * The number of horizontal and vertical cells into which the Root Container * Region area is divided. */ cellResolution : { columns : number , rows : number } ; /** * Text color as a CSS color, e.g. "#FFFFFF" or "white". */ color : string ; /** * Text direction of the cue. */ direction : shaka.text.Cue.direction ; /** * Vertical alignments of the cues within their extents. * 'BEFORE' means displaying the captions at the top of the text display * container box, 'CENTER' means in the middle, 'AFTER' means at the bottom. */ displayAlign : shaka.text.Cue.displayAlign ; /** * The end time of the cue in seconds, relative to the start of the * presentation. */ endTime : number ; /** * Text font family. */ fontFamily : string ; /** * Text font size in px or em (e.g. '100px'/'100em'). */ fontSize : string ; /** * Text font style. Normal, italic or oblique. */ fontStyle : shaka.text.Cue.fontStyle ; /** * Text font weight. Either normal or bold. */ fontWeight : shaka.text.Cue.fontWeight ; /** * Id of the cue. */ id : string ; /** * If true, this represents a container element that is "above" the main * cues. For example, the and

tags that contain the

tags * in a TTML file. This controls the flow of the final cues; any nested cues * within an "isContainer" cue will be laid out as separate lines. */ isContainer : boolean ; /** * Text letter spacing as a CSS letter-spacing value. */ letterSpacing : string ; /** * The offset from the display box in either number of lines or * percentage depending on the value of lineInterpretation. */ line : number | null ; /** * Line alignment of the cue box. * Start alignment means the cue box’s top side (for horizontal cues), left * side (for vertical growing right), or right side (for vertical growing * left) is aligned at the line. * Center alignment means the cue box is centered at the line. * End alignment The cue box’s bottom side (for horizontal cues), right side * (for vertical growing right), or left side (for vertical growing left) is * aligned at the line. */ lineAlign : shaka.text.Cue.lineAlign ; /** * Whether or not the cue only acts as a line break between two nested cues. * Should only appear in nested cues. */ lineBreak : boolean ; /** * Separation between line areas inside the cue box in px or em * (e.g. '100px'/'100em'). If not specified, this should be no less than * the largest font size applied to the text in the cue. */ lineHeight : string ; /** * The way to interpret line field. (Either as an integer line number or * percentage from the display box). */ lineInterpretation : shaka.text.Cue.lineInterpretation ; /** * Text line padding as a CSS line-padding value. */ linePadding : string ; /** * Nested cues, which should be laid out horizontally in one block. * Top-level cues are blocks, and nested cues are inline elements. * Cues can be nested arbitrarily deeply. */ nestedCues : shaka.text.Cue [] ; /** * Opacity of the cue element, from 0-1. */ opacity : number ; /** * The text payload of the cue. If nestedCues is non-empty, this should be * empty. Top-level block containers should have no payload of their own. */ payload : string ; /** * The indent (in percent) of the cue box in the direction defined by the * writing direction. */ position : number | null ; /** * Position alignment of the cue. */ positionAlign : shaka.text.Cue.positionAlign ; /** * The region to render the cue into. Only supported on top-level cues, * because nested cues are inline elements. */ region : shaka.text.CueRegion | null ; /** * Used to indicate the type of ruby tag that should be used when rendering * the cue. Valid values: ruby, rp, rt. */ rubyTag : string | null ; /** * Size of the cue box (in percents), where 0 means "auto". */ size : number ; /** * The start time of the cue in seconds, relative to the start of the * presentation. */ startTime : number ; /** * Alignment of the text inside the cue box. */ textAlign : shaka.text.Cue.textAlign ; /** * Text combine upright as a CSS text-combine-upright value. */ textCombineUpright : string ; /** * Text decoration. A combination of underline, overline * and line through. Empty array means no decoration. */ textDecoration : shaka.text.Cue.textDecoration [] ; /** * Text shadow color as a CSS text-shadow value. */ textShadow : string ; /** * Text stroke color as a CSS color, e.g. "#FFFFFF" or "white". */ textStrokeColor : string ; /** * Text stroke width as a CSS stroke-width value. */ textStrokeWidth : string ; /** * Whether or not line wrapping should be applied to the cue. */ wrapLine : boolean ; /** * Text writing mode of the cue. */ writingMode : shaka.text.Cue.writingMode ; /** * Parses cue payload, searches for styling entities and, if needed, * modifies original payload and creates nested cues to better represent * styling found in payload. All changes are done in-place. */ static parseCuePayload (cue : shaka.text.Cue , styles ? : Map < string , shaka.text.Cue > ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text.Cue { /** * Default text background color according to * https://w3c.github.io/webvtt/#default-text-background */ /** * Default text background color according to * https://w3c.github.io/webvtt/#default-text-background */ enum defaultTextBackgroundColor { bg_black = 'black' , bg_blue = 'blue' , bg_cyan = 'cyan' , bg_lime = 'lime' , bg_magenta = 'magenta' , bg_red = 'red' , bg_white = 'white' , bg_yellow = 'yellow' , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text.Cue { /** * Default text color according to * https://w3c.github.io/webvtt/#default-text-color */ /** * Default text color according to * https://w3c.github.io/webvtt/#default-text-color */ enum defaultTextColor { black = 'black' , blue = 'blue' , cyan = 'cyan' , lime = 'lime' , magenta = 'magenta' , red = 'red' , white = 'white' , yellow = 'yellow' , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text.Cue { enum direction { HORIZONTAL_LEFT_TO_RIGHT = 'ltr' , HORIZONTAL_RIGHT_TO_LEFT = 'rtl' , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text.Cue { /** * Vertical alignments of the cues within their extents. * 'BEFORE' means displaying at the top of the captions container box, 'CENTER' * means in the middle, 'AFTER' means at the bottom. */ /** * Vertical alignments of the cues within their extents. * 'BEFORE' means displaying at the top of the captions container box, 'CENTER' * means in the middle, 'AFTER' means at the bottom. */ enum displayAlign { AFTER = 'after' , BEFORE = 'before' , CENTER = 'center' , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text.Cue { enum fontStyle { ITALIC = 'italic' , NORMAL = 'normal' , OBLIQUE = 'oblique' , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text.Cue { /** * In CSS font weight can be a number, where 400 is normal and 700 is bold. * Use these values for the enum for consistency. */ /** * In CSS font weight can be a number, where 400 is normal and 700 is bold. * Use these values for the enum for consistency. */ enum fontWeight { BOLD = 700.0 , NORMAL = 400.0 , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text.Cue { enum lineAlign { CENTER = 'center' , END = 'end' , START = 'start' , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text.Cue { enum lineInterpretation { LINE_NUMBER = 0.0 , PERCENTAGE = 1.0 , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text.Cue { enum positionAlign { AUTO = 'auto' , CENTER = 'center' , LEFT = 'line-left' , RIGHT = 'line-right' , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text.Cue { enum textAlign { CENTER = 'center' , END = 'end' , LEFT = 'left' , RIGHT = 'right' , START = 'start' , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text.Cue { enum textDecoration { LINE_THROUGH = 'lineThrough' , OVERLINE = 'overline' , UNDERLINE = 'underline' , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text.Cue { enum writingMode { HORIZONTAL_TOP_TO_BOTTOM = 'horizontal-tb' , VERTICAL_LEFT_TO_RIGHT = 'vertical-lr' , VERTICAL_RIGHT_TO_LEFT = 'vertical-rl' , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text { class CueRegion { private noStructuralTyping_shaka_text_CueRegion : any; /** * The width of the rendering area in heightUnits. */ height : number ; /** * The units (percentage, pixels or lines) the region height is in. */ heightUnits : shaka.text.CueRegion.units ; /** * Region identifier. */ id : string ; /** * The X offset to start the rendering area in percentage (0-100) of this * region width. */ regionAnchorX : number ; /** * The Y offset to start the rendering area in percentage (0-100) of the * region height. */ regionAnchorY : number ; /** * If scroll=UP, it means that cues in the region will be added to the * bottom of the region and will push any already displayed cues in the * region up. Otherwise (scroll=NONE) cues will stay fixed at the location * they were first painted in. */ scroll : shaka.text.CueRegion.scrollMode ; /** * The units (percentage or pixels) the region viewportAnchors are in. */ viewportAnchorUnits : shaka.text.CueRegion.units ; /** * The X offset to start the rendering area in viewportAnchorUnits of the * video width. */ viewportAnchorX : number ; /** * The X offset to start the rendering area in viewportAnchorUnits of the * video height. */ viewportAnchorY : number ; /** * The width of the rendering area in widthUnits. */ width : number ; /** * The units (percentage or pixels) the region width is in. */ widthUnits : shaka.text.CueRegion.units ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text.CueRegion { enum scrollMode { NONE = '' , UP = 'up' , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text.CueRegion { enum units { LINES = 2.0 , PERCENTAGE = 1.0 , PX = 0.0 , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text { /** * LRC file format: https://en.wikipedia.org/wiki/LRC_(file_format) */ class LrcTextParser implements shaka.extern.TextParser { private noStructuralTyping_shaka_text_LrcTextParser : any; parseInit (data : any ) : any ; parseMedia (data : any , time : any ) : any ; setManifestType (manifestType : any ) : any ; setSequenceMode (sequenceMode : any ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text { class Mp4TtmlParser implements shaka.extern.TextParser { private noStructuralTyping_shaka_text_Mp4TtmlParser : any; parseInit (data : any ) : any ; parseMedia (data : any , time : any , uri : any ) : any ; setManifestType (manifestType : any ) : any ; setSequenceMode (sequenceMode : any ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text { class Mp4VttParser implements shaka.extern.TextParser { private noStructuralTyping_shaka_text_Mp4VttParser : any; parseInit (data : any ) : any ; parseMedia (data : any , time : any ) : any ; setManifestType (manifestType : any ) : any ; setSequenceMode (sequenceMode : any ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text { class SbvTextParser implements shaka.extern.TextParser { private noStructuralTyping_shaka_text_SbvTextParser : any; parseInit (data : any ) : any ; parseMedia (data : any , time : any ) : any ; setManifestType (manifestType : any ) : any ; setSequenceMode (sequenceMode : any ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text { /** * A text displayer plugin using the browser's native VTTCue interface. */ class SimpleTextDisplayer implements shaka.extern.TextDisplayer { private noStructuralTyping_shaka_text_SimpleTextDisplayer : any; /** * A text displayer plugin using the browser's native VTTCue interface. */ constructor (video : HTMLMediaElement | null , label : string ) ; append (cues : any ) : any ; configure (config : any ) : any ; destroy ( ) : any ; enableTextDisplayer ( ) : any ; isTextVisible ( ) : any ; remove (start : any , end : any ) : any ; setTextLanguage (language : any ) : any ; setTextVisibility (on : any ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text { class SrtTextParser implements shaka.extern.TextParser { private noStructuralTyping_shaka_text_SrtTextParser : any; parseInit (data : any ) : any ; parseMedia (data : any , time : any , uri : any ) : any ; setManifestType (manifestType : any ) : any ; setSequenceMode (sequenceMode : any ) : any ; /** * Convert a SRT format to WebVTT */ static srt2webvtt (data : string ) : string ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text { /** * Documentation: http://moodub.free.fr/video/ass-specs.doc * https://en.wikipedia.org/wiki/SubStation_Alpha */ class SsaTextParser implements shaka.extern.TextParser { private noStructuralTyping_shaka_text_SsaTextParser : any; parseInit (data : any ) : any ; parseMedia (data : any , time : any ) : any ; setManifestType (manifestType : any ) : any ; setSequenceMode (sequenceMode : any ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text { /** * A stub text displayer plugin that does nothing */ class StubTextDisplayer implements shaka.extern.TextDisplayer { private noStructuralTyping_shaka_text_StubTextDisplayer : any; append (cues : any ) : any ; configure (config : any ) : any ; destroy ( ) : any ; enableTextDisplayer ( ) : any ; isTextVisible ( ) : any ; remove (start : any , end : any ) : any ; setTextLanguage (language : any ) : any ; setTextVisibility (on : any ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text { class TextEngine implements shaka.util.IDestroyable { private noStructuralTyping_shaka_text_TextEngine : any; constructor (displayer : shaka.extern.TextDisplayer | null ) ; destroy ( ) : Promise < any > ; static findParser (mimeType : any ) : ( shaka.extern.TextParserPlugin ) | null ; static registerParser (mimeType : string , plugin : shaka.extern.TextParserPlugin ) : any ; static unregisterParser (mimeType : string ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text { class TtmlTextParser implements shaka.extern.TextParser { private noStructuralTyping_shaka_text_TtmlTextParser : any; parseInit (data : any ) : any ; parseMedia (data : any , time : any , uri : any , images : any ) : any ; setManifestType (manifestType : any ) : any ; setSequenceMode (sequenceMode : any ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text { /** * The text displayer plugin for the Shaka Player UI. Can also be used directly * by providing an appropriate container element. */ class UITextDisplayer implements shaka.extern.TextDisplayer { private noStructuralTyping_shaka_text_UITextDisplayer : any; /** * The text displayer plugin for the Shaka Player UI. Can also be used directly * by providing an appropriate container element. */ constructor (video : HTMLMediaElement | null , videoContainer : HTMLElement | null ) ; append (cues : any ) : any ; configure (config : any ) : any ; destroy ( ) : any ; enableTextDisplayer ( ) : any ; isTextVisible ( ) : any ; remove (start : any , end : any ) : any ; setTextLanguage (language : any ) : any ; setTextVisibility (on : any ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text { class VttTextParser implements shaka.extern.TextParser { private noStructuralTyping_shaka_text_VttTextParser : any; parseInit (data : any ) : any ; parseMedia (data : any , time : any ) : any ; setManifestType (manifestType : any ) : any ; setSequenceMode (sequenceMode : any ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.text { class WebVttGenerator { private noStructuralTyping_shaka_text_WebVttGenerator : any; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.transmuxer { class AacTransmuxer implements shaka.extern.Transmuxer { private noStructuralTyping_shaka_transmuxer_AacTransmuxer : any; constructor (mimeType : string ) ; convertCodecs (contentType : any , mimeType : any ) : any ; destroy ( ) : any ; getOriginalMimeType ( ) : any ; /** * Check if the mime type and the content type is supported. */ isSupported (mimeType : string , contentType ? : string ) : boolean ; transmux (data : any , stream : any , reference : any , duration : any ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.transmuxer { class Ac3Transmuxer implements shaka.extern.Transmuxer { private noStructuralTyping_shaka_transmuxer_Ac3Transmuxer : any; constructor (mimeType : string ) ; convertCodecs (contentType : any , mimeType : any ) : any ; destroy ( ) : any ; getOriginalMimeType ( ) : any ; /** * Check if the mime type and the content type is supported. */ isSupported (mimeType : string , contentType ? : string ) : boolean ; transmux (data : any , stream : any , reference : any , duration : any ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.transmuxer { class Ec3Transmuxer implements shaka.extern.Transmuxer { private noStructuralTyping_shaka_transmuxer_Ec3Transmuxer : any; constructor (mimeType : string ) ; convertCodecs (contentType : any , mimeType : any ) : any ; destroy ( ) : any ; getOriginalMimeType ( ) : any ; /** * Check if the mime type and the content type is supported. */ isSupported (mimeType : string , contentType ? : string ) : boolean ; transmux (data : any , stream : any , reference : any , duration : any ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.transmuxer { class Mp3Transmuxer implements shaka.extern.Transmuxer { private noStructuralTyping_shaka_transmuxer_Mp3Transmuxer : any; constructor (mimeType : string ) ; convertCodecs (contentType : any , mimeType : any ) : any ; destroy ( ) : any ; getOriginalMimeType ( ) : any ; /** * Check if the mime type and the content type is supported. */ isSupported (mimeType : string , contentType ? : string ) : boolean ; transmux (data : any , stream : any , reference : any , duration : any ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.transmuxer { class MpegTsTransmuxer implements shaka.extern.Transmuxer { private noStructuralTyping_shaka_transmuxer_MpegTsTransmuxer : any; constructor (mimeType : string ) ; convertCodecs (contentType : any , mimeType : any ) : any ; destroy ( ) : any ; getOriginalMimeType ( ) : any ; /** * Check if the mime type and the content type is supported. */ isSupported (mimeType : string , contentType ? : string ) : boolean ; transmux (data : any , stream : any , reference : any , duration : any , contentType : any ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.transmuxer { class MssTransmuxer implements shaka.extern.Transmuxer { private noStructuralTyping_shaka_transmuxer_MssTransmuxer : any; constructor (mimeType : string ) ; convertCodecs (contentType : any , mimeType : any ) : any ; destroy ( ) : any ; getOriginalMimeType ( ) : any ; /** * Check if the mime type and the content type is supported. */ isSupported (mimeType : string , contentType ? : string ) : boolean ; transmux (data : any , stream : any , reference : any ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.transmuxer { class TransmuxerEngine implements shaka.util.IDestroyable { private noStructuralTyping_shaka_transmuxer_TransmuxerEngine : any; destroy ( ) : Promise < any > ; static findTransmuxer (mimeType : string , contentType ? : string ) : ( shaka.extern.TransmuxerPlugin ) | null ; static registerTransmuxer (mimeType : string , plugin : shaka.extern.TransmuxerPlugin , priority : number ) : any ; static unregisterTransmuxer (mimeType : string , priority : number ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.transmuxer.TransmuxerEngine { /** * Priority level for transmuxer plugins. * If multiple plugins are provided for the same mime type, only the * highest-priority one is used. */ /** * Priority level for transmuxer plugins. * If multiple plugins are provided for the same mime type, only the * highest-priority one is used. */ enum PluginPriority { APPLICATION = 4.0 , FALLBACK = 1.0 , PREFERRED = 3.0 , PREFERRED_SECONDARY = 2.0 , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.transmuxer { class TsTransmuxer implements shaka.extern.Transmuxer { private noStructuralTyping_shaka_transmuxer_TsTransmuxer : any; constructor (mimeType : string ) ; convertCodecs (contentType : any , mimeType : any ) : any ; destroy ( ) : any ; getOriginalMimeType ( ) : any ; /** * Check if the mime type and the content type is supported. */ isSupported (mimeType : string , contentType ? : string ) : boolean ; transmux (data : any , stream : any , reference : any , duration : any , contentType : any ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class AdCounter extends shaka.ui.Element { private noStructuralTyping_shaka_ui_AdCounter : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class AdPosition extends shaka.ui.Element { private noStructuralTyping_shaka_ui_AdPosition : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class AdStatisticsButton extends shaka.ui.Element { private noStructuralTyping_shaka_ui_AdStatisticsButton : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class AirPlayButton extends shaka.ui.Element { private noStructuralTyping_shaka_ui_AirPlayButton : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class AudioLanguageSelection extends shaka.ui.SettingsMenu { private noStructuralTyping_shaka_ui_AudioLanguageSelection : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class BigPlayButton extends shaka.ui.PlayButton { private noStructuralTyping_shaka_ui_BigPlayButton : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class CastButton extends shaka.ui.Element { private noStructuralTyping_shaka_ui_CastButton : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class ChapterSelection extends shaka.ui.SettingsMenu { private noStructuralTyping_shaka_ui_ChapterSelection : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class ContextMenu extends shaka.ui.Element { private noStructuralTyping_shaka_ui_ContextMenu : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; static registerElement (name : string , factory : shaka.extern.IUIElement.Factory ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { /** * A container for custom video controls. */ class Controls extends shaka.util.FakeEventTarget implements shaka.util.IDestroyable { private noStructuralTyping_shaka_ui_Controls : any; /** * A container for custom video controls. */ constructor (player : shaka.Player , videoContainer : HTMLElement , video : HTMLMediaElement , vrCanvas : HTMLCanvasElement | null , config : shaka.extern.UIConfiguration ) ; /** * This allows the application to inhibit casting. */ allowCast (allow : boolean ) : any ; anySettingsMenusAreOpen ( ) : boolean ; /** * Returns if a VR is capable. */ canPlayVR ( ) : boolean ; configure (config : shaka.extern.UIConfiguration ) : any ; destroy ( ) : Promise < any > ; getAd ( ) : shaka.extern.IAd | null ; getCastProxy ( ) : shaka.cast.CastProxy | null ; getClientSideAdContainer ( ) : HTMLElement ; getConfig ( ) : shaka.extern.UIConfiguration ; getControlsContainer ( ) : HTMLElement ; getDisplayTime ( ) : number ; getLocalPlayer ( ) : shaka.Player | null ; getLocalVideo ( ) : HTMLMediaElement | null ; getLocalization ( ) : shaka.ui.Localization | null ; getPlayer ( ) : shaka.Player | null ; getServerSideAdContainer ( ) : HTMLElement ; /** * Returns the angle of the current field of view displayed in degrees. */ getVRFieldOfView ( ) : number | null ; /** * Get the angle of the north. */ getVRNorth ( ) : number | null ; getVideo ( ) : HTMLMediaElement | null ; getVideoContainer ( ) : HTMLElement ; hideAdUI ( ) : any ; hideSettingsMenus ( ) : any ; hideUI ( ) : any ; /** * Increment the pitch in X angle in degrees. * @param angle In degrees */ incrementPitch (angle : number ) : any ; /** * Increment the roll in X angle in degrees. * @param angle In degrees */ incrementRoll (angle : number ) : any ; /** * Increment the yaw in X angle in degrees. * @param angle In degrees */ incrementYaw (angle : number ) : any ; isCastAllowed ( ) : boolean ; isFullScreenEnabled ( ) : boolean ; isFullScreenSupported ( ) : boolean ; isOpaque ( ) : boolean ; isPiPAllowed ( ) : boolean ; isPiPEnabled ( ) : boolean ; /** * Returns if a VR is supported. */ isPlayingVR ( ) : boolean ; isSeeking ( ) : boolean ; /** * Used by the application to notify the controls that a load operation is * complete. This allows the controls to recalculate play/paused state, which * is important for platforms like Android where autoplay is disabled. */ loadComplete ( ) : any ; /** * Enable or disable native browser controls. Enabling disables shaka * controls. */ setEnabledNativeControls (enabled : boolean ) : any ; /** * Enable or disable the custom controls. Enabling disables native * browser controls. */ setEnabledShakaControls (enabled : boolean ) : any ; setLastTouchEventTime (time : number | null ) : any ; setSeeking (seeking : boolean ) : any ; /** * Changing the field of view increases or decreases the portion of the video * that is viewed at one time. If the field of view is decreased, a small * part of the video will be seen, but with more detail. If the field of view * is increased, a larger part of the video will be seen, but with less * detail. * @param fieldOfView In degrees */ setVRFieldOfView (fieldOfView : number ) : any ; showAdUI ( ) : any ; showUI ( ) : any ; toggleFullScreen ( ) : any ; togglePiP ( ) : any ; /** * Toggle stereoscopic mode. */ toggleStereoscopicMode ( ) : any ; static registerElement (name : string , factory : shaka.extern.IUIElement.Factory ) : any ; static registerSeekBar (factory : shaka.extern.IUISeekBar.Factory ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { abstract class Element implements shaka.extern.IUIElement { private noStructuralTyping_shaka_ui_Element : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; ad : shaka.extern.IAd | null ; adManager : shaka.extern.IAdManager | null ; controls : shaka.ui.Controls | null ; eventManager : shaka.util.EventManager | null ; localization : shaka.ui.Localization | null ; parent : HTMLElement | null ; player : shaka.Player | null ; release ( ) : any ; video : HTMLMediaElement | null ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class FastForwardButton extends shaka.ui.Element { private noStructuralTyping_shaka_ui_FastForwardButton : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class FullscreenButton extends shaka.ui.Element { private noStructuralTyping_shaka_ui_FullscreenButton : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class HiddenFastForwardButton extends shaka.ui.HiddenSeekButton { private noStructuralTyping_shaka_ui_HiddenFastForwardButton : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class HiddenRewindButton extends shaka.ui.HiddenSeekButton { private noStructuralTyping_shaka_ui_HiddenRewindButton : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class HiddenSeekButton extends shaka.ui.Element { private noStructuralTyping_shaka_ui_HiddenSeekButton : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { /** * Localization system provided by the shaka ui library. * It can be used to store the various localized forms of * strings that are expected to be displayed to the user. * If a string is not available, it will return the localized * form in the closest related locale. */ class Localization extends shaka.util.FakeEventTarget { private noStructuralTyping_shaka_ui_Localization : any; constructor (fallbackLocale : string ) ; /** * Request the localization system to change which locale it serves. If any of * of the preferred locales cannot be found, the localization system will fire * an event identifying which locales it does not know. The localization * system will then continue to operate using the closest matches it has. * @param locales The locale codes for the requested locales in order of preference. */ changeLocale (locales : Iterable < string > ) : any ; /** * The locales currently used. An empty set means "no preference". */ getCurrentLocales ( ) : Set < string > ; /** * Insert a set of localizations for a single locale. This will amend the * existing localizations for the given locale. * @param locale The locale that the localizations should be added to. * @param localizations A mapping of id to localized text that should used to modify the internal collection of localizations. * @param conflictResolution The strategy used to resolve conflicts when the id of an existing entry matches the id of a new entry. Default to |USE_NEW|, where the new entry will replace the old entry. */ insert (locale : string , localizations : Map < string , string > , conflictResolution ? : shaka.ui.Localization.ConflictResolution ) : shaka.ui.Localization ; release ( ) : any ; /** * Request the localized string under the given id. If there is no localized * version of the string, then the fallback localization will be given * ("en" version). If there is no fallback localization, a non-null empty * string will be returned. * @param id The id for the localization entry. */ resolve (id : string ) : string ; /** * Set the value under each key in |dictionary| to the resolved value. * Convenient for apps with some kind of data binding system. * Equivalent to: * for (const key of dictionary.keys()) { * dictionary.set(key, localization.resolve(key)); * } */ resolveDictionary (dictionary : Map < string , string > ) : any ; /** * The event name for when a new locale has been requested and any previously * resolved values should be updated. */ static LOCALE_CHANGED : string ; /** * The event name for when |insert| was called and it changed entries that could * affect previously resolved values. */ static LOCALE_UPDATED : string ; /** * The event name for when entries are missing from the user's preferred * locale, but we were able to find an entry in a related locale or the fallback * locale. */ static MISSING_LOCALIZATIONS : string ; /** * The event name for when locales were requested, but we could not find any * entries for them. The localization system will continue to use the closest * matches it has. */ static UNKNOWN_LOCALES : string ; /** * The event name for when an entry could not be found in the preferred locale, * related locales, or the fallback locale. */ static UNKNOWN_LOCALIZATION : string ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui.Localization { /** * An enum for how the localization system should resolve conflicts between old * translations and new translations. */ /** * An enum for how the localization system should resolve conflicts between old * translations and new translations. */ enum ConflictResolution { USE_NEW = 1.0 , USE_OLD = 0.0 , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class LoopButton extends shaka.ui.Element { private noStructuralTyping_shaka_ui_LoopButton : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class MuteButton extends shaka.ui.Element { private noStructuralTyping_shaka_ui_MuteButton : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class OverflowMenu extends shaka.ui.Element { private noStructuralTyping_shaka_ui_OverflowMenu : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; static registerElement (name : string , factory : shaka.extern.IUIElement.Factory ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class Overlay implements shaka.util.IDestroyable { private noStructuralTyping_shaka_ui_Overlay : any; constructor (player : shaka.Player , videoContainer : HTMLElement , video : HTMLMediaElement , vrCanvas ? : HTMLCanvasElement | null ) ; configure (config : string | object , value ? : any ) : any ; destroy ( ) : Promise < any > ; getConfiguration ( ) : shaka.extern.UIConfiguration ; getControls ( ) : shaka.ui.Controls | null ; /** * Detects if this is a mobile platform, in case you want to choose a * different UI configuration on mobile devices. */ isMobile ( ) : boolean ; removeWatermark ( ) : any ; /** * Enable or disable the custom controls. */ setEnabled (enabled : boolean ) : any ; setTextWatermark (text : string , options ? : shaka.ui.Watermark.Options | null ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui.Overlay { /** * Describes the possible reasons that the UI might fail to load. */ /** * Describes the possible reasons that the UI might fail to load. */ enum FailReasonCode { NO_BROWSER_SUPPORT = 0.0 , PLAYER_FAILED_TO_LOAD = 1.0 , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui.Overlay { /** * Describes what information should show up in labels for selecting audio * variants and text tracks. */ /** * Describes what information should show up in labels for selecting audio * variants and text tracks. */ enum TrackLabelFormat { LABEL = 3.0 , LANGUAGE = 0.0 , LANGUAGE_ROLE = 2.0 , ROLE = 1.0 , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class PipButton extends shaka.ui.Element { private noStructuralTyping_shaka_ui_PipButton : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class PlayButton extends shaka.ui.Element implements shaka.extern.IUIPlayButton { private noStructuralTyping_shaka_ui_PlayButton : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; button : HTMLButtonElement ; isEnded ( ) : boolean ; isPaused ( ) : boolean ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class PlaybackRateSelection extends shaka.ui.SettingsMenu { private noStructuralTyping_shaka_ui_PlaybackRateSelection : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class PresentationTimeTracker extends shaka.ui.Element { private noStructuralTyping_shaka_ui_PresentationTimeTracker : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { /** * A range element, built to work across browsers. * In particular, getting styles to work right on IE requires a specific * structure. * This also handles the case where the range element is being manipulated and * updated at the same time. This can happen when seeking during playback or * when casting. */ class RangeElement extends shaka.ui.Element implements shaka.extern.IUIRangeElement { private noStructuralTyping_shaka_ui_RangeElement : any; /** * A range element, built to work across browsers. * In particular, getting styles to work right on IE requires a specific * structure. * This also handles the case where the range element is being manipulated and * updated at the same time. This can happen when seeking during playback or * when casting. */ constructor (parent : HTMLElement , controls : shaka.ui.Controls , containerClassNames : string [] , barClassNames : string [] ) ; bar : HTMLInputElement ; /** * Called to implement keyboard-based changes, where this is no clear "end". * This will simulate events like onChangeStart(), onChange(), and * onChangeEnd() as appropriate. */ changeTo (value : any ) : any ; container : HTMLElement ; getValue ( ) : any ; /** * Called when a new value is set by user interaction. * To be overridden by subclasses. */ onChange ( ) : any ; /** * Called when user interaction ends. * To be overridden by subclasses. */ onChangeEnd ( ) : any ; /** * Called when user interaction begins. * To be overridden by subclasses. */ onChangeStart ( ) : any ; setRange (min : any , max : any ) : any ; setValue (value : any ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class RecenterVRButton extends shaka.ui.Element { private noStructuralTyping_shaka_ui_RecenterVRButton : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class RemoteButton extends shaka.ui.Element { private noStructuralTyping_shaka_ui_RemoteButton : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class ResolutionSelection extends shaka.ui.SettingsMenu { private noStructuralTyping_shaka_ui_ResolutionSelection : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class RewindButton extends shaka.ui.Element { private noStructuralTyping_shaka_ui_RewindButton : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class SaveVideoFrameButton extends shaka.ui.Element { private noStructuralTyping_shaka_ui_SaveVideoFrameButton : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class SeekBar extends shaka.ui.RangeElement implements shaka.extern.IUISeekBar { private noStructuralTyping_shaka_ui_SeekBar : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; isShowing ( ) : boolean ; update ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui.SeekBar { class Factory implements shaka.extern.IUISeekBar.Factory { private noStructuralTyping_shaka_ui_SeekBar_Factory : any; create (rootElement : HTMLElement , controls : shaka.ui.Controls ) : shaka.extern.IUISeekBar ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class SettingsMenu extends shaka.ui.Element implements shaka.extern.IUISettingsMenu { private noStructuralTyping_shaka_ui_SettingsMenu : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls , iconText : string ) ; backButton : HTMLButtonElement ; backSpan : HTMLElement ; button : HTMLButtonElement ; currentSelection : HTMLElement ; icon : HTMLElement ; menu : HTMLElement ; nameSpan : HTMLElement ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class SkipAdButton extends shaka.ui.Element { private noStructuralTyping_shaka_ui_SkipAdButton : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class SmallPlayButton extends shaka.ui.PlayButton { private noStructuralTyping_shaka_ui_SmallPlayButton : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class Spacer extends shaka.ui.Element { private noStructuralTyping_shaka_ui_Spacer : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class StatisticsButton extends shaka.ui.Element { private noStructuralTyping_shaka_ui_StatisticsButton : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class TextSelection extends shaka.ui.SettingsMenu { private noStructuralTyping_shaka_ui_TextSelection : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class ToggleStereoscopicButton extends shaka.ui.Element { private noStructuralTyping_shaka_ui_ToggleStereoscopicButton : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { class VolumeBar extends shaka.ui.RangeElement { private noStructuralTyping_shaka_ui_VolumeBar : any; constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.ui { /** * A UI component that adds watermark functionality to the Shaka Player. * Allows adding text watermarks with various customization options. */ class Watermark extends shaka.ui.Element { private noStructuralTyping_shaka_ui_Watermark : any; /** * A UI component that adds watermark functionality to the Shaka Player. * Allows adding text watermarks with various customization options. */ constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ; /** * Removes the current watermark from the video and stops any animations. */ removeWatermark ( ) : any ; /** * Sets a text watermark on the video with customizable options. * The watermark can be either static (fixed position) or dynamic (moving). * @param text The text to display as watermark * @param options configuration options */ setTextWatermark (text : string , options ? : shaka.ui.Watermark.Options | null ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util { /** * A utility to wrap abortable operations. Note that these are not cancelable. * Cancellation implies undoing what has been done so far, whereas aborting only * means that further work is stopped. */ class AbortableOperation < T > implements shaka.extern.IAbortableOperation < T > { private noStructuralTyping_shaka_util_AbortableOperation : any; /** * A utility to wrap abortable operations. Note that these are not cancelable. * Cancellation implies undoing what has been done so far, whereas aborting only * means that further work is stopped. */ constructor (promise : Promise < T > , onAbort : shaka.extern.CreateSegmentIndexFunction ) ; abort ( ) : any ; aborted ( ) : boolean ; chain < U > (onSuccess : undefined | Function , onError ? : (a : any ) => any ) : shaka.util.AbortableOperation < U > ; finally (onFinal : any ) : any ; promise : Promise < T > ; static aborted ( ) : shaka.util.AbortableOperation < any > ; static all (operations : shaka.util.AbortableOperation < any > [] ) : shaka.util.AbortableOperation < any > ; static completed < U > (value : U ) : shaka.util.AbortableOperation < U > ; static failed (error : shaka.util.Error ) : shaka.util.AbortableOperation < any > ; static notAbortable < U > (promise : Promise < U > ) : shaka.util.AbortableOperation < U > ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util { class BufferUtils { private noStructuralTyping_shaka_util_BufferUtils : any; /** * Compare two buffers for equality. For buffers of different types, this * compares the underlying buffers as binary data. */ static equal (arr1 : ArrayBuffer | ArrayBufferView | null , arr2 : ArrayBuffer | ArrayBufferView | null ) : boolean ; /** * Gets an ArrayBuffer that contains the data from the given TypedArray. Note * this will allocate a new ArrayBuffer if the object is a partial view of * the data. */ static toArrayBuffer (view : ArrayBuffer | ArrayBufferView ) : ArrayBuffer ; /** * Creates a DataView over the given buffer. */ static toDataView (buffer : ArrayBuffer | ArrayBufferView , offset ? : number , length ? : number ) : DataView ; /** * Creates a new Uint16Array view on the same buffer. This clamps the values * to be within the same view (i.e. you can't use this to move past the end * of the view, even if the underlying buffer is larger). However, you can * pass a negative offset to access the data before the view. * @param offset The offset from the beginning of this data's view to start the new view at. * @param length The byte length of the new view. */ static toUint16 (data : ArrayBuffer | ArrayBufferView , offset ? : number , length ? : number ) : Uint16Array ; /** * Creates a new Uint8Array view on the same buffer. This clamps the values * to be within the same view (i.e. you can't use this to move past the end * of the view, even if the underlying buffer is larger). However, you can * pass a negative offset to access the data before the view. * @param offset The offset from the beginning of this data's view to start the new view at. * @param length The byte length of the new view. */ static toUint8 (data : ArrayBuffer | ArrayBufferView , offset ? : number , length ? : number ) : Uint8Array ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util.CmcdManager { enum StreamingFormat { DASH = 'd' , HLS = 'h' , LOW_LATENCY_DASH = 'ld' , LOW_LATENCY_HLS = 'lh' , OTHER = 'o' , SMOOTH = 's' , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util { class CmsdManager { private noStructuralTyping_shaka_util_CmsdManager : any; constructor (config : shaka.extern.CmsdConfiguration ) ; /** * Gets the current bandwidth estimate. */ getBandwidthEstimate (defaultEstimate : number ) : number ; /** * Returns the estimated throughput in bits per second. If there is no * estimated throughput or it's not enabled, it returns null. */ getEstimatedThroughput ( ) : number | null ; /** * Returns the max bitrate in bits per second. If there is no max bitrate or * it's not enabled, it returns null. */ getMaxBitrate ( ) : number | null ; /** * Returns the response delay in milliseconds. If there is no response delay * or it's not enabled, it returns null. */ getResponseDelay ( ) : number | null ; /** * Returns the RTT in milliseconds. If there is no RTT or it's not enabled, * it returns null. */ getRoundTripTime ( ) : number | null ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util { class ConfigUtils { private noStructuralTyping_shaka_util_ConfigUtils : any; /** * Convert config from ('fieldName', value) format to a partial config object. * E. g. from ('manifest.retryParameters.maxAttempts', 1) to * { manifest: { retryParameters: { maxAttempts: 1 }}}. */ static convertToConfigObject (fieldName : string , value : any ) : object ; static getDifferenceFromConfigObjects (object : object , base : object ) : object ; static mergeConfigObjects (destination : object , source : object , template : object , overrides : object , path : string ) : boolean ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util { class DataViewReader { private noStructuralTyping_shaka_util_DataViewReader : any; constructor (data : ArrayBuffer | ArrayBufferView , endianness : shaka.util.DataViewReader.Endianness ) ; /** * Gets the byte length of the DataView. */ getLength ( ) : number ; /** * Gets the current byte position. */ getPosition ( ) : number ; hasMoreData ( ) : boolean ; /** * Reads the specified number of raw bytes. * @param bytes The number of bytes to read. */ readBytes (bytes : number ) : Uint8Array ; /** * Reads a signed 32 bit integer, and advances the reader. */ readInt32 ( ) : number ; /** * Keeps reading until it reaches a byte that equals to zero. The text is * assumed to be UTF-8. */ readTerminatedString ( ) : string ; /** * Reads an unsigned 16 bit integer, and advances the reader. */ readUint16 ( ) : number ; /** * Reads an unsigned 32 bit integer, and advances the reader. */ readUint32 ( ) : number ; /** * Reads an unsigned 64 bit integer, and advances the reader. */ readUint64 ( ) : number ; /** * Reads an unsigned 8 bit integer, and advances the reader. */ readUint8 ( ) : number ; /** * Rewinds the specified number of bytes. * @param bytes The number of bytes to rewind. */ rewind (bytes : number ) : any ; /** * Seeks to a specified position. * @param position The desired byte position within the DataView. */ seek (position : number ) : any ; /** * Skips the specified number of bytes. * @param bytes The number of bytes to skip. */ skip (bytes : number ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util.DataViewReader { /** * Endianness. */ /** * Endianness. */ enum Endianness { BIG_ENDIAN = 0.0 , LITTLE_ENDIAN = 1.0 , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util { class Dom { private noStructuralTyping_shaka_util_Dom : any; /** * Remove all of the child nodes of an element. */ static removeAllChildren (element : Element ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util { class Error extends GlobalError implements shaka.extern.Error { private noStructuralTyping_shaka_util_Error : any; constructor (severity : shaka.util.Error.Severity , category : shaka.util.Error.Category , code : shaka.util.Error.Code , ...varArgs : any [] ) ; category : any ; code : any ; data : any ; handled : any ; severity : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util.Error { enum Category { ADS = 10.0 , CAST = 8.0 , DRM = 6.0 , MANIFEST = 4.0 , MEDIA = 3.0 , NETWORK = 1.0 , PLAYER = 7.0 , STORAGE = 9.0 , STREAMING = 5.0 , TEXT = 2.0 , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util.Error { enum Code { AES_128_INVALID_IV_LENGTH = 4048.0 , AES_128_INVALID_KEY_LENGTH = 4049.0 , ALREADY_CASTING = 8002.0 , ATTEMPTS_EXHAUSTED = 1010.0 , BAD_ENCODING = 2004.0 , BAD_HTTP_STATUS = 1001.0 , BUFFER_READ_OUT_OF_BOUNDS = 3000.0 , CANNOT_ADD_EXTERNAL_TEXT_TO_LIVE_STREAM = 4033.0 , CANNOT_ADD_EXTERNAL_TEXT_TO_SRC_EQUALS = 2012.0 , CANNOT_ADD_EXTERNAL_THUMBNAILS_TO_LIVE_STREAM = 4045.0 , CANNOT_STORE_LIVE_OFFLINE = 9005.0 , CAST_API_UNAVAILABLE = 8000.0 , CAST_CANCELED_BY_USER = 8004.0 , CAST_CONNECTION_TIMED_OUT = 8005.0 , CAST_RECEIVER_APP_UNAVAILABLE = 8006.0 , CHAPTERS_TRACK_FAILED = 2015.0 , CONTENT_NOT_LOADED = 7004.0 , CONTENT_TRANSFORMATION_FAILED = 3019.0 , CONTENT_UNSUPPORTED_BY_BROWSER = 4032.0 , CS_AD_MANAGER_NOT_INITIALIZED = 10001.0 , CS_IMA_SDK_MISSING = 10000.0 , CURRENT_DAI_REQUEST_NOT_FINISHED = 10004.0 , DASH_CONFLICTING_AES_128 = 4050.0 , DASH_CONFLICTING_KEY_IDS = 4010.0 , DASH_DUPLICATE_REPRESENTATION_ID = 4018.0 , DASH_EMPTY_ADAPTATION_SET = 4003.0 , DASH_EMPTY_PERIOD = 4004.0 , DASH_INVALID_PATCH = 4052.0 , DASH_INVALID_XML = 4001.0 , DASH_MSE_ENCRYPTED_LEGACY_APPLE_MEDIA_KEYS_NOT_SUPPORTED = 4054.0 , DASH_MULTIPLE_KEY_IDS_NOT_SUPPORTED = 4009.0 , DASH_NO_COMMON_KEY_SYSTEM = 4008.0 , DASH_NO_SEGMENT_INFO = 4002.0 , DASH_PSSH_BAD_ENCODING = 4007.0 , DASH_UNSUPPORTED_AES_128 = 4051.0 , DASH_UNSUPPORTED_CONTAINER = 4006.0 , DASH_UNSUPPORTED_XLINK_ACTUATE = 4027.0 , DASH_WEBM_MISSING_INIT = 4005.0 , DASH_XLINK_DEPTH_LIMIT = 4028.0 , DEPRECATED_OPERATION_ABORTED = 9002.0 , DOWNLOAD_SIZE_CALLBACK_ERROR = 9015.0 , EBML_BAD_FLOATING_POINT_SIZE = 3003.0 , EBML_OVERFLOW = 3002.0 , ENCRYPTED_CONTENT_WITHOUT_DRM_INFO = 6010.0 , ERROR_CHECKING_HDCP_VERSION = 6019.0 , EXPIRED = 6014.0 , FAILED_TO_ATTACH_TO_VIDEO = 6003.0 , FAILED_TO_CREATE_CDM = 6002.0 , FAILED_TO_CREATE_SESSION = 6005.0 , FAILED_TO_GENERATE_LICENSE_REQUEST = 6006.0 , HLS_COULD_NOT_GUESS_CODECS = 4025.0 , HLS_EMPTY_MEDIA_PLAYLIST = 4053.0 , HLS_INVALID_PLAYLIST_HIERARCHY = 4017.0 , HLS_KEYFORMATS_NOT_SUPPORTED = 4026.0 , HLS_MSE_ENCRYPTED_LEGACY_APPLE_MEDIA_KEYS_NOT_SUPPORTED = 4041.0 , HLS_MSE_ENCRYPTED_MP2T_NOT_SUPPORTED = 4040.0 , HLS_MULTIPLE_MEDIA_INIT_SECTIONS_FOUND = 4020.0 , HLS_PLAYLIST_HEADER_MISSING = 4015.0 , HLS_REQUIRED_ATTRIBUTE_MISSING = 4023.0 , HLS_REQUIRED_TAG_MISSING = 4024.0 , HLS_VARIABLE_NOT_FOUND = 4039.0 , HTTP_ERROR = 1002.0 , INCONSISTENT_DRM_ACROSS_PERIODS = 4038.0 , INDEXED_DB_ERROR = 9001.0 , INDEXED_DB_INIT_TIMED_OUT = 9017.0 , INIT_DATA_TRANSFORM_ERROR = 6016.0 , INTERSTITIAL_AD_MANAGER_NOT_INITIALIZED = 10006.0 , INVALID_HLS_TAG = 4016.0 , INVALID_MP4_CEA = 2010.0 , INVALID_MP4_TTML = 2007.0 , INVALID_MP4_VTT = 2008.0 , INVALID_SERVER_CERTIFICATE = 6004.0 , INVALID_TEXT_CUE = 2001.0 , INVALID_TEXT_HEADER = 2000.0 , INVALID_XML = 2005.0 , JS_INTEGER_OVERFLOW = 3001.0 , KEY_NOT_FOUND = 9012.0 , LICENSE_REQUEST_FAILED = 6007.0 , LICENSE_RESPONSE_REJECTED = 6008.0 , LOAD_INTERRUPTED = 7000.0 , LOCAL_PLAYER_INSTANCE_REQUIRED = 9008.0 , MALFORMED_DATA_URI = 1004.0 , MALFORMED_OFFLINE_URI = 9004.0 , MALFORMED_TEST_URI = 1008.0 , MEDIA_SOURCE_OPERATION_FAILED = 3014.0 , MEDIA_SOURCE_OPERATION_THREW = 3015.0 , MIN_HDCP_VERSION_NOT_MATCH = 6018.0 , MISSING_EME_SUPPORT = 6020.0 , MISSING_STORAGE_CELL = 9013.0 , MISSING_TEXT_PLUGIN = 2014.0 , MODIFY_OPERATION_NOT_SUPPORTED = 9016.0 , MP4_SIDX_INVALID_TIMESCALE = 3005.0 , MP4_SIDX_TYPE_NOT_SUPPORTED = 3006.0 , MP4_SIDX_WRONG_BOX_TYPE = 3004.0 , MSS_INVALID_XML = 4046.0 , MSS_LIVE_CONTENT_NOT_SUPPORTED = 4047.0 , MSS_MISSING_DATA_FOR_TRANSMUXING = 3020.0 , MSS_TRANSMUXING_FAILED = 3022.0 , MT_AD_MANAGER_NOT_INITIALIZED = 10005.0 , NEW_KEY_OPERATION_NOT_SUPPORTED = 9011.0 , NO_CAST_RECEIVERS = 8001.0 , NO_INIT_DATA_FOR_OFFLINE = 9007.0 , NO_LICENSE_SERVER_GIVEN = 6012.0 , NO_RECOGNIZED_KEY_SYSTEMS = 6000.0 , NO_VARIANTS = 4036.0 , NO_VIDEO_ELEMENT = 7002.0 , NO_WEB_CRYPTO_API = 4042.0 , OBJECT_DESTROYED = 7003.0 , OFFLINE_SESSION_REMOVED = 6013.0 , OPERATION_ABORTED = 7001.0 , PERIOD_FLATTENING_FAILED = 4037.0 , QUOTA_EXCEEDED_ERROR = 3017.0 , REQUESTED_ITEM_NOT_FOUND = 9003.0 , REQUESTED_KEY_SYSTEM_CONFIG_UNAVAILABLE = 6001.0 , REQUEST_FILTER_ERROR = 1006.0 , RESPONSE_FILTER_ERROR = 1007.0 , RESTRICTIONS_CANNOT_BE_MET = 4012.0 , SEGMENT_MISSING = 1011.0 , SERVER_CERTIFICATE_REQUEST_FAILED = 6017.0 , SERVER_CERTIFICATE_REQUIRED = 6015.0 , SRC_EQUALS_PRELOAD_NOT_SUPPORTED = 7005.0 , SS_AD_MANAGER_NOT_INITIALIZED = 10003.0 , SS_IMA_SDK_MISSING = 10002.0 , STORAGE_LIMIT_REACHED = 9014.0 , STORAGE_NOT_SUPPORTED = 9000.0 , STREAMING_ENGINE_STARTUP_INVALID_STATE = 5006.0 , TEXT_COULD_NOT_GUESS_MIME_TYPE = 2011.0 , TEXT_ONLY_WEBVTT_SRC_EQUALS = 2013.0 , TIMEOUT = 1003.0 , TRANSMUXING_FAILED = 3018.0 , TRANSMUXING_NO_VIDEO_DATA = 3023.0 , UNABLE_TO_DETECT_ENCODING = 2003.0 , UNABLE_TO_EXTRACT_CUE_START_TIME = 2009.0 , UNABLE_TO_GUESS_MANIFEST_TYPE = 4000.0 , UNEXPECTED_CAST_ERROR = 8003.0 , UNEXPECTED_TEST_REQUEST = 1009.0 , UNSUPPORTED_EXTERNAL_THUMBNAILS_URI = 2017.0 , UNSUPPORTED_SCHEME = 1000.0 , VAST_INVALID_XML = 10007.0 , VIDEO_ERROR = 3016.0 , WEBM_CUES_ELEMENT_MISSING = 3007.0 , WEBM_CUE_TIME_ELEMENT_MISSING = 3013.0 , WEBM_CUE_TRACK_POSITIONS_ELEMENT_MISSING = 3012.0 , WEBM_DURATION_ELEMENT_MISSING = 3011.0 , WEBM_EBML_HEADER_ELEMENT_MISSING = 3008.0 , WEBM_INFO_ELEMENT_MISSING = 3010.0 , WEBM_SEGMENT_ELEMENT_MISSING = 3009.0 , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util.Error { enum Severity { CRITICAL = 2.0 , RECOVERABLE = 1.0 , } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util { class EventManager implements shaka.util.IReleasable { private noStructuralTyping_shaka_util_EventManager : any; /** * Attaches an event listener to an event target. * @param target The event target. * @param type The event type. * @param listener The event listener. * @param options An object that specifies characteristics about the event listener. The passive option, if true, indicates that this function will never call preventDefault(), which improves scrolling performance. */ listen (target : EventTarget | null , type : string , listener : shaka.util.EventManager.ListenerType , options ? : boolean | AddEventListenerOptions ) : any ; /** * Attaches an event listener to an event target. The listener will be * removed when the first instance of the event is fired. * @param target The event target. * @param type The event type. * @param listener The event listener. * @param options An object that specifies characteristics about the event listener. The passive option, if true, indicates that this function will never call preventDefault(), which improves scrolling performance. */ listenOnce (target : EventTarget | null , type : string , listener : shaka.util.EventManager.ListenerType , options ? : boolean | AddEventListenerOptions ) : any ; /** * Detaches all event listeners. */ release ( ) : any ; /** * Detaches all event listeners from all targets. */ removeAll ( ) : any ; /** * Detaches an event listener from an event target. * @param target The event target. * @param type The event type. * @param listener The event listener. */ unlisten (target : EventTarget | null , type : string , listener ? : shaka.util.EventManager.ListenerType ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util.EventManager { type ListenerType = (a : Event ) => any ; } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util { class ExpGolomb { private noStructuralTyping_shaka_util_ExpGolomb : any; constructor (data : Uint8Array , convertEbsp2rbsp ? : boolean ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util { class FairPlayUtils { private noStructuralTyping_shaka_util_FairPlayUtils : any; /** * Common FairPlay response transform for some DRMs providers. */ static commonFairPlayResponse (type : shaka.net.NetworkingEngine.RequestType , response : shaka.extern.Response , context ? : shaka.extern.RequestContext ) : any ; /** * Conax FairPlay request. */ static conaxFairPlayRequest (type : shaka.net.NetworkingEngine.RequestType , request : shaka.extern.Request , context ? : shaka.extern.RequestContext ) : any ; /** * Conax initDataTransform configuration. */ static conaxInitDataTransform (initData : Uint8Array , initDataType : string , drmInfo : shaka.extern.DrmInfo | null ) : Uint8Array ; /** * Using the default method, extract a content ID from the init data. This is * based on the FairPlay example documentation. */ static defaultGetContentId (initData : ArrayBuffer | ArrayBufferView ) : string ; /** * ExpressPlay FairPlay request. */ static expressplayFairPlayRequest (type : shaka.net.NetworkingEngine.RequestType , request : shaka.extern.Request , context ? : shaka.extern.RequestContext ) : any ; /** * ExpressPlay initDataTransform configuration. */ static expressplayInitDataTransform (initData : Uint8Array , initDataType : string , drmInfo : shaka.extern.DrmInfo | null ) : Uint8Array ; /** * EZDRM FairPlay request. */ static ezdrmFairPlayRequest (type : shaka.net.NetworkingEngine.RequestType , request : shaka.extern.Request , context ? : shaka.extern.RequestContext ) : any ; /** * EZDRM initDataTransform configuration. */ static ezdrmInitDataTransform (initData : Uint8Array , initDataType : string , drmInfo : shaka.extern.DrmInfo | null ) : Uint8Array ; /** * Transforms the init data buffer using the given data. The format is: *

     * [4 bytes] initDataSize
     * [initDataSize bytes] initData
     * [4 bytes] contentIdSize
     * [contentIdSize bytes] contentId
     * [4 bytes] certSize
     * [certSize bytes] cert
     * 
* @param cert The server certificate; this will throw if not provided. */ static initDataTransform (initData : ArrayBuffer | ArrayBufferView , contentId : ArrayBuffer | ArrayBufferView | string , cert : ArrayBuffer | ArrayBufferView | null ) : Uint8Array ; /** * Check if FairPlay is supported. */ static isFairPlaySupported ( ) : Promise < boolean > ; /** * Verimatrix FairPlay request. */ static verimatrixFairPlayRequest (type : shaka.net.NetworkingEngine.RequestType , request : shaka.extern.Request , context ? : shaka.extern.RequestContext ) : any ; /** * Verimatrix initDataTransform configuration. */ static verimatrixInitDataTransform (initData : Uint8Array , initDataType : string , drmInfo : shaka.extern.DrmInfo | null ) : Uint8Array ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util { class FakeEvent extends Event { private noStructuralTyping_shaka_util_FakeEvent : any; constructor (type : string , dict ? : Map < string , object | null > | null ) ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util { class FakeEventTarget implements EventTarget , shaka.util.IReleasable { private noStructuralTyping_shaka_util_FakeEventTarget : any; /** * Add an event listener to this object. * @param type The event type to listen for. * @param listener The callback or listener object to invoke. * @param options Ignored. */ addEventListener (type : string , listener : EventListener | null | ( (a : Event ) => any ) , options ? : AddEventListenerOptions | boolean ) : any ; /** * Dispatch an event from this object. * @param event The event to be dispatched from this object. */ dispatchEvent (event : Event ) : boolean ; /** * Add an event listener to this object that is invoked for all events types * the object fires. * @param listener The callback or listener object to invoke. */ listenToAllEvents (listener : EventListener | null | ( (a : Event ) => any ) ) : any ; release ( ) : any ; /** * Remove an event listener from this object. * @param type The event type for which you wish to remove a listener. * @param listener The callback or listener object to remove. * @param options Ignored. */ removeEventListener (type : string , listener : EventListener | null | ( (a : Event ) => any ) , options ? : EventListenerOptions | null | boolean ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util.FakeEventTarget { /** * These are the listener types defined in the closure extern for EventTarget. */ type ListenerType = EventListener | null | ( (a : Event ) => any ) ; } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util { /** * An interface to standardize how objects are destroyed. */ interface IDestroyable { /** * Request that this object be destroyed, releasing all resources and shutting * down all operations. Returns a Promise which is resolved when destruction * is complete. This Promise should never be rejected. */ destroy ( ) : Promise < any > ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util { /** * An interface to standardize how objects release internal references * synchronously. If an object needs to asynchronously release references, then * it should use 'shaka.util.IDestroyable'. */ interface IReleasable { /** * Request that this object release all internal references. */ release ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util { class Id3Utils { private noStructuralTyping_shaka_util_Id3Utils : any; /** * Returns any adjacent ID3 tags found in data starting at offset, as one * block of data * @param id3Data - The ID3 data containing one or more ID3 tags * @param offset - The offset at which to start searching */ static getID3Data (id3Data : Uint8Array | null , offset ? : number ) : Uint8Array ; /** * Returns an array of ID3 frames found in all the ID3 tags in the id3Data * @param id3Data - The ID3 data containing one or more ID3 tags */ static getID3Frames (id3Data : Uint8Array | null ) : shaka.extern.MetadataFrame [] ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util { class LanguageUtils { private noStructuralTyping_shaka_util_LanguageUtils : any; /** * Check if |locale1| and |locale2| are language-compatible. * Language compatible is when the language component of each locale matches. * This means that no matter what region they have (or don't have) as long as * the language components match, they are language-compatible. * Examples: * Locale A | Locale B | Language-Compatible * ----------------------------------------- * en-US | en-US | true * en-US | en | true * en-US | en-CA | true * en-CA | fr-CA | false */ static areLanguageCompatible (locale1 : string , locale2 : string ) : boolean ; /** * Check if |locale1| and |locale2| are locale-compatible. * Locale-compatible is defined as all components in each locale match. Since * we only respect the language and region components, we only check that * the language and region components match. * Examples: * Locale A | Locale B | Locale Compatible * --------------------------------------- * en-US | en-US | true * en | en-US | false * en-US | en-CA | false */ static areLocaleCompatible (locale1 : string , locale2 : string ) : boolean ; /** * Check if two language codes are siblings. Language codes are siblings if * they share the same base language while neither one is the base language. * For example, "en-US" and "en-CA" are siblings but "en-US" and "en" are not * siblings. */ static areSiblings (a : string , b : string ) : boolean ; /** * Find the locale in |searchSpace| that comes closest to |target|. If no * locale is found to be close to |target|, then |null| will be returned. */ static findClosestLocale (target : string , searchSpace : Iterable < string > ) : string | null ; /** * Get the normalized base language for a language code. */ static getBase (lang : string ) : string ; /** * Get the normalized language of the given text stream. Will return 'und' if * a language is not found on the text stream. * This should always be used to get the language from a text stream. */ static getLocaleForText (stream : shaka.extern.Stream ) : string ; /** * Get the normalized locale for the given variant. This will look through * the variant to find the locale that represents the content in the variant. * This will return 'und' if no language can be found. * This should always be used to get the locale from a variant. */ static getLocaleForVariant (variant : shaka.extern.Variant ) : string ; /** * Check if |possibleParent| is the parent locale of |possibleChild|. Because * we do not support dialects, the parent-child relationship is a lot simpler. * In a parent child relationship: * - The parent and child have the same language-component * - The parent has no region-component * - The child has a region-component * Example: * Locale A | Locale B | Is A The parent of B? * -------------------------------------------- * en-US | en-US | no * en-US | en | no * en | en-US | yes * en | en | no * en | fr | no */ static isParentOf (possibleParent : string , possibleChild : string ) : boolean ; /** * Check if |localeA| shares the same parent with |localeB|. Since we don't * support dialect, we will only look at language and region. For two locales * to be siblings: * - Both must have language-components * - Both must have region-components * - Both must have the same language-component * Example: * Locale A | Locale B | Siblings? * -------------------------------------------- * en-US | en-US | yes * en-US | en-CA | yes * en-US | en | no * en | en-US | no * en | en | no * en | fr | no */ static isSiblingOf (localeA : string , localeB : string ) : boolean ; /** * Normalize a locale. This will take a locale and canonicalize it to a state * that we are prepared to work with. * We only support with: * - language * - language-REGION * If given a dialect, we will discard it. We will convert any 3-character * codes to 2-character codes. We will force language codes to lowercase and * region codes to uppercase. */ static normalize (locale : string ) : string ; /** * Compute a numerical relatedness for language codes. Language codes with a * higher relatedness are a better match. Unrelated language codes have a * relatedness score of 0. */ static relatedness (target : string , candidate : string ) : number ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util { class MimeUtils { private noStructuralTyping_shaka_util_MimeUtils : any; /** * Takes a MIME type and optional codecs string and produces the full MIME * type. Also remove the codecs for raw formats. */ static getFullType (mimeType : string , codecs ? : string ) : string ; /** * Takes a MIME type and optional codecs string and produces the full MIME * type. */ static getFullTypeWithAllCodecs (mimeType : string , codecs ? : string ) : string ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util { class Mp4Parser { private noStructuralTyping_shaka_util_Mp4Parser : any; /** * Declare a box type as a Box. */ box (type : string , definition : shaka.util.Mp4Parser.CallbackType ) : shaka.util.Mp4Parser ; /** * Declare a box type as a Full Box. */ fullBox (type : string , definition : shaka.util.Mp4Parser.CallbackType ) : shaka.util.Mp4Parser ; /** * Parse the given data using the added callbacks. * @param partialOkay If true, allow reading partial payloads from some boxes. If the goal is a child box, we can sometimes find it without enough data to find all child boxes. * @param stopOnPartial If true, stop reading if an incomplete box is detected. */ parse (data : ArrayBuffer | ArrayBufferView , partialOkay ? : boolean , stopOnPartial ? : boolean ) : any ; /** * Parse the next box on the current level. * @param absStart The absolute start position in the original byte array. * @param partialOkay If true, allow reading partial payloads from some boxes. If the goal is a child box, we can sometimes find it without enough data to find all child boxes. * @param stopOnPartial If true, stop reading if an incomplete box is detected. */ parseNext (absStart : number , reader : shaka.util.DataViewReader , partialOkay ? : boolean , stopOnPartial ? : boolean ) : any ; /** * Stop parsing. Useful for extracting information from partial segments and * avoiding an out-of-bounds error once you find what you are looking for. */ stop ( ) : any ; /** * Create a callback that tells the Mp4 parser to treat the body of a box as a * binary blob and to parse the body's contents using the provided callback. */ static allData (callback : (a : Uint8Array ) => any ) : shaka.util.Mp4Parser.CallbackType ; /** * A callback that tells the Mp4 parser to treat the body of a box as a audio * sample entry. A audio sample entry has some fixed-sized fields * describing the audio codec parameters, followed by an arbitrary number of * appended children. Each child is a box. */ static audioSampleEntry (box : shaka.extern.ParsedBox ) : any ; /** * A callback that tells the Mp4 parser to treat the body of a box as a series * of boxes. The number of boxes is limited by the size of the parent box. */ static children (box : shaka.extern.ParsedBox ) : any ; /** * Find the header size of the box. * Useful for modifying boxes in place or finding the exact offset of a field. */ static headerSize (box : shaka.extern.ParsedBox ) : number ; /** * A callback that tells the Mp4 parser to treat the body of a box as a sample * description. A sample description box has a fixed number of children. The * number of children is represented by a 4 byte unsigned integer. Each child * is a box. */ static sampleDescription (box : shaka.extern.ParsedBox ) : any ; /** * Convert an integer type from a box into an ascii string name. * Useful for debugging. * @param type The type of the box, a uint32. */ static typeToString (type : number ) : string ; /** * A callback that tells the Mp4 parser to treat the body of a box as a visual * sample entry. A visual sample entry has some fixed-sized fields * describing the video codec parameters, followed by an arbitrary number of * appended children. Each child is a box. */ static visualSampleEntry (box : shaka.extern.ParsedBox ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util.Mp4Parser { type CallbackType = (a : shaka.extern.ParsedBox ) => any ; } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util { /** * A utility to combine streams across periods. */ class PeriodCombiner implements shaka.util.IReleasable { private noStructuralTyping_shaka_util_PeriodCombiner : any; combinePeriods (periods : shaka.extern.Period [] , isDynamic : boolean , isPatchUpdate ? : boolean ) : Promise < any > ; /** * Deletes a stream from matchedStreams because it is no longer needed */ deleteStream (stream : shaka.extern.Stream | null , periodId : string ) : any ; getImageStreams ( ) : shaka.extern.Stream [] ; getTextStreams ( ) : shaka.extern.Stream [] ; getVariants ( ) : shaka.extern.Variant [] ; release ( ) : any ; setAllowMultiTypeVariants (allowed : boolean ) : any ; setUseStreamOnce (useOnce : boolean ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util { class PlayerConfiguration { private noStructuralTyping_shaka_util_PlayerConfiguration : any; static createDefault ( ) : shaka.extern.PlayerConfiguration ; static createDefaultForLL ( ) : object ; /** * Merges the given configuration changes into the given destination. This * uses the default Player configurations as the template. */ static mergeConfigObjects (destination : shaka.extern.PlayerConfiguration , updates : object , template ? : shaka.extern.PlayerConfiguration ) : boolean ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util { class StreamUtils { private noStructuralTyping_shaka_util_StreamUtils : any; static meetsRestrictions (variant : shaka.extern.Variant , restrictions : shaka.extern.Restrictions , maxHwRes : shaka.extern.Resolution ) : boolean ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util { class StringUtils { private noStructuralTyping_shaka_util_StringUtils : any; /** * Creates a string from the given buffer, auto-detecting the encoding that is * being used. If it cannot detect the encoding, it will throw an exception. */ static fromBytesAutoDetect (data : ArrayBuffer | ArrayBufferView | null ) : string ; /** * Creates a string from the given buffer as UTF-16 encoding. * @param littleEndian true to read little endian, false to read big. * @param noThrow true to avoid throwing in cases where we may expect invalid input. If noThrow is true and the data has an odd length,it will be truncated. */ static fromUTF16 (data : ArrayBuffer | ArrayBufferView | null , littleEndian : boolean , noThrow ? : boolean ) : string ; /** * Creates a string from the given buffer as UTF-8 encoding. */ static fromUTF8 (data : ArrayBuffer | ArrayBufferView | null ) : string ; /** * Resets the fromCharCode method's implementation. * For debug use. */ static resetFromCharCode ( ) : any ; /** * Creates a ArrayBuffer from the given string, converting to UTF-16 encoding. */ static toUTF16 (str : string , littleEndian : boolean ) : ArrayBuffer ; /** * Creates a ArrayBuffer from the given string, converting to UTF-8 encoding. */ static toUTF8 (str : string ) : ArrayBuffer ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util { /** * A timer allows a single function to be executed at a later time or at * regular intervals. */ class Timer { private noStructuralTyping_shaka_util_Timer : any; constructor (onTick : ( ) => any ) ; /** * Stop the timer and clear the previous behaviour. The timer is still usable * after calling |stop|. */ stop ( ) : any ; /** * Have the timer call |onTick| after |seconds| has elapsed unless |stop| is * called first. */ tickAfter (seconds : number ) : shaka.util.Timer ; /** * Have the timer call |onTick| every |seconds| until |stop| is called. */ tickEvery (seconds : number ) : shaka.util.Timer ; /** * Have the timer call |onTick| now. */ tickNow ( ) : shaka.util.Timer ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util { class TsParser { private noStructuralTyping_shaka_util_TsParser : any; /** * Clear previous data */ clearData ( ) : any ; /** * Return the audio data */ getAudioData ( ) : shaka.extern.MPEG_PES [] ; /** * Return the audio and video codecs */ getCodecs ( ) : { audio : string | null , video : string | null } ; /** * Return the ID3 metadata */ getMetadata ( ) : shaka.extern.ID3Metadata [] ; /** * Return the start time for the audio and video */ getStartTime (contentType : string ) : number | null ; /** * Return the video data */ getVideoData (naluProcessing ? : boolean ) : shaka.extern.MPEG_PES [] ; /** * Return the video information */ getVideoInfo ( ) : { codec : string | null , frameRate : string | null , height : string | null , width : string | null } ; /** * Return the video data */ getVideoNalus ( ) : shaka.extern.VideoNalu [] ; /** * Return the video resolution */ getVideoResolution ( ) : { height : string | null , width : string | null } ; /** * Parse the given data */ parse (data : Uint8Array | null ) : shaka.util.TsParser ; /** * Parse AVC Nalus * The code is based on hls.js * Credit to https://github.com/video-dev/hls.js/blob/master/src/demux/tsdemuxer.ts */ parseAvcNalus (pes : shaka.extern.MPEG_PES , nextPes ? : shaka.extern.MPEG_PES | null ) : shaka.extern.VideoNalu [] ; /** * Parse AVC and HVC Nalus * The code is based on hls.js * Credit to https://github.com/video-dev/hls.js/blob/master/src/demux/tsdemuxer.ts */ parseNalus (pes : shaka.extern.MPEG_PES , lastInfo : { nalu : shaka.extern.VideoNalu | null , state : number | null } ) : shaka.extern.VideoNalu [] ; static Timescale : number ; /** * Check if the passed data corresponds to an MPEG2-TS */ static probe (data : Uint8Array | null ) : boolean ; /** * Returns the synchronization offset */ static syncOffset (data : Uint8Array | null ) : number ; } } // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js declare namespace shaka.util { class Uint8ArrayUtils { private noStructuralTyping_shaka_util_Uint8ArrayUtils : any; /** * Concatenate buffers. */ static concat ( ...varArgs : ( ArrayBuffer | ArrayBufferView ) [] ) : Uint8Array ; /** * Convert a base64 string to a Uint8Array. Accepts either the standard * alphabet or the alternate "base64url" alphabet. */ static fromBase64 (str : string ) : Uint8Array ; /** * Convert a hex string to a Uint8Array. */ static fromHex (str : string ) : Uint8Array ; /** * Convert a buffer to a base64 string. The output will always use the * alternate encoding/alphabet also known as "base64url". * @param padding If true, pad the output with equals signs. Defaults to true. */ static toBase64 (data : ArrayBuffer | ArrayBufferView , padding ? : boolean ) : string ; /** * Convert a buffer to a hex string. */ static toHex (data : ArrayBuffer | ArrayBufferView ) : string ; /** * Convert a buffer to a base64 string. The output will be standard * alphabet as opposed to base64url safe alphabet. */ static toStandardBase64 (data : ArrayBuffer | ArrayBufferView ) : string ; } } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/abortable.js declare namespace shaka.extern { /** * A representation of an abortable operation. Note that these are not * cancelable. Cancellation implies undoing what has been done so far, * whereas aborting only means that further work is stopped. */ interface IAbortableOperation < T > { /** * A Promise which represents the underlying operation. It is resolved when * the operation is complete, and rejected if the operation fails or is * aborted. Aborted operations should be rejected with a shaka.util.Error * object using the error code OPERATION_ABORTED. */ promise : Promise < T > ; /** * Can be called by anyone holding this object to abort the underlying * operation. This is not cancellation, and will not necessarily result in * any work being undone. abort() should return a Promise which is resolved * when the underlying operation has been aborted. The returned Promise * should never be rejected. */ abort ( ) : Promise < any > ; finally (onFinal : (a : boolean ) => any ) : shaka.extern.IAbortableOperation < T > ; } } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/abr_manager.js declare namespace shaka.extern { /** * An object which selects Streams from a set of possible choices. This also * watches for system changes to automatically adapt for the current streaming * requirements. For example, when the network slows down, this class is in * charge of telling the Player which streams to switch to in order to reduce * the required bandwidth. * * This class is given a set of streams to choose from when the Player starts * up. This class should store these and use them to make future decisions * about ABR. It is up to this class how those decisions are made. All the * Player will do is tell this class what streams to choose from. */ interface AbrManager { /** * Chooses one variant to switch to. Called by the Player. */ chooseVariant ( ) : shaka.extern.Variant ; /** * Sets the ABR configuration. * * It is the responsibility of the AbrManager implementation to implement the * restrictions behavior described in shaka.extern.AbrConfiguration. */ configure (config : shaka.extern.AbrConfiguration ) : any ; /** * Disables automatic Stream suggestions. After this, the AbrManager may not * call switchCallback(). */ disable ( ) : any ; /** * Enables automatic Variant choices from the last ones passed to setVariants. * After this, the AbrManager may call switchCallback() at any time. */ enable ( ) : any ; /** * Gets an estimate of the current bandwidth in bit/sec. This is used by the * Player to generate stats. */ getBandwidthEstimate ( ) : number ; /** * Initializes the AbrManager. */ init (switchCallback : shaka.extern.AbrManager.SwitchCallback ) : any ; /** * Updates manager playback rate. */ playbackRateChanged (rate : number ) : any ; /** * Request that this object release all internal references. */ release ( ) : any ; /** * Notifies the AbrManager that a segment has been downloaded (includes MP4 * SIDX data, WebM Cues data, initialization segments, and media segments). * @param deltaTimeMs The duration, in milliseconds, that the request took to complete. * @param numBytes The total number of bytes transferred. * @param allowSwitch Indicate if the segment is allowed to switch to another stream. * @param request A reference to the request */ segmentDownloaded (deltaTimeMs : number , numBytes : number , allowSwitch : boolean , request ? : shaka.extern.Request ) : any ; /** * Set CMSD manager. */ setCmsdManager (cmsdManager : shaka.util.CmsdManager | null ) : any ; /** * Set media element. */ setMediaElement (mediaElement : HTMLMediaElement | null ) : any ; /** * Updates manager's variants collection. */ setVariants (variants : shaka.extern.Variant [] ) : any ; /** * Stops any background timers and frees any objects held by this instance. * This will only be called after a call to init. */ stop ( ) : any ; /** * Notifies the ABR that it is a time to suggest new streams. This is used by * the Player when it finishes adding the last partial segment of a fast * switching stream. */ trySuggestStreams ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/abr_manager.js declare namespace shaka.extern.AbrManager { /** * A factory for creating the abr manager. */ type Factory = ( ) => shaka.extern.AbrManager ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/abr_manager.js declare namespace shaka.extern.AbrManager { /** * A callback into the Player that should be called when the AbrManager decides * it's time to change to a different variant. * * The first argument is a variant to switch to. * * The second argument is an optional boolean. If true, all data will be removed * from the buffer, which will result in a buffering event. Unless a third * argument is passed. * * The third argument in an optional number that specifies how much data (in * seconds) should be retained when clearing the buffer. This can help achieve * a fast switch that doesn't involve a buffering event. A minimum of two video * segments should always be kept buffered to avoid temporary hiccups. */ type SwitchCallback = (a : shaka.extern.Variant , b ? : boolean , c ? : number ) => any ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/ads.js declare namespace shaka.extern { type AdCuePoint = { end : number | null , start : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/ads.js declare namespace shaka.extern { type AdInterstitial = { canJump : boolean , endTime : number | null , groupId : string | null , id : string | null , isSkippable : boolean , loop : boolean , mimeType : string | null , once : boolean , overlay : shaka.extern.AdInterstitialOverlay | null , playoutLimit : number | null , post : boolean , pre : boolean , resumeOffset : number | null , skipFor : number | null , skipOffset : number | null , startTime : number , timelineRange : boolean , uri : string } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/ads.js declare namespace shaka.extern { type AdInterstitialOverlay = { size : { x : number , y : number } , topLeft : { x : number , y : number } , viewport : { x : number , y : number } } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/ads.js declare namespace shaka.extern { type AdsStats = { averageLoadTime : number , errors : number , loadTimes : number [] , playedCompletely : number , skipped : number , started : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/ads.js declare namespace shaka.extern { /** * Interface for Ad objects. */ interface IAd extends shaka.util.IReleasable { canSkipNow ( ) : boolean ; getAdId ( ) : string ; getAdvertiserName ( ) : string ; getCreativeAdId ( ) : string ; getDescription ( ) : string ; getDuration ( ) : number ; getMediaUrl ( ) : string | null ; /** * Gets the minimum suggested duration. Defaults to being equivalent to * getDuration() for server-side ads. */ getMinSuggestedDuration ( ) : number ; getPodIndex ( ) : number ; getPositionInSequence ( ) : number ; getRemainingTime ( ) : number ; getSequenceLength ( ) : number ; getTimeOffset ( ) : number ; getTimeUntilSkippable ( ) : number ; getTitle ( ) : string ; getVastMediaBitrate ( ) : number ; getVastMediaHeight ( ) : number ; getVastMediaWidth ( ) : number ; getVolume ( ) : number ; isClientRendering ( ) : boolean ; isLinear ( ) : boolean ; isMuted ( ) : boolean ; isPaused ( ) : boolean ; isSkippable ( ) : boolean ; isUsingAnotherMediaElement ( ) : boolean ; needsSkipUI ( ) : boolean ; pause ( ) : any ; play ( ) : any ; resize (width : number , height : number ) : any ; setMuted (muted : boolean ) : any ; setVolume (volume : number ) : any ; skip ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/ads.js declare namespace shaka.extern { /** * An object that's responsible for all the ad-related logic * in the player. */ interface IAdManager extends EventTarget { addAdUrlInterstitial (url : string ) : Promise < any > ; addCustomInterstitial (interstitial : shaka.extern.AdInterstitial ) : any ; addMediaTailorTrackingUrl (url : string ) : any ; /** * Called by the Player to provide an updated configuration any time it * changes. * Must be called at least once before init*(). */ configure (config : shaka.extern.AdsConfiguration ) : any ; getCuePoints ( ) : shaka.extern.AdCuePoint [] ; getInterstitialPlayer ( ) : shaka.Player | null ; getServerSideCuePoints ( ) : shaka.extern.AdCuePoint [] ; /** * Get statistics for the current playback session. If the player is not * playing content, this will return an empty stats object. */ getStats ( ) : any ; initClientSide (adContainer : HTMLElement , video : HTMLMediaElement , adsRenderingSettings : any | null ) : any ; initInterstitial (adContainer : HTMLElement | null , basePlayer : shaka.Player , baseVideo : HTMLMediaElement ) : any ; initMediaTailor (adContainer : HTMLElement , networkingEngine : shaka.net.NetworkingEngine , video : HTMLMediaElement ) : any ; initServerSide (adContainer : HTMLElement , video : HTMLMediaElement ) : any ; onAssetUnload ( ) : any ; onCueMetadataChange (value : shaka.extern.MetadataFrame ) : any ; onDASHInterstitialMetadata (basePlayer : shaka.Player , baseVideo : HTMLMediaElement , region : shaka.extern.TimelineRegionInfo ) : any ; onDashTimedMetadata (region : shaka.extern.TimelineRegionInfo ) : any ; onHLSInterstitialMetadata (basePlayer : shaka.Player , baseVideo : HTMLMediaElement , interstitial : shaka.extern.HLSInterstitial ) : any ; onHlsTimedMetadata (metadata : shaka.extern.ID3Metadata , timestampOffset : number ) : any ; /** * Fired when the manifest is updated. */ onManifestUpdated (isLive : boolean ) : any ; release ( ) : any ; replaceServerSideAdTagParameters (adTagParameters : object | null ) : any ; requestClientSideAds (imaRequest : any ) : any ; requestMediaTailorStream (url : string , adsParams : object | null , backupUrl ? : string ) : Promise < string > ; requestServerSideStream (imaRequest : any , backupUrl ? : string ) : Promise < string > ; setLocale (locale : string ) : any ; updateClientSideAdsRenderingSettings (adsRenderingSettings : any ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/ads.js declare namespace shaka.extern.IAdManager { /** * A factory for creating the ad manager. */ type Factory = ( ) => shaka.extern.IAdManager ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/cea.js declare namespace shaka.extern { type CaptionDecoderPlugin = ( ) => shaka.extern.ICaptionDecoder ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/cea.js declare namespace shaka.extern { type CeaParserPlugin = ( ) => shaka.extern.ICeaParser ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/cea.js declare namespace shaka.extern { /** * Interface for decoding inband closed captions from packets. */ interface ICaptionDecoder { /** * Clears the decoder state completely. * Should be used when an action renders the decoder state invalid, * e.g. unbuffered seeks. */ clear ( ) : any ; /** * Decodes all currently extracted packets and then clears them. * This should be called once for a set of extracts (see comment on extract). */ decode ( ) : shaka.extern.ICaptionDecoder.ClosedCaption [] ; /** * Extracts packets and prepares them for decoding. In a given media fragment, * all the caption packets found in its SEI messages should be extracted by * successive calls to extract(), followed by a single call to decode(). * @param userDataSeiMessage This is a User Data registered by Rec.ITU-T T.35 SEI message. It is described in sections D.1.6 and D.2.6 of Rec. ITU-T H.264 (06/2019). * @param pts PTS when this packet was received, in seconds. */ extract (userDataSeiMessage : Uint8Array , pts : number ) : any ; /** * Returns the streams that the CEA decoder found. */ getStreams ( ) : string [] ; } } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/cea.js declare namespace shaka.extern.ICaptionDecoder { /** * Parsed Cue. */ type ClosedCaption = { cue : shaka.text.Cue , stream : string } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/cea.js declare namespace shaka.extern { /** * Interface for parsing inband closed caption data from MP4 streams. */ interface ICeaParser { /** * Initializes the parser with init segment data. * @param initSegment init segment to parse. */ init (initSegment : ArrayBuffer | ArrayBufferView ) : any ; /** * Parses the stream and extracts closed captions packets. * @param mediaSegment media segment to parse. */ parse (mediaSegment : ArrayBuffer | ArrayBufferView ) : shaka.extern.ICeaParser.CaptionPacket [] ; } } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/cea.js declare namespace shaka.extern.ICeaParser { type CaptionPacket = { packet : Uint8Array , pts : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/codecs.js declare namespace shaka.extern { type MPEG_PES = { data : Uint8Array , dts : number | null , nalus : shaka.extern.VideoNalu [] , packetLength : number , pts : number | null } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/codecs.js declare namespace shaka.extern { type SpatialVideoInfo = { hfov : number | null , projection : string | null } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/codecs.js declare namespace shaka.extern { type VideoNalu = { data : Uint8Array , fullData : Uint8Array , time : number | null , type : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/codecs.js declare namespace shaka.extern { type VideoSample = { data : Uint8Array , dts : number | null , frame : boolean , isKeyframe : boolean , nalus : shaka.extern.VideoNalu [] , pts : number | null } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/drm_info.js declare namespace shaka.extern { type DrmInfo = { audioRobustness : string , distinctiveIdentifierRequired : boolean , encryptionScheme : string , initData : shaka.extern.InitDataOverride [] | null , keyIds : Set < string > | null , keySystem : string , keySystemUris ? : Set < string > | null , licenseServerUri : string , persistentStateRequired : boolean , serverCertificate : Uint8Array | null , serverCertificateUri : string , sessionType : string , videoRobustness : string } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/drm_info.js declare namespace shaka.extern { type InitDataOverride = { initData : Uint8Array , initDataType : string , keyId : string | null } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/error.js declare namespace shaka.extern { interface Error { category : shaka.util.Error.Category ; code : shaka.util.Error.Code ; data : any [] ; handled : boolean ; severity : shaka.util.Error.Severity ; } } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/error.js declare namespace shaka.extern { type RestrictionInfo = { hasAppRestrictions : boolean , missingKeys : string [] , restrictedKeyStatuses : string [] } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js declare namespace shaka.extern { /** * Creates a SegmentIndex; returns a Promise that resolves after the * SegmentIndex has been created. */ type CreateSegmentIndexFunction = ( ) => Promise < any > ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js declare namespace shaka.extern { /** * A function that fetches the crypto keys for AES-128. * Returns a promise that resolves when the keys have been fetched. */ type FetchCryptoKeysFunction = ( ) => Promise < any > ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js declare namespace shaka.extern { type Manifest = { gapCount : number , ignoreManifestTimestampsInSegmentsMode : boolean , imageStreams : shaka.extern.Stream [] , isLowLatency : boolean , nextUrl : string | null , offlineSessionIds : string [] , periodCount : number , presentationTimeline : shaka.media.PresentationTimeline , sequenceMode : boolean , serviceDescription : shaka.extern.ServiceDescription | null , startTime : number | null , textStreams : shaka.extern.Stream [] , type : string , variants : shaka.extern.Variant [] } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js declare namespace shaka.extern { type MssPrivateData = { codecPrivateData : string | null , duration : number , timescale : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js declare namespace shaka.extern { type Period = { audioStreams : shaka.extern.Stream [] , id : string , imageStreams : shaka.extern.Stream [] , textStreams : shaka.extern.Stream [] , videoStreams : shaka.extern.Stream [] } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js declare namespace shaka.extern { /** * SegmentIndex minimal API. */ interface SegmentIndex { /** * Finds the position of the segment for the given time, in seconds, relative * to the start of the presentation. Returns the position of the segment * with the largest end time if more than one segment is known for the given * time. */ find (time : number ) : number | null ; /** * Gets the SegmentReference for the segment at the given position. * @param position The position of the segment as returned by find(). */ get (position : number ) : shaka.media.SegmentReference | null ; /** * Gets number of already evicted segments. */ getNumEvicted ( ) : number ; /** * Get number of references. */ getNumReferences ( ) : number ; } } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js declare namespace shaka.extern { type ServiceDescription = { maxLatency : number | null , maxPlaybackRate : number | null , minLatency : number | null , minPlaybackRate : number | null , targetLatency : number | null } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js declare namespace shaka.extern { type Stream = { accessibilityPurpose : shaka.media.ManifestParser.AccessibilityPurpose | null , audioSamplingRate : number | null , bandwidth ? : number , channelsCount : number | null , closeSegmentIndex ? : ( ) => any , closedCaptions : Map < string , string > | null , codecs : string , colorGamut ? : string , createSegmentIndex : shaka.extern.CreateSegmentIndexFunction , drmInfos : shaka.extern.DrmInfo [] , emsgSchemeIdUris : string [] | null , encrypted : boolean , external : boolean , fastSwitching : boolean , forced : boolean , frameRate ? : number , fullMimeTypes : Set < string > , groupId : string | null , hdr ? : string , height ? : number , id : number , isAudioMuxedInVideo : boolean , keyIds : Set < string > , kind ? : string , label : string | null , language : string , matchedStreams ? : any [] , mimeType : string , mssPrivateData ? : shaka.extern.MssPrivateData , originalId : string | null , originalLanguage : string | null , pixelAspectRatio ? : string , primary : boolean , roles : string [] , segmentIndex : shaka.media.SegmentIndex | null , spatialAudio : boolean , tilesLayout ? : string , trickModeVideo : any , type : string , videoLayout ? : string , width ? : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js declare namespace shaka.extern { type ThumbnailSprite = { height : number , positionX : number , positionY : number , width : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js declare namespace shaka.extern { type Variant = { allowedByApplication : boolean , allowedByKeySystem : boolean , audio : shaka.extern.Stream | null , bandwidth : number , decodingInfos : ( any | null ) [] , disabledUntilTime : number , id : number , language : string , primary : boolean , video : shaka.extern.Stream | null } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js declare namespace shaka.extern { type aesKey = { bitsKey : number , blockCipherMode : string , cryptoKey ? : webCrypto.CryptoKey | null , fetchKey ? : shaka.extern.CreateSegmentIndexFunction , firstMediaSequenceNumber : number , iv ? : Uint8Array } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest_parser.js declare namespace shaka.extern { /** * Parses media manifests and handles manifest updates. * * Given a URI where the initial manifest is found, a parser will request the * manifest, parse it, and return the resulting Manifest object. * * If the manifest requires updates (e.g. for live media), the parser will use * background timers to update the same Manifest object. * * There are many ways for |start| and |stop| to be called. Implementations * should support all cases: * * BASIC * await parser.start(uri, playerInterface); * await parser.stop(); * * INTERRUPTING * const p = parser.start(uri, playerInterface); * await parser.stop(); * await p; * * |p| should be rejected with an OPERATION_ABORTED error. * * STOPPED BEFORE STARTING * await parser.stop(); */ interface ManifestParser { /** * Tells the parser that a location should be banned. This is called on * retry. */ banLocation (uri : string ) : any ; /** * Called by the Player to provide an updated configuration any time the * configuration changes. Will be called at least once before start(). */ configure (config : shaka.extern.ManifestConfiguration , isPreloadFn ? : ( ) => boolean ) : any ; /** * Tells the parser that the expiration time of an EME session has changed. * Implementing this is optional. */ onExpirationUpdated (sessionId : string , expiration : number ) : any ; /** * Tells the parser that the initial variant has been chosen. */ onInitialVariantChosen (variant : shaka.extern.Variant ) : any ; /** * Set media element. */ setMediaElement (mediaElement : HTMLMediaElement | null ) : any ; /** * Initialize and start the parser. When |start| resolves, it should return * the initial version of the manifest. |start| will only be called once. If * |stop| is called while |start| is pending, |start| should reject. * @param uri The URI of the manifest. * @param playerInterface The player interface contains the callbacks and members that the parser can use to communicate with the player and outside world. */ start (uri : string , playerInterface : shaka.extern.ManifestParser.PlayerInterface ) : Promise < shaka.extern.Manifest > ; /** * Tell the parser that it must stop and free all internal resources as soon * as possible. Only once all internal resources are stopped and freed will * the promise resolve. Once stopped a parser will not be started again. * * The parser should support having |stop| called multiple times and the * promise should always resolve. */ stop ( ) : Promise < any > ; /** * Tells the parser to do a manual manifest update. Implementing this is * optional. This is only called when 'emsg' boxes are present. */ update ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest_parser.js declare namespace shaka.extern.ManifestParser { /** * A factory for creating the manifest parser. This function is registered with * shaka.media.ManifestParser to create parser instances. */ type Factory = ( ) => shaka.extern.ManifestParser ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest_parser.js declare namespace shaka.extern.ManifestParser { type PlayerInterface = { addFont : (a : string , b : string ) => any , disableStream : (a : shaka.extern.Stream ) => any , filter : (a : shaka.extern.Manifest ) => Promise < any > , getBandwidthEstimate : ( ) => number , isLowLatencyMode : ( ) => boolean , makeTextStreamsForClosedCaptions : (a : shaka.extern.Manifest ) => any , networkingEngine : shaka.net.NetworkingEngine , newDrmInfo : (a : shaka.extern.Stream ) => any , onError : (a : shaka.util.Error ) => any , onEvent : shaka.util.EventManager.ListenerType , onManifestUpdated : ( ) => any , onMetadata : (a : string , b : number , c : number | null , d : shaka.extern.MetadataFrame [] ) => any , onTimelineRegionAdded : (a : shaka.extern.TimelineRegionInfo ) => any , updateDuration : ( ) => any } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/mp4_parser.js declare namespace shaka.extern { type ParsedBox = { flags : number | null , has64BitSize : boolean , name : string , parser : shaka.util.Mp4Parser , partialOkay : boolean , reader : shaka.util.DataViewReader , size : number , start : number , version : number | null } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/net.js declare namespace shaka.extern { type HeadersReceived = (a : { [ key: string ]: string } ) => any ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/net.js declare namespace shaka.extern { type ProgressUpdated = (a : number , b : number , c : number ) => any ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/net.js declare namespace shaka.extern { type Request = { allowCrossSiteCredentials : boolean , body : ArrayBuffer | ArrayBufferView | null , contentType ? : string | null , drmInfo : shaka.extern.DrmInfo | null , headers : { [ key: string ]: string } , initData : Uint8Array | null , initDataType : string | null , licenseRequestType : string | null , method : string , packetNumber ? : number | null , requestStartTime ? : number | null , retryParameters : shaka.extern.RetryParameters , sessionId : string | null , streamDataCallback : ( (a : ArrayBuffer | ArrayBufferView ) => Promise < any > ) | null , timeToFirstByte ? : number | null , uris : string [] } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/net.js declare namespace shaka.extern { type RequestContext = { isPreload ? : boolean , segment ? : shaka.media.SegmentReference | null , stream ? : shaka.extern.Stream , type ? : shaka.net.NetworkingEngine.AdvancedRequestType } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/net.js declare namespace shaka.extern { /** * Defines a filter for requests. This filter takes the request and modifies * it before it is sent to the scheme plugin. * The RequestType describes the basic type of the request (manifest, segment, * etc). The optional RequestContext will be provided where applicable to * provide additional information about the request. A request filter can run * asynchronously by returning a promise; in this case, the request will not be * sent until the promise is resolved. */ type RequestFilter = (a : shaka.net.NetworkingEngine.RequestType , b : shaka.extern.Request , c ? : shaka.extern.RequestContext ) => Promise < any > | void ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/net.js declare namespace shaka.extern { type Response = { data : ArrayBuffer | ArrayBufferView , fromCache ? : boolean , headers : { [ key: string ]: string } , originalRequest : shaka.extern.Request , originalUri : string , status ? : number , timeMs ? : number , uri : string } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/net.js declare namespace shaka.extern { /** * Defines a filter for responses. This filter takes the response and modifies * it before it is returned. * The RequestType describes the basic type of the request (manifest, segment, * etc). The optional RequestContext will be provided where applicable to * provide additional information about the request. A response filter can run * asynchronously by returning a promise. */ type ResponseFilter = (a : shaka.net.NetworkingEngine.RequestType , b : shaka.extern.Response , c ? : shaka.extern.RequestContext ) => Promise < any > | void ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/net.js declare namespace shaka.extern { type RetryParameters = { backoffFactor : number , baseDelay : number , connectionTimeout : number , fuzzFactor : number , maxAttempts : number , stallTimeout : number , timeout : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/net.js declare namespace shaka.extern { type SchemePlugin = (a : string , b : shaka.extern.Request , c : shaka.net.NetworkingEngine.RequestType , d : shaka.extern.ProgressUpdated , e : shaka.extern.HeadersReceived , f : shaka.extern.SchemePluginConfig ) => shaka.extern.IAbortableOperation < shaka.extern.Response > ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/net.js declare namespace shaka.extern { type SchemePluginConfig = { minBytesForProgressEvents ? : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline.js declare namespace shaka.extern { type EmeSessionDB = { audioCapabilities : { contentType : string , robustness : string } [] , keySystem : string , licenseUri : string , serverCertificate : Uint8Array | null , sessionId : string , videoCapabilities : { contentType : string , robustness : string } [] } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline.js declare namespace shaka.extern { /** * Similar to storage cells (shaka.extern.StorageCell), an EmeSessionStorageCell * stores data persistently. This only stores the license's session info, not * the license itself. The license itself is stored using EME. */ interface EmeSessionStorageCell { /** * Adds the given sessions to the store. */ add (sessions : shaka.extern.EmeSessionDB [] ) : Promise < any > ; /** * Free all resources used by this cell. This won't affect the stored content. */ destroy ( ) : Promise < any > ; /** * Gets the currently stored sessions. */ getAll ( ) : Promise < shaka.extern.EmeSessionDB [] > ; /** * Removes the given session IDs from the store. */ remove (sessionIds : string [] ) : Promise < any > ; } } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline.js declare namespace shaka.extern { type ManifestDB = { appMetadata : object | null , creationTime : number , drmInfo : shaka.extern.DrmInfo | null , duration : number , expiration : number , isIncomplete ? : boolean , originalManifestUri : string , sequenceMode ? : boolean , sessionIds : string [] , size : number , streams : shaka.extern.StreamDB [] , type ? : string } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline.js declare namespace shaka.extern { type OfflineSupport = { basic : boolean , encrypted : { [ key: string ]: boolean } } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline.js declare namespace shaka.extern { type SegmentDB = { appendWindowEnd : number , appendWindowStart : number , codecs : string | null , dataKey : number , endTime : number , initSegmentKey : number | null , mimeType : string | null , pendingInitSegmentRefId ? : string , pendingSegmentRefId ? : string , startTime : number , thumbnailSprite : shaka.media.SegmentReference.ThumbnailSprite | null , tilesLayout : string | null , timestampOffset : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline.js declare namespace shaka.extern { type SegmentDataDB = { data : ArrayBuffer } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline.js declare namespace shaka.extern { /** * An interface that defines access to collection of segments and manifests. All * methods are designed to be batched operations allowing the implementations to * optimize their operations based on how they store data. * * The storage cell is one of two exposed APIs used to control where and how * offline content is saved. The storage cell is responsible for converting * information between its internal structures and the external (library) * structures. */ interface StorageCell { /** * Add a group of manifests. Will return a promise that resolves with a list * of keys for each manifest. If one manifest fails to be added, all manifests * should fail to be added. */ addManifests (manifests : shaka.extern.ManifestDB [] ) : Promise < number [] > ; /** * Add a group of segments. Will return a promise that resolves with a list * of keys for each segment. If one segment fails to be added, all segments * should fail to be added. */ addSegments (segments : shaka.extern.SegmentDataDB [] ) : Promise < number [] > ; /** * Free all resources used by this cell. This should not affect the stored * content. */ destroy ( ) : Promise < any > ; /** * Get all manifests stored in this cell. Since manifests are small compared * to the asset they describe, it is assumed that it is feasible to have them * all in main memory at one time. */ getAllManifests ( ) : Promise < Map < number , shaka.extern.ManifestDB > > ; /** * Get a group of manifests using their keys to identify them. If any key is * not found, the promise chain will be rejected. */ getManifests (keys : number [] ) : Promise < shaka.extern.ManifestDB [] > ; /** * Get a group of segments using their keys to identify them. If any key is * not found, the promise chain will be rejected. */ getSegments (keys : number [] ) : Promise < shaka.extern.SegmentDataDB [] > ; /** * Check if the cell can support new keys. If a cell has a fixed key space, * then all add-operations will fail as no new keys can be added. All * remove-operations and update-operations should still work. */ hasFixedKeySpace ( ) : boolean ; /** * Remove a group of manifests using their keys to identify them. If a key * is not found, then that removal should be considered successful. * @param onRemove A callback for when a manifest is removed from the cell. The key of the manifest will be passed to the callback. */ removeManifests (keys : number [] , onRemove : (a : number ) => any ) : Promise < any > ; /** * Remove a group of segments using their keys to identify them. If a key * is not found, then that removal should be considered successful. * @param onRemove A callback for when a segment is removed from the cell. The key of the segment will be passed to the callback. */ removeSegments (keys : number [] , onRemove : (a : number ) => any ) : Promise < any > ; /** * Updates the given manifest, stored at the given key. */ updateManifest (key : number , manifest : shaka.extern.ManifestDB ) : Promise < any > ; /** * Replace the expiration time of the manifest stored under |key| with * |newExpiration|. If no manifest is found under |key| then this should * act as a no-op. */ updateManifestExpiration (key : number , expiration : number ) : Promise < any > ; } } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline.js declare namespace shaka.extern { /** * Storage mechanisms are one of two exported storage APIs. Storage mechanisms * are groups of storage cells (shaka.extern.StorageCell). Storage mechanisms * are responsible for managing the life cycle of resources shared between * storage cells in the same block. * * For example, a storage mechanism may manage a single database connection * while each cell would manage different tables in the database via the same * connection. */ interface StorageMechanism { /** * Free all resources used by the storage mechanism and its cells. This should * not affect the stored content. */ destroy ( ) : Promise < any > ; /** * Erase all content from storage and leave storage in an empty state. Erase * may be called with or without |init|. This allows for storage to be wiped * in case of a version mismatch. * * After calling |erase|, the mechanism will be in an initialized state. */ erase ( ) : Promise < any > ; /** * Get a map of all the cells managed by the storage mechanism. Editing the * map should have no effect on the storage mechanism. The map key is the * cell's address in the mechanism and should be consistent between calls to * |getCells|. */ getCells ( ) : Map < string , shaka.extern.StorageCell > ; /** * Get the current EME session storage cell. */ getEmeSessionCell ( ) : shaka.extern.EmeSessionStorageCell ; /** * Initialize the storage mechanism for first use. This should only be called * once. Calling |init| multiple times has an undefined behaviour. */ init ( ) : Promise < any > ; } } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline.js declare namespace shaka.extern { type StoredContent = { appMetadata : object | null , duration : number , expiration : number , isIncomplete : boolean , offlineUri : string | null , originalManifestUri : string , size : number , tracks : shaka.extern.TrackList } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline.js declare namespace shaka.extern { type StreamDB = { audioSamplingRate : number | null , channelsCount : number | null , closedCaptions : Map < string , string > | null , codecs : string , colorGamut ? : string , encrypted : boolean , external : boolean , fastSwitching : boolean , forced : boolean , frameRate ? : number , groupId : string | null , hdr ? : string , height : number | null , id : number , isAudioMuxedInVideo : boolean , keyIds : Set < string > , kind ? : string , label : string | null , language : string , mimeType : string , mssPrivateData ? : shaka.extern.MssPrivateData , originalId : string | null , originalLanguage ? : string | null , pixelAspectRatio ? : string , primary : boolean , roles : string [] , segments : shaka.extern.SegmentDB [] , spatialAudio : boolean , tilesLayout ? : string , type : string , variantIds : number [] , videoLayout ? : string , width : number | null } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline_compat_v1.js declare namespace shaka.extern { type ManifestDBV1 = { appMetadata : object | null , drmInfo : shaka.extern.DrmInfo | null , duration : number , expiration : number , key : number , originalManifestUri : string , periods : shaka.extern.PeriodDBV1 [] , sessionIds : string [] , size : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline_compat_v1.js declare namespace shaka.extern { type PeriodDBV1 = { startTime : number , streams : shaka.extern.StreamDBV1 [] } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline_compat_v1.js declare namespace shaka.extern { type SegmentDBV1 = { endTime : number , startTime : number , uri : string } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline_compat_v1.js declare namespace shaka.extern { type SegmentDataDBV1 = { data : ArrayBuffer , key : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline_compat_v1.js declare namespace shaka.extern { type StreamDBV1 = { codecs : string , contentType : string , encrypted : boolean , frameRate ? : number , height : number | null , id : number , initSegmentUri : string | null , keyId : string | null , kind ? : string , label : string | null , language : string , mimeType : string , presentationTimeOffset : number , primary : boolean , segments : shaka.extern.SegmentDBV1 [] , variantIds : number [] , width : number | null } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline_compat_v2.js declare namespace shaka.extern { type ManifestDBV2 = { appMetadata : object | null , drmInfo : shaka.extern.DrmInfo | null , duration : number , expiration : number , originalManifestUri : string , periods : shaka.extern.PeriodDBV2 [] , sessionIds : string [] , size : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline_compat_v2.js declare namespace shaka.extern { type PeriodDBV2 = { startTime : number , streams : shaka.extern.StreamDBV2 [] } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline_compat_v2.js declare namespace shaka.extern { type SegmentDBV2 = { dataKey : number , endTime : number , startTime : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline_compat_v2.js declare namespace shaka.extern { type SegmentDataDBV2 = { data : ArrayBuffer } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline_compat_v2.js declare namespace shaka.extern { type StreamDBV2 = { codecs : string , contentType : string , encrypted : boolean , frameRate ? : number , height : number | null , id : number , initSegmentKey : number | null , keyId : string | null , kind ? : string , label : string | null , language : string , mimeType : string , originalId : string | null , pixelAspectRatio ? : string , presentationTimeOffset : number , primary : boolean , segments : shaka.extern.SegmentDBV2 [] , variantIds : number [] , width : number | null } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type AbrConfiguration = { advanced : shaka.extern.AdvancedAbrConfiguration , bandwidthDowngradeTarget : number , bandwidthUpgradeTarget : number , cacheLoadThreshold : number , clearBufferSwitch : boolean , defaultBandwidthEstimate : number , enabled : boolean , ignoreDevicePixelRatio : boolean , minTimeToSwitch : number , preferNetworkInformationBandwidth : boolean , restrictToElementSize : boolean , restrictToScreenSize : boolean , restrictions : shaka.extern.Restrictions , safeMarginSwitch : number , switchInterval : number , useNetworkInformation : boolean } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type AdsConfiguration = { customPlayheadTracker : boolean , disableDASHInterstitial : boolean , disableHLSInterstitial : boolean , skipPlayDetection : boolean , supportsMultipleMediaElements : boolean } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type AdvancedAbrConfiguration = { fastHalfLife : number , minBytes : number , minTotalBytes : number , slowHalfLife : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type AdvancedDrmConfiguration = { audioRobustness : string [] | null , distinctiveIdentifierRequired : boolean , headers : { [ key: string ]: string } , individualizationServer : string , persistentStateRequired : boolean , serverCertificate : Uint8Array | null , serverCertificateUri : string , sessionType : string , videoRobustness : string [] | null } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type BufferedInfo = { audio : shaka.extern.BufferedRange [] , text : shaka.extern.BufferedRange [] , total : shaka.extern.BufferedRange [] , video : shaka.extern.BufferedRange [] } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type BufferedRange = { end : number , start : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type Chapter = { endTime : number , id : string , startTime : number , title : string } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type CmcdConfiguration = { contentId : string , enabled : boolean , includeKeys : string [] , rtpSafetyFactor : number , sessionId : string , useHeaders : boolean , version : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type CmsdConfiguration = { applyMaximumSuggestedBitrate : boolean , enabled : boolean , estimatedThroughputWeightRatio : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type DashManifestConfiguration = { autoCorrectDrift : boolean , clockSyncUri : string , disableXlinkProcessing : boolean , enableFastSwitching : boolean , ignoreDrmInfo : boolean , ignoreEmptyAdaptationSet : boolean , ignoreMaxSegmentDuration : boolean , ignoreMinBufferTime : boolean , ignoreSuggestedPresentationDelay : boolean , ignoreSupplementalCodecs : boolean , initialSegmentLimit : number , keySystemsByURI : { [ key: string ]: string } , manifestPreprocessor : (a : Element ) => any , manifestPreprocessorTXml : (a : shaka.extern.xml.Node ) => any , multiTypeVariantsAllowed : boolean , sequenceMode : boolean , updatePeriod : number , useStreamOnceInPeriodFlattening : boolean , xlinkFailGracefully : boolean } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type DrmConfiguration = { advanced : { [ key: string ]: shaka.extern.AdvancedDrmConfiguration } | null , clearKeys : { [ key: string ]: string } , defaultAudioRobustnessForWidevine : string , defaultVideoRobustnessForWidevine : string , delayLicenseRequestUntilPlayed : boolean , ignoreDuplicateInitData : boolean , initDataTransform ? : shaka.extern.InitDataTransform , keySystemsMapping : { [ key: string ]: string } , logLicenseExchange : boolean , minHdcpVersion : string , parseInbandPsshEnabled : boolean , persistentSessionOnlinePlayback : boolean , persistentSessionsMetadata : shaka.extern.PersistentSessionMetadata [] , preferredKeySystems : string [] , retryParameters : shaka.extern.RetryParameters , servers : { [ key: string ]: string } , updateExpirationTime : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type DrmSessionMetadata = { initData : Uint8Array | null , initDataType : string | null , sessionId : string , sessionType : string } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type DrmSupportType = { audioRobustnessLevels : string [] , encryptionSchemes : ( string | null ) [] , minHdcpVersions : string [] , persistentState : boolean , videoRobustnessLevels : string [] } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type DynamicTargetLatencyConfiguration = { enabled : boolean , maxAttempts : number , maxLatency : number , minLatency : number , rebufferIncrement : number , stabilityThreshold : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type EmsgInfo = { endTime : number , eventDuration : number , id : number , messageData : Uint8Array | null , presentationTimeDelta : number , schemeIdUri : string , startTime : number , timescale : number , value : string } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type ExtraText = { codecs ? : string , kind : string , language : string , mime : string , uri : string } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type HLSInterstitial = { endTime : number | null , startTime : number , values : shaka.extern.MetadataFrame [] } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type HlsManifestConfiguration = { allowLowLatencyByteRangeOptimization : boolean , defaultAudioCodec : string , defaultVideoCodec : string , disableClosedCaptionsDetection : boolean , disableCodecGuessing : boolean , ignoreImageStreamFailures : boolean , ignoreManifestProgramDateTime : boolean , ignoreManifestProgramDateTimeForTypes : string [] , ignoreManifestTimestampsInSegmentsMode : boolean , ignoreSupplementalCodecs : boolean , ignoreTextStreamFailures : boolean , liveSegmentsDelay : number , mediaPlaylistFullMimeType : string , sequenceMode : boolean , updatePeriod : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type ID3Metadata = { cueTime : number | null , data : Uint8Array , dts : number | null , frames : shaka.extern.MetadataFrame [] , pts : number | null } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type InitDataTransform = (a : Uint8Array , b : string , c : shaka.extern.DrmInfo | null ) => Uint8Array ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type LanguageRole = { label : string | null , language : string , role : string } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type LcevcConfiguration = { drawLogo : boolean , dynamicPerformanceScaling : boolean , enabled : boolean , logLevel : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type LiveSyncConfiguration = { dynamicTargetLatency : shaka.extern.DynamicTargetLatencyConfiguration , enabled : boolean , maxPlaybackRate : number , minPlaybackRate : number , panicMode : boolean , panicThreshold : number , targetLatency : number , targetLatencyTolerance : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type ManifestConfiguration = { availabilityWindowOverride : number , continueLoadingWhenPaused : boolean , dash : shaka.extern.DashManifestConfiguration , defaultPresentationDelay : number , disableAudio : boolean , disableIFrames : boolean , disableText : boolean , disableThumbnails : boolean , disableVideo : boolean , hls : shaka.extern.HlsManifestConfiguration , mss : shaka.extern.MssManifestConfiguration , raiseFatalErrorOnManifestUpdateRequestFailure : boolean , retryParameters : shaka.extern.RetryParameters , segmentRelativeVttTiming : boolean } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type MediaQualityInfo = { audioSamplingRate : number | null , bandwidth : number , channelsCount : number | null , codecs : string , contentType : string , frameRate : number | null , height : number | null , label : string | null , language : string | null , mimeType : string | null , pixelAspectRatio : string | null , roles : string [] | null , width : number | null } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type MediaSourceConfiguration = { addExtraFeaturesToSourceBuffer : (a : string ) => string , codecSwitchingStrategy : shaka.config.CodecSwitchingStrategy , dispatchAllEmsgBoxes : boolean , forceTransmux : boolean , insertFakeEncryptionInInit : boolean , modifyCueCallback : shaka.extern.TextParser.ModifyCueCallback } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type MetadataFrame = { data : ArrayBuffer | null | string | number , description : string , key : string , mimeType : string | null , pictureType : number | null } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type MetadataRawFrame = { data : Uint8Array | null , size : number , type : string } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type MssManifestConfiguration = { keySystemsBySystemId : { [ key: string ]: string } , manifestPreprocessor : (a : Element ) => any , manifestPreprocessorTXml : (a : shaka.extern.xml.Node ) => any , sequenceMode : boolean } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type OfflineConfiguration = { downloadSizeCallback : (a : number ) => Promise < boolean > , numberOfParallelDownloads : number , progressCallback : (a : shaka.extern.StoredContent , b : number ) => any , trackSelectionCallback : (a : shaka.extern.TrackList ) => Promise < shaka.extern.TrackList > , usePersistentLicense : boolean } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type PersistentSessionMetadata = { initData : Uint8Array | null , initDataType : string | null , sessionId : string } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type PlaybackInfo = { audio : shaka.extern.PlaybackStreamInfo | null , text : shaka.extern.PlaybackStreamInfo | null , video : shaka.extern.PlaybackStreamInfo | null } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type PlaybackStreamInfo = { bandwidth : number , codecs : string , height : number | null , mimeType : string , width : number | null } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type PlayerConfiguration = { abr : shaka.extern.AbrConfiguration , abrFactory : shaka.extern.AbrManager.Factory , adaptationSetCriteriaFactory : shaka.media.AdaptationSetCriteria.Factory , ads : shaka.extern.AdsConfiguration , autoShowText : shaka.config.AutoShowText , cmcd : shaka.extern.CmcdConfiguration , cmsd : shaka.extern.CmsdConfiguration , drm : shaka.extern.DrmConfiguration , ignoreHardwareResolution : boolean , lcevc : shaka.extern.LcevcConfiguration , manifest : shaka.extern.ManifestConfiguration , mediaSource : shaka.extern.MediaSourceConfiguration , offline : shaka.extern.OfflineConfiguration , playRangeEnd : number , playRangeStart : number , preferForcedSubs : boolean , preferSpatialAudio : boolean , preferredAudioChannelCount : number , preferredAudioCodecs : string [] , preferredAudioLabel : string , preferredAudioLanguage : string , preferredDecodingAttributes : string [] , preferredTextFormats : string [] , preferredTextLanguage : string , preferredTextRole : string , preferredVariantRole : string , preferredVideoCodecs : string [] , preferredVideoHdrLevel : string , preferredVideoLabel : string , preferredVideoLayout : string , restrictions : shaka.extern.Restrictions , streaming : shaka.extern.StreamingConfiguration , textDisplayFactory : shaka.extern.TextDisplayer.Factory , textDisplayer : shaka.extern.TextDisplayerConfiguration } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type ProducerReferenceTime = { programStartDate : Date | null , wallClockTime : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type Restrictions = { maxBandwidth : number , maxChannelsCount : number , maxFrameRate : number , maxHeight : number , maxPixels : number , maxWidth : number , minBandwidth : number , minChannelsCount : number , minFrameRate : number , minHeight : number , minPixels : number , minWidth : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type StateChange = { duration : number , state : string , timestamp : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type Stats = { bufferingTime : number , bytesDownloaded : number , completionPercent : number , corruptedFrames : number , decodedFrames : number , drmTimeSeconds : number , droppedFrames : number , estimatedBandwidth : number , gapsJumped : number , height : number , licenseTime : number , liveLatency : number , loadLatency : number , manifestGapCount : number , manifestPeriodCount : number , manifestSizeBytes : number , manifestTimeSeconds : number , maxSegmentDuration : number , nonFatalErrorCount : number , pauseTime : number , playTime : number , stallsDetected : number , stateHistory : shaka.extern.StateChange [] , streamBandwidth : number , switchHistory : shaka.extern.TrackChoice [] , width : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type StreamingConfiguration = { allowMediaSourceRecoveries : boolean , alwaysStreamText : boolean , bufferBehind : number , bufferingGoal : number , clearDecodingCache : boolean , disableAudioPrefetch : boolean , disableTextPrefetch : boolean , disableVideoPrefetch : boolean , dontChooseCodecs : boolean , durationBackoff : number , evictionGoal : number , failureCallback : (a : shaka.util.Error ) => any , forceHTTP : boolean , forceHTTPS : boolean , gapDetectionThreshold : number , gapJumpTimerTime : number , gapPadding : number , ignoreTextStreamFailures : boolean , inaccurateManifestTolerance : number , liveSync : shaka.extern.LiveSyncConfiguration , loadTimeout : number , lowLatencyMode : boolean , maxDisabledTime : number , minBytesForProgressEvents : number , minTimeBetweenRecoveries : number , observeQualityChanges : boolean , preferNativeDash : boolean , preferNativeHls : boolean , prefetchAudioLanguages : string [] , preloadNextUrlWindow : number , rebufferingGoal : number , retryParameters : shaka.extern.RetryParameters , safeSeekEndOffset : number , safeSeekOffset : number , segmentPrefetchLimit : number , shouldFixTimestampOffset : boolean , stallEnabled : boolean , stallSkip : number , stallThreshold : number , startAtSegmentBoundary : boolean , updateIntervalSeconds : number , useNativeHlsForFairPlay : boolean , vodDynamicPlaybackRate : boolean , vodDynamicPlaybackRateBufferRatio : number , vodDynamicPlaybackRateLowBufferRate : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type SupportType = { drm : { [ key: string ]: shaka.extern.DrmSupportType | null } , hardwareResolution : shaka.extern.Resolution , manifest : { [ key: string ]: boolean } , media : { [ key: string ]: boolean } } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type TextDisplayerConfiguration = { captionsUpdatePeriod : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type Thumbnail = { duration : number , height : number , imageHeight : number , imageWidth : number , positionX : number , positionY : number , segment : shaka.media.SegmentReference | null , sprite : boolean , startTime : number , uris : string [] , width : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type TimelineRegionInfo = { endTime : number , eventElement : Element | null , eventNode : shaka.extern.xml.Node | null , id : string , schemeIdUri : string , startTime : number , value : string } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type Track = { accessibilityPurpose : shaka.media.ManifestParser.AccessibilityPurpose | null , active : boolean , audioBandwidth : number | null , audioCodec : string | null , audioId : number | null , audioMimeType : string | null , audioRoles : string [] | null , audioSamplingRate : number | null , bandwidth : number , channelsCount : number | null , codecs : string | null , colorGamut : string | null , forced : boolean , frameRate : number | null , hdr : string | null , height : number | null , id : number , kind : string | null , label : string | null , language : string , mimeType : string | null , originalAudioId : string | null , originalImageId : string | null , originalLanguage : string | null , originalTextId : string | null , originalVideoId : string | null , pixelAspectRatio : string | null , primary : boolean , roles : string [] , spatialAudio : boolean , tilesLayout : string | null , type : string , videoBandwidth : number | null , videoCodec : string | null , videoId : number | null , videoLayout : string | null , videoMimeType : string | null , width : number | null } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type TrackChoice = { bandwidth : number | null , fromAdaptation : boolean , id : number , timestamp : number , type : string } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern { type TrackList = shaka.extern.Track [] ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js declare namespace shaka.extern.xml { type Node = { attributes : { [ key: string ]: string } , children : any [] , parent : any , tagName : string } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/resolution.js declare namespace shaka.extern { type Resolution = { height : number , width : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/text.js declare namespace shaka.extern { interface TextDisplayer extends shaka.util.IDestroyable { /** * Append given text cues to the list of cues to be displayed. * @param cues Text cues to be appended. */ append (cues : shaka.text.Cue [] ) : any ; /** * Sets the TextDisplayer configuration. */ configure (config : shaka.extern.TextDisplayerConfiguration ) : any ; destroy ( ) : Promise < any > ; /** * Enable the current text displayer. */ enableTextDisplayer ( ) : any ; /** * Returns true if text is currently visible. */ isTextVisible ( ) : boolean ; /** * Remove all cues that are fully contained by the given time range (relative * to the presentation). endTime will be greater to equal to * startTime. remove should only return * false if the displayer has been destroyed. If the displayer * has not been destroyed remove should return true. */ remove (startTime : number , endTime : number ) : boolean ; /** * Set the current language. */ setTextLanguage (language : string ) : any ; /** * Set text visibility. */ setTextVisibility (on : boolean ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/text.js declare namespace shaka.extern.TextDisplayer { /** * A factory for creating a TextDisplayer. */ type Factory = ( ) => shaka.extern.TextDisplayer ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/text.js declare namespace shaka.extern { /** * An interface for plugins that parse text tracks. */ interface TextParser { /** * Parse an initialization segment. Some formats do not have init * segments so this won't always be called. * @param data The data that makes up the init segment. */ parseInit (data : Uint8Array ) : any ; /** * Parse a media segment and return the cues that make up the segment. * @param data The next section of buffer. * @param timeContext The time information that should be used to adjust the times values for each cue. * @param uri The media uri. */ parseMedia (data : Uint8Array , timeContext : shaka.extern.TextParser.TimeContext , uri : string | undefined | null , images : string [] ) : shaka.text.Cue [] ; /** * Notifies the manifest type. */ setManifestType (manifestType : string ) : any ; /** * Notifies the stream if the manifest is in sequence mode or not. */ setSequenceMode (sequenceMode : boolean ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/text.js declare namespace shaka.extern.TextParser { /** * A callback used for editing cues before appending. * Provides the cue, the URI of the captions file the cue was parsed from, and * the time context that was used when generating that cue. * You can edit the cue object passed in. */ type ModifyCueCallback = (a : shaka.text.Cue , b : string | null , c : shaka.extern.TextParser.TimeContext ) => any ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/text.js declare namespace shaka.extern.TextParser { /** * A collection of time offsets used to adjust text cue times. */ type TimeContext = { periodStart : number , segmentEnd : number , segmentStart : number , vttOffset : number } ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/text.js declare namespace shaka.extern { type TextParserPlugin = ( ) => shaka.extern.TextParser ; } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/transmuxer.js declare namespace shaka.extern { /** * An interface for transmuxer plugins. */ interface Transmuxer { /** * For any stream, convert its codecs to MP4 codecs. */ convertCodecs (contentType : string , mimeType : string ) : string ; /** * Destroy */ destroy ( ) : any ; /** * Returns the original mimetype of the transmuxer. */ getOriginalMimeType ( ) : string ; /** * Check if the mime type and the content type is supported. */ isSupported (mimeType : string , contentType ? : string ) : boolean ; /** * Transmux a input data to MP4. * @param reference The segment reference, or null for init segments */ transmux (data : ArrayBuffer | ArrayBufferView , stream : shaka.extern.Stream , reference : shaka.media.SegmentReference | null , duration : number , contentType : string ) : Promise < Uint8Array > ; } } // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/transmuxer.js declare namespace shaka.extern { type TransmuxerPlugin = ( ) => shaka.extern.Transmuxer ; } // Generated from /home/runner/work/shaka-player/shaka-player/ui/externs/ui.js declare namespace shaka.extern { /** * Interface for UI elements. UI elements should inherit from the concrete base * class shaka.ui.Element. The members defined in this extern's constructor are * all available from the base class, and are defined here to keep the compiler * from renaming them. */ interface IUIElement extends shaka.util.IReleasable { ad : shaka.extern.IAd | null ; adManager : shaka.extern.IAdManager | null ; controls : shaka.ui.Controls | null ; eventManager : shaka.util.EventManager | null ; localization : shaka.ui.Localization | null ; parent : HTMLElement | null ; player : shaka.Player | null ; video : HTMLMediaElement | null ; release ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/ui/externs/ui.js declare namespace shaka.extern.IUIElement { /** * A factory for creating a UI element. */ interface Factory { create (rootElement : HTMLElement , controls : shaka.ui.Controls ) : shaka.extern.IUIElement ; } } // Generated from /home/runner/work/shaka-player/shaka-player/ui/externs/ui.js declare namespace shaka.extern { interface IUIPlayButton { button : HTMLButtonElement ; isEnded ( ) : boolean ; isPaused ( ) : boolean ; } } // Generated from /home/runner/work/shaka-player/shaka-player/ui/externs/ui.js declare namespace shaka.extern { /** * Interface for UI range elements. UI range elements should inherit from the * concrete base class shaka.ui.RangeElement. The members defined in this * extern's constructor are all available from the base class, and are defined * here to keep the compiler from renaming them. */ interface IUIRangeElement extends shaka.extern.IUIElement { bar : HTMLInputElement ; container : HTMLElement ; changeTo (value : number ) : any ; getValue ( ) : number ; /** * Called when a new value is set by user interaction. * To be overridden by subclasses. */ onChange ( ) : any ; /** * Called when user interaction ends. * To be overridden by subclasses. */ onChangeEnd ( ) : any ; /** * Called when user interaction begins. * To be overridden by subclasses. */ onChangeStart ( ) : any ; setRange (min : number , max : number ) : any ; setValue (value : number ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/ui/externs/ui.js declare namespace shaka.extern { /** * Interface for SeekBars. SeekBars should inherit from the concrete base * class shaka.ui.Element. If you do not need to totally rebuild the * SeekBar, you should consider using shaka.ui.RangeElement or * shaka.ui.SeekBar as your base class. */ interface IUISeekBar extends shaka.extern.IUIRangeElement { getValue ( ) : number ; isShowing ( ) : boolean ; setValue (value : number ) : any ; /** * Called by Controls on a timer to update the state of the seek bar. * Also called internally when the user interacts with the input element. */ update ( ) : any ; } } // Generated from /home/runner/work/shaka-player/shaka-player/ui/externs/ui.js declare namespace shaka.extern.IUISeekBar { /** * A factory for creating a SeekBar element. */ interface Factory { create (rootElement : HTMLElement , controls : shaka.ui.Controls ) : shaka.extern.IUISeekBar ; } } // Generated from /home/runner/work/shaka-player/shaka-player/ui/externs/ui.js declare namespace shaka.extern { /** * Interface for UI settings menus. UI settings menus should inherit from the * concrete base class shaka.ui.SettingsMenu. The members defined in this * extern's constructor are all available from the base class, and are defined * here to keep the compiler from renaming them. */ interface IUISettingsMenu extends shaka.extern.IUIElement { backButton : HTMLButtonElement ; backSpan : HTMLElement ; button : HTMLButtonElement ; currentSelection : HTMLElement ; icon : HTMLElement ; menu : HTMLElement ; nameSpan : HTMLElement ; } } // Generated from /home/runner/work/shaka-player/shaka-player/ui/externs/ui.js declare namespace shaka.extern { type UIConfiguration = { adStatisticsList : string [] , addBigPlayButton : boolean , addSeekBar : boolean , castAndroidReceiverCompatible : boolean , castReceiverAppId : string , clearBufferOnQualityChange : boolean , contextMenuElements : string [] , controlPanelElements : string [] , customContextMenu : boolean , defaultVrProjectionMode : string , displayInVrMode : boolean , doubleClickForFullscreen : boolean , enableFullscreenOnRotation : boolean , enableKeyboardPlaybackControls : boolean , enableTooltips : boolean , fadeDelay : number , fastForwardRates : number [] , forceLandscapeOnFullscreen : boolean , fullScreenElement : HTMLElement | null , keyboardLargeSeekDistance : number , keyboardSeekDistance : number , overflowMenuButtons : string [] , playbackRates : number [] , preferDocumentPictureInPicture : boolean , preferVideoFullScreenInVisionOS : boolean , refreshTickInSeconds : number , rewindRates : number [] , seekBarColors : shaka.extern.UISeekBarColors , seekOnTaps : boolean , setupMediaSession : boolean , showAudioChannelCountVariants : boolean , showAudioCodec : boolean , showUnbufferedStart : boolean , showVideoCodec : boolean , singleClickForPlayAndPause : boolean , statisticsList : string [] , tapSeekDistance : number , textTrackLabelFormat : shaka.ui.Overlay.TrackLabelFormat , trackLabelFormat : shaka.ui.Overlay.TrackLabelFormat , volumeBarColors : shaka.extern.UIVolumeBarColors } ; } // Generated from /home/runner/work/shaka-player/shaka-player/ui/externs/ui.js declare namespace shaka.extern { type UISeekBarColors = { adBreaks : string , base : string , buffered : string , played : string } ; } // Generated from /home/runner/work/shaka-player/shaka-player/ui/externs/ui.js declare namespace shaka.extern { type UIVolumeBarColors = { base : string , level : string } ; } // Generated from /home/runner/work/shaka-player/shaka-player/ui/externs/watermark.js declare namespace shaka.ui.Watermark { type Options = { alpha : number , color : string , displayDuration : number , interval : number , position : string , size : number , skip : number , text : string , transitionDuration : number , type : string } ; } export default shaka;