@flowplayer/player 3.27.0 → 3.28.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/core/events.d.ts +13 -0
  2. package/core/events.js +7 -1
  3. package/core.js +1 -1
  4. package/default.js +1 -1
  5. package/embed.js +2 -2
  6. package/flowplayer.css +1 -1
  7. package/index.d.ts +304 -8
  8. package/package.json +1 -1
  9. package/plugins/ads.d.ts +314 -19
  10. package/plugins/ads.js +2 -2
  11. package/plugins/airplay.d.ts +304 -17
  12. package/plugins/analytics.d.ts +304 -17
  13. package/plugins/analytics.js +1 -1
  14. package/plugins/asel.d.ts +304 -17
  15. package/plugins/audio.d.ts +304 -17
  16. package/plugins/chapters.d.ts +304 -17
  17. package/plugins/chromecast.d.ts +304 -17
  18. package/plugins/comscore.d.ts +304 -17
  19. package/plugins/consent.d.ts +304 -17
  20. package/plugins/context-menu.d.ts +304 -17
  21. package/plugins/cuepoints.d.ts +304 -17
  22. package/plugins/dash.d.ts +304 -17
  23. package/plugins/dash.js +3 -3
  24. package/plugins/drm.d.ts +304 -17
  25. package/plugins/endscreen.d.ts +304 -17
  26. package/plugins/fas.d.ts +304 -17
  27. package/plugins/float-on-scroll.d.ts +304 -17
  28. package/plugins/ga4.d.ts +304 -17
  29. package/plugins/gemius.d.ts +304 -17
  30. package/plugins/google-analytics.d.ts +304 -17
  31. package/plugins/hls.d.ts +304 -17
  32. package/plugins/hls.js +1 -1
  33. package/plugins/id3.d.ts +304 -17
  34. package/plugins/iframe.d.ts +304 -17
  35. package/plugins/keyboard.d.ts +304 -17
  36. package/plugins/media-session.d.ts +304 -17
  37. package/plugins/message.d.ts +304 -17
  38. package/plugins/ovp.d.ts +304 -17
  39. package/plugins/ovp.js +1 -1
  40. package/plugins/playlist.d.ts +304 -17
  41. package/plugins/preview.d.ts +304 -17
  42. package/plugins/qsel.d.ts +304 -17
  43. package/plugins/qul.d.ts +304 -17
  44. package/plugins/qul.js +1 -1
  45. package/plugins/rts.d.ts +312 -17
  46. package/plugins/rts.js +7 -7
  47. package/plugins/share.d.ts +304 -17
  48. package/plugins/speed.d.ts +304 -17
  49. package/plugins/ssai.d.ts +304 -17
  50. package/plugins/ssai.js +2 -2
  51. package/plugins/subtitles.d.ts +304 -17
  52. package/plugins/thumbnails.d.ts +304 -17
  53. package/plugins/tizen.d.ts +304 -17
  54. package/plugins/vtsel.d.ts +304 -17
  55. package/plugins/webos.d.ts +304 -17
  56. package/util/loader.d.ts +304 -17
package/plugins/ads.d.ts CHANGED
@@ -119,6 +119,7 @@ declare interface Adapter {
119
119
  contentComplete(): Promise<void>;
120
120
  onResize(_obj: ResizeInfo): void;
121
121
  isUiDisabled(): boolean;
122
+ onAdRequestEnd(): void;
122
123
  isAdPod(): boolean;
123
124
  canDismissNonLinear(): boolean;
124
125
  setAdBreakTime: (time: number) => void;
@@ -907,17 +908,6 @@ ERROR = "error";
907
908
 
908
909
  declare const ERRORED = "is-error";
909
910
 
910
- /**
911
- * @public
912
- */
913
- declare type ErrorEventDetail = {
914
- src?: string;
915
- type?: string;
916
- code?: number | string;
917
- };
918
-
919
- /* Excluded from this release type: _ErrorEventDetail */
920
-
921
911
  declare class EventBus {
922
912
  private _bus;
923
913
  private _listeners;
@@ -986,7 +976,8 @@ declare namespace events {
986
976
  RECOVER,
987
977
  CUEPOINTS,
988
978
  CUEPOINT_START,
989
- CUEPOINT_END
979
+ CUEPOINT_END,
980
+ FLOWPLAYER_ERROR
990
981
  }
991
982
  }
992
983
 
@@ -1050,11 +1041,307 @@ declare namespace Flags_2 {
1050
1041
  }
1051
1042
  }
1052
1043
 
1044
+ /**
1045
+ * @public
1046
+ * emitted to handle playback related errors
1047
+ */
1048
+ declare const /**
1049
+ @public
1050
+ * when a new player is inserted into the HTML
1051
+ */ /**
1052
+ * @public
1053
+ * emitted to handle playback related errors
1054
+ */
1055
+ FLOWPLAYER_ERROR = "flowplayer:error";
1056
+
1053
1057
  /**
1054
1058
  * @public
1055
1059
  */
1056
1060
  declare type FlowplayerCustomElementRegistry = Map<string, string>;
1057
1061
 
1062
+ declare class FlowplayerError extends Error {
1063
+ readonly message: string;
1064
+ readonly flowplayerErrorCode: FlowplayerErrorCode;
1065
+ readonly config: FlowplayerErrorConfig;
1066
+ static getErrorKey(code: FlowplayerErrorCode): FlowplayerErrorCodeName;
1067
+ readonly id: string;
1068
+ readonly fatal: boolean;
1069
+ readonly errorKey: string;
1070
+ constructor(message: string, flowplayerErrorCode: FlowplayerErrorCode, config?: FlowplayerErrorConfig);
1071
+ toJSON(): {
1072
+ message: string;
1073
+ flowplayer_error_code: FlowplayerErrorCode;
1074
+ id: string;
1075
+ root_error_id: string | undefined;
1076
+ resource: string | undefined;
1077
+ fatal: boolean;
1078
+ };
1079
+ }
1080
+
1081
+ declare type FlowplayerErrorCode = (typeof FlowplayerErrorCodeMap)[keyof typeof FlowplayerErrorCodeMap];
1082
+
1083
+ declare const FlowplayerErrorCodeMap: {
1084
+ /** Unknown */
1085
+ readonly Unknown: "00-00";
1086
+ /** Media Section */
1087
+ readonly MediaUnknown: "01-00";
1088
+ readonly MediaUnavailable: "01-01";
1089
+ readonly MediaUnsupportedVideoFormat: "01-02";
1090
+ readonly MediaUnsupportedAudioFormat: "01-03";
1091
+ readonly MediaBitrateExceeded: "01-04";
1092
+ readonly MediaBufferOverread: "01-05";
1093
+ readonly MediaIntegerOverflow: "01-06";
1094
+ readonly MediaQuotaExceeded: "01-07";
1095
+ readonly MediaInvalidCompositionDuration: "01-08";
1096
+ readonly MediaInvalidCompositionSourceDuration: "01-09";
1097
+ readonly MediaInvalidCompositionSourceStartTime: "01-10";
1098
+ readonly MediaMalformedDepth: "01-11";
1099
+ /** Playback Section */
1100
+ readonly PlaybackUnknown: "02-00";
1101
+ readonly PlaybackVideoBufferUnderRun: "02-01";
1102
+ readonly PlaybackAudioBufferUnderRun: "02-02";
1103
+ readonly PlaybackVideoBufferingTimeout: "02-03";
1104
+ readonly PlaybackAudioBufferingTimeout: "02-04";
1105
+ readonly PlaybackManifestParseError: "02-05";
1106
+ readonly PlaybackVideoDecodeError: "02-06";
1107
+ readonly PlaybackAudioDecodeError: "02-07";
1108
+ readonly PlaybackDroppedFramesExceeded: "02-08";
1109
+ readonly PlaybackPlayheadExceedsDuration: "02-09";
1110
+ readonly PlaybackUnsupportedDevice: "02-10";
1111
+ readonly PlaybackManifestLoadError: "02-11";
1112
+ readonly PlaybackManifestLoadTimeout: "02-12";
1113
+ readonly PlaybackManifestParsingError: "02-13";
1114
+ readonly PlaybackManifestIncompatibleCodecs: "02-14";
1115
+ readonly PlaybackLevelEmptyError: "02-15";
1116
+ readonly PlaybackLevelLoadError: "02-16";
1117
+ readonly PlaybackLevelLoadTimeout: "02-17";
1118
+ readonly PlaybackLevelSwitchError: "02-18";
1119
+ readonly PlaybackAudioTrackLoadError: "02-19";
1120
+ readonly PlaybackAudioTrackLoadTimeout: "02-20";
1121
+ readonly PlaybackFragLoadError: "02-21";
1122
+ readonly PlaybackFragLoadTimeout: "02-22";
1123
+ readonly PlaybackFragDecryptError: "02-23";
1124
+ readonly PlaybackFragParsingError: "02-24";
1125
+ readonly PlaybackFragGap: "02-25";
1126
+ readonly PlaybackRemuxAllocError: "02-26";
1127
+ readonly PlaybackBufferAddCodecError: "02-27";
1128
+ readonly PlaybackBufferIncompatibleCodecs: "02-28";
1129
+ readonly PlaybackBufferAppendError: "02-29";
1130
+ readonly PlaybackBufferStalledError: "02-30";
1131
+ readonly PlaybackBufferFullError: "02-31";
1132
+ readonly PlaybackBufferSeekOverHole: "02-32";
1133
+ readonly PlaybackBufferNudgeOnStall: "02-33";
1134
+ readonly PlaybackInternalException: "02-34";
1135
+ readonly PlaybackInternalAborted: "02-35";
1136
+ readonly PlaybackManifestLoaderFailure: "02-36";
1137
+ readonly PlaybackSegmentBaseLoaderError: "02-37";
1138
+ readonly PlaybackTimeSyncFailed: "02-38";
1139
+ readonly PlaybackFragmentLoaderFailure: "02-39";
1140
+ readonly PlaybackAppendError: "02-40";
1141
+ readonly PlaybackRemoveError: "02-41";
1142
+ readonly PlaybackDataUpdateFailed: "02-42";
1143
+ readonly PlaybackManifestNoStreams: "02-43";
1144
+ readonly PlaybackUnknownManifestType: "02-44";
1145
+ readonly PlaybackDashInsufficientSegmentInfo: "02-45";
1146
+ readonly PlaybackDashNoRepresentations: "02-46";
1147
+ readonly PlaybackDashNoAdaptationSets: "02-47";
1148
+ readonly PlaybackDashNoInitSegment: "02-48";
1149
+ readonly PlaybackDashUnsupportedContainerFormat: "02-49";
1150
+ readonly PlaybackDashKeySystemMismatch: "02-50";
1151
+ readonly PlaybackMultipleKeyIDs: "02-51";
1152
+ readonly PlaybackDashConflictingKeyIDs: "02-52";
1153
+ readonly PlaybackRestrictedStreams: "02-53";
1154
+ readonly PlaybackHlsMasterAndMediaTags: "02-54";
1155
+ readonly PlaybackRepresentationIdConflict: "02-55";
1156
+ readonly PlaybackHlsUnsupportedKeyFormats: "02-56";
1157
+ readonly PlaybackManifestNoVariants: "02-57";
1158
+ readonly PlaybackHlsUndeclaredVariables: "02-58";
1159
+ readonly PlaybackAes128InvalidKeyLength: "02-59";
1160
+ readonly PlaybackDashConflictingAes128Keys: "02-60";
1161
+ readonly PlaybackDashUnsupportedAes128Encryption: "02-61";
1162
+ readonly PlaybackManifestPatchMismatch: "02-62";
1163
+ readonly PlaybackEmptyMediaPlaylist: "02-63";
1164
+ readonly PlaybackNonContiguousCompositionTrack: "02-64";
1165
+ readonly PlaybackDecoderNotFound: "02-65";
1166
+ readonly PlaybackDecoderTemporarilyUnavailable: "02-66";
1167
+ readonly PlaybackIncompatibleAsset: "02-67";
1168
+ readonly PlaybackNoCompatibleExternalDisplay: "02-69";
1169
+ readonly PlaybackOutOfMemory: "02-70";
1170
+ readonly PlaybackToneMappingFailed: "02-71";
1171
+ readonly PlaybackVideoCompositorFailed: "02-72";
1172
+ /** Network Section */
1173
+ readonly NetworkUnknown: "03-00";
1174
+ readonly NetworkNoInternet: "03-01";
1175
+ readonly NetworkRequestTimeout: "03-02";
1176
+ readonly NetworkUnableToResolveHost: "03-03";
1177
+ readonly NetworkResourceNotFound: "03-04";
1178
+ readonly NetworkExpiredUrl: "03-05";
1179
+ readonly NetworkUrlResolutionFailed: "03-06";
1180
+ readonly NetworkDownloadErrorIdManifest: "03-07";
1181
+ readonly NetworkDownloadErrorIdSidx: "03-08";
1182
+ readonly NetworkDownloadErrorIdContent: "03-09";
1183
+ readonly NetworkDownloadErrorIdInitialization: "03-10";
1184
+ readonly NetworkDownloadErrorIdXlink: "03-11";
1185
+ readonly NetworkHttpRequestFailed: "03-12";
1186
+ readonly NetworkMaxRetriesExceeded: "03-13";
1187
+ readonly NetworkSegmentMissing: "03-14";
1188
+ /** HTTP Error Codes */
1189
+ readonly NetworkHttp400BadRequest: "03-400";
1190
+ readonly NetworkHttp401Unauthorized: "03-401";
1191
+ readonly NetworkHttp402PaymentRequired: "03-402";
1192
+ readonly NetworkHttp403Forbidden: "03-403";
1193
+ readonly NetworkHttp404NotFound: "03-404";
1194
+ readonly NetworkHttp405MethodNotAllowed: "03-405";
1195
+ readonly NetworkHttp406NotAcceptable: "03-406";
1196
+ readonly NetworkHttp407ProxyAuthenticationRequired: "03-407";
1197
+ readonly NetworkHttp408RequestTimeout: "03-408";
1198
+ readonly NetworkHttp409Conflict: "03-409";
1199
+ readonly NetworkHttp410Gone: "03-410";
1200
+ readonly NetworkHttp411LengthRequired: "03-411";
1201
+ readonly NetworkHttp412PreconditionFailed: "03-412";
1202
+ readonly NetworkHttp413PayloadTooLarge: "03-413";
1203
+ readonly NetworkHttp414URITooLong: "03-414";
1204
+ readonly NetworkHttp415UnsupportedMediaType: "03-415";
1205
+ readonly NetworkHttp416RangeNotSatisfiable: "03-416";
1206
+ readonly NetworkHttp417ExpectationFailed: "03-417";
1207
+ readonly NetworkHttp418ImATeapot: "03-418";
1208
+ readonly NetworkHttp421MisdirectedRequest: "03-421";
1209
+ readonly NetworkHttp422UnprocessableEntity: "03-422";
1210
+ readonly NetworkHttp423Locked: "03-423";
1211
+ readonly NetworkHttp424FailedDependency: "03-424";
1212
+ readonly NetworkHttp425TooEarly: "03-425";
1213
+ readonly NetworkHttp426UpgradeRequired: "03-426";
1214
+ readonly NetworkHttp428PreconditionRequired: "03-428";
1215
+ readonly NetworkHttp429TooManyRequests: "03-429";
1216
+ readonly NetworkHttp431RequestHeaderFieldsTooLarge: "03-431";
1217
+ readonly NetworkHttp451UnavailableForLegalReasons: "03-451";
1218
+ readonly NetworkHttp500InternalServerError: "03-500";
1219
+ readonly NetworkHttp501NotImplemented: "03-501";
1220
+ readonly NetworkHttp502BadGateway: "03-502";
1221
+ readonly NetworkHttp503ServiceUnavailable: "03-503";
1222
+ readonly NetworkHttp504GatewayTimeout: "03-504";
1223
+ readonly NetworkHttp505HTTPVersionNotSupported: "03-505";
1224
+ readonly NetworkHttp506VariantAlsoNegotiates: "03-506";
1225
+ readonly NetworkHttp507InsufficientStorage: "03-507";
1226
+ readonly NetworkHttp508LoopDetected: "03-508";
1227
+ readonly NetworkHttp510NotExtended: "03-510";
1228
+ readonly NetworkHttp511NetworkAuthenticationRequired: "03-511";
1229
+ /** Content Protection Section */
1230
+ readonly ContentProtectionUnknown: "04-00";
1231
+ readonly ContentProtectionConcurrentStreamLimitExceeded: "04-01";
1232
+ readonly ContentProtectionEntitlementRefused: "04-02";
1233
+ readonly ContentProtectionLicenseExpired: "04-03";
1234
+ readonly ContentProtectionBadLicenseRequest: "04-04";
1235
+ readonly ContentProtectionLicenseServerTimeout: "04-05";
1236
+ readonly ContentProtectionInsufficientHDCPSupport: "04-06";
1237
+ readonly ContentProtectionGeoRestricted: "04-07";
1238
+ readonly ContentProtectionParentalControlRestricted: "04-08";
1239
+ readonly ContentProtectionCDNUnauthorized: "04-09";
1240
+ readonly ContentProtectionInvalidAccessToken: "04-10";
1241
+ readonly ContentProtectionKeySystemNoKeys: "04-11";
1242
+ readonly ContentProtectionKeySystemNoAccess: "04-12";
1243
+ readonly ContentProtectionKeySystemNoSession: "04-13";
1244
+ readonly ContentProtectionKeySystemNoConfiguredLicense: "04-14";
1245
+ readonly ContentProtectionKeySystemCertificateRequestFailed: "04-15";
1246
+ readonly ContentProtectionKeySystemCertificateUpdateFailed: "04-16";
1247
+ /** Key System: Session update failed */
1248
+ readonly ContentProtectionKeySystemSessionUpdateFailed: "04-17";
1249
+ /** Key System: Status output restricted */
1250
+ readonly ContentProtectionKeySystemStatusOutputRestricted: "04-18";
1251
+ /** Key System: Status internal error */
1252
+ readonly ContentProtectionKeySystemStatusInternalError: "04-19";
1253
+ /** Key Load Error */
1254
+ readonly ContentProtectionKeyLoadError: "04-20";
1255
+ /** Key Load Timeout */
1256
+ readonly ContentProtectionKeyLoadTimeout: "04-21";
1257
+ /** Capability MediaKeys Error */
1258
+ readonly ContentProtectionCapabilityMediaKeysError: "04-22";
1259
+ /** Manifest indicated protected content, but unable to determine key systems */
1260
+ readonly ContentProtectionManifestKeySystemUnknown: "04-23";
1261
+ /**
1262
+ * None of the requested key system configurations are available.
1263
+ * Possible reasons:
1264
+ * - Key system not supported
1265
+ * - Requested features (e.g., persistent state) not supported
1266
+ * - User denied access in prompt
1267
+ * - Key system unavailable in insecure contexts (requires HTTPS)
1268
+ */
1269
+ readonly ContentProtectionKeySystemUnavailable: "04-24";
1270
+ /** Browser found requested key system, but failed to create CDM instance */
1271
+ readonly ContentProtectionCDMCreationFailed: "04-25";
1272
+ /** Browser created CDM instance but failed to attach it to the video */
1273
+ readonly ContentProtectionCDMAttachFailed: "04-26";
1274
+ /** CDM rejected the server certificate (malformed or unsupported format) */
1275
+ readonly ContentProtectionCDMServerCertificateRejected: "04-27";
1276
+ /** CDM refused to create a session for unknown reasons */
1277
+ readonly ContentProtectionCDMSessionCreationFailed: "04-28";
1278
+ /** CDM unable to generate a license request due to malformed or unsupported init data */
1279
+ readonly ContentProtectionCDMLicenseRequestFailed: "04-29";
1280
+ /** License response rejected by the CDM (invalid/malformed response) */
1281
+ readonly ContentProtectionCDMLicenseResponseRejected: "04-30";
1282
+ /** Manifest does not specify DRM info, but content is encrypted */
1283
+ readonly ContentProtectionManifestMissingDRMInfo: "04-31";
1284
+ /** No license server was provided for the key system signaled by the manifest */
1285
+ readonly ContentProtectionLicenseServerMissing: "04-32";
1286
+ /** A required offline session was removed, affecting playback */
1287
+ readonly ContentProtectionOfflineSessionRemoved: "04-33";
1288
+ /** Error while executing init data transformation */
1289
+ readonly ContentProtectionInitDataTransformationError: "04-34";
1290
+ /** Server certificate request failed */
1291
+ readonly ContentProtectionServerCertificateRequestFailed: "04-35";
1292
+ /** HDCP version does not meet the requirements */
1293
+ readonly ContentProtectionInsufficientHDCPVersion: "04-36";
1294
+ /** Error when checking HDCP version */
1295
+ readonly ContentProtectionHDCPVersionCheckFailed: "04-37";
1296
+ /** Ads Section */
1297
+ readonly AdsUnknown: "08-00";
1298
+ readonly AdsVastParseError: "08-100";
1299
+ readonly AdsInvalidVastSchema: "08-101";
1300
+ readonly AdsVastVersionNotSupported: "08-102";
1301
+ readonly AdsUnexpectedAdType: "08-200";
1302
+ readonly AdsCreativeLinearityMismatch: "08-201";
1303
+ readonly AdsCreativeDurationMismatch: "08-202";
1304
+ readonly AdsCreativeSizeMismatch: "08-203";
1305
+ readonly AdsWrapperVastError: "08-300";
1306
+ readonly AdsVastResponseRedirectTimeout: "08-301";
1307
+ readonly AdsWrapperLimitReached: "08-302";
1308
+ readonly AdsVastResponseEmpty: "08-303";
1309
+ readonly AdsLinearAdDisplayError: "08-400";
1310
+ readonly AdsMediaFileNotFound: "08-401";
1311
+ readonly AdsMediaFileUnavailable: "08-402";
1312
+ readonly AdsUnsupportedMimeType: "08-403";
1313
+ readonly AdsUnableToDisplayMediaFile: "08-405";
1314
+ readonly AdsMezzanineFileMissing: "08-406";
1315
+ readonly AdsMezzanineFileDownloaded: "08-407";
1316
+ readonly AdsRejectedAd: "08-408";
1317
+ readonly AdsInteractiveCreativeError: "08-409";
1318
+ readonly AdsVerificationNodeExecutionError: "08-410";
1319
+ readonly AdsNonLinearAdDisplayError: "08-500";
1320
+ readonly AdsNonLinearAdSizeMismatch: "08-501";
1321
+ readonly AdsNonLinearAdFetchError: "08-502";
1322
+ readonly AdsNonLinearUnsupportedType: "08-503";
1323
+ readonly AdsCompanionAdDisplayError: "08-600";
1324
+ readonly AdsCompanionAdSizeMismatch: "08-601";
1325
+ readonly AdsRequiredCompanionAdError: "08-602";
1326
+ readonly AdsCompanionAdFetchError: "08-603";
1327
+ readonly AdsUndefinedVastError: "08-900";
1328
+ readonly AdsUnknownVpaidError: "08-901";
1329
+ readonly AdsVastDocumentEmpty: "08-999";
1330
+ };
1331
+
1332
+ declare type FlowplayerErrorCodeName = keyof typeof FlowplayerErrorCodeMap;
1333
+
1334
+ declare type FlowplayerErrorConfig = Partial<{
1335
+ fatal: boolean;
1336
+ resource: string;
1337
+ rootErrorId: string;
1338
+ preventRetry: boolean;
1339
+ }>;
1340
+
1341
+ declare type FlowplayerErrorEventDetail = {
1342
+ error: FlowplayerError;
1343
+ };
1344
+
1058
1345
  /**
1059
1346
  * @public
1060
1347
  */
@@ -2521,6 +2808,7 @@ declare class IMA implements Adapter {
2521
2808
  private videoTag;
2522
2809
  private customPlaybackEnabled;
2523
2810
  private _paused;
2811
+ private loadingController;
2524
2812
  private _all_ads_completed;
2525
2813
  private google;
2526
2814
  private _isInitialized;
@@ -2559,7 +2847,7 @@ declare class IMA implements Adapter {
2559
2847
  */
2560
2848
  waitForAdsManager(): Promise<unknown>;
2561
2849
  initAd(adTag: string, timeout?: number): Promise<void>;
2562
- requestAd(adTag: string, timeout: number): Promise<unknown>;
2850
+ requestAd(adTag: string, timeout: number): Promise<any>;
2563
2851
  playAd(): Promise<void>;
2564
2852
  /**
2565
2853
  * returns a Promise of a completed Ad
@@ -2569,6 +2857,7 @@ declare class IMA implements Adapter {
2569
2857
  resume(): void;
2570
2858
  volume(level?: number): number | undefined;
2571
2859
  onResize({ width, height, linear, silent, resize_non_linear }: ResizeInfo): void;
2860
+ onAdRequestEnd(): void;
2572
2861
  getAdInfo(): {
2573
2862
  duration: number;
2574
2863
  currentTime: number;
@@ -2667,6 +2956,7 @@ declare type IMAOpts = {
2667
2956
  autoplay: boolean;
2668
2957
  disable_non_linear_ads: boolean;
2669
2958
  media_timeout: number;
2959
+ total_loading_timeout: number;
2670
2960
  };
2671
2961
 
2672
2962
  declare const IN_VIEWPORT = "is-in-viewport";
@@ -3117,6 +3407,7 @@ declare type PlayerCustomEventsDetailMap = PlayerEmittableCustomEventsDetailMap
3117
3407
  [RECOVER]: RecoverEventDetail;
3118
3408
  [QUALITIES]: QualitiesEventDetail;
3119
3409
  [QUALITY_CHANGE]: QualityChangeEventDetail;
3410
+ [FLOWPLAYER_ERROR]: FlowplayerErrorEventDetail;
3120
3411
  /* Excluded from this release type: audioonlysource */
3121
3412
  /* Excluded from this release type: renderplugin */
3122
3413
  /* Excluded from this release type: "seek:queued" */
@@ -3138,7 +3429,6 @@ declare type PlayerCustomEventsOverloads = {
3138
3429
  /**
3139
3430
  * Sent when an error occurs. Learn more about error handling.
3140
3431
  */
3141
- on(event: typeof ERROR, handler: (e: FPEvent<PlayerCustomEventsDetailMap[typeof ERROR]>) => void): Player;
3142
3432
  on(// FIXME - this event is in context-menu plugin
3143
3433
  event: typeof CONTEXT_MENU, handler: (e: FPEvent<PlayerCustomEventsDetailMap[typeof CONTEXT_MENU]>) => void): Player;
3144
3434
  /* Excluded from this release type: on */
@@ -3177,6 +3467,10 @@ declare type PlayerCustomEventsOverloads = {
3177
3467
  * Emitted when the media changes quality.
3178
3468
  */
3179
3469
  on(event: typeof QUALITY_CHANGE, handler: (e: FPEvent<PlayerCustomEventsDetailMap[typeof QUALITY_CHANGE]>) => void): Player;
3470
+ /**
3471
+ * Emitted when a standard FlowplayerError is encountered
3472
+ */
3473
+ on(event: typeof FLOWPLAYER_ERROR, handler: (e: FPEvent<PlayerCustomEventsDetailMap[typeof FLOWPLAYER_ERROR]>) => void): Player;
3180
3474
  /* Excluded from this release type: on */
3181
3475
  /**
3182
3476
  * Listen to this event to create a recommendations grid using the data passed with the event.
@@ -3229,12 +3523,9 @@ declare type PlayerCustomEventsOverloads = {
3229
3523
  emit(event: never, data?: never): Player;
3230
3524
  /* Excluded from this release type: emit */
3231
3525
  /* Excluded from this release type: emit */
3232
- /* Excluded from this release type: emit */
3233
- /* Excluded from this release type: emit */
3234
3526
  };
3235
3527
 
3236
3528
  declare type PlayerEmittableCustomEventsDetailMap = {
3237
- [ERROR]: ErrorEventDetail;
3238
3529
  [CONTEXT_MENU]: ContextMenuEventDetail;
3239
3530
  [VIEW_ENTER]: ViewEnterEventDetail;
3240
3531
  [VIEW_LEAVE]: ViewLeaveEventDetail;
@@ -3259,6 +3550,10 @@ export declare type PlayerIMAConfig = {
3259
3550
  * Defines how long to wait for ad response from the network in milliseconds. Default value is 5000.
3260
3551
  */
3261
3552
  timeout?: number;
3553
+ /**
3554
+ * Defines how long to wait for both the ad response and the loading of the video ad in milliseconds. Default value is undefined.
3555
+ */
3556
+ total_loading_timeout?: number;
3262
3557
  /**
3263
3558
  * Shows all ad breaks between current time and new seek position when the viewer seeks ahead in the timeline. Default value is true.
3264
3559
  */
@@ -3268,7 +3563,7 @@ export declare type PlayerIMAConfig = {
3268
3563
  */
3269
3564
  ads: TimeBasedAd[];
3270
3565
  /**
3271
- * Sets the locale. This is proxied to to the {@link https://developers.google.com/interactive-media-ads/docs/sdks/html5/client-side/reference/js/google.ima.ImaSdkSettings#setLocale|setLocale()} method
3566
+ * Sets the locale. This is proxied to the {@link https://developers.google.com/interactive-media-ads/docs/sdks/html5/client-side/reference/js/google.ima.ImaSdkSettings#setLocale|setLocale()} method
3272
3567
  */
3273
3568
  Locale?: string;
3274
3569
  /**
@@ -3283,7 +3578,7 @@ export declare type PlayerIMAConfig = {
3283
3578
 
3284
3579
  declare type PlayerNativeEventName = keyof PlayerNativeEventsDetailMap;
3285
3580
 
3286
- declare type PlayerNativeEventsDetailMap = Omit<HTMLVideoElementEventMap, "error">;
3581
+ declare type PlayerNativeEventsDetailMap = HTMLVideoElementEventMap;
3287
3582
 
3288
3583
  declare type PlayerNativeEventsOverloads = {
3289
3584
  on<K extends keyof PlayerNativeEventsDetailMap>(event: K, handler: (ev: PlayerNativeEventsDetailMap[K]) => void): Player;