@aigamo/nostalgic-diva 1.3.0

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.
@@ -0,0 +1,757 @@
1
+ declare namespace nico {
2
+ export interface NicoPlayer {
3
+ iframeElement: HTMLIFrameElement;
4
+ playerId: string;
5
+ play(): void;
6
+ pause(): void;
7
+ }
8
+
9
+ export interface NicoPlayerFactory {
10
+ create(element: HTMLElement, watchId: string): Promise<NicoPlayer>;
11
+ }
12
+
13
+ export interface PlayerStatusEvent {
14
+ eventName: 'playerStatusChange';
15
+ data: {
16
+ playerStatus: PlayerStatus;
17
+ };
18
+ }
19
+
20
+ export interface StatusEvent {
21
+ eventName: 'statusChange';
22
+ data: {
23
+ playerStatus: PlayerStatus;
24
+ };
25
+ }
26
+
27
+ export interface MetadataEvent {
28
+ eventName: 'playerMetadataChange';
29
+ data: {
30
+ currentTime: number;
31
+ duration: number;
32
+ };
33
+ }
34
+
35
+ export interface LoadCompleteEvent {
36
+ eventName: 'loadComplete';
37
+ data: {
38
+ videoInfo: {
39
+ watchId: string;
40
+ lengthInSeconds: number;
41
+ };
42
+ };
43
+ }
44
+
45
+ export interface ErrorEvent {
46
+ eventName: 'error';
47
+ data: {
48
+ message: string;
49
+ };
50
+ }
51
+
52
+ export interface PlayerErrorEvent {
53
+ eventName: 'player-error:video:play' | 'player-error:video:seek';
54
+ data: {
55
+ message: string;
56
+ };
57
+ }
58
+
59
+ type EventData =
60
+ | PlayerStatusEvent
61
+ | StatusEvent
62
+ | MetadataEvent
63
+ | LoadCompleteEvent
64
+ | ErrorEvent
65
+ | PlayerErrorEvent;
66
+
67
+ export interface PlayerEvent {
68
+ origin: string;
69
+ data: EventData;
70
+ }
71
+ }
72
+
73
+ declare namespace SC {
74
+ export const Widget: {
75
+ (iframeElementId: string | HTMLIFrameElement): SoundCloudWidget;
76
+ Events: SoundCloudEvents;
77
+ };
78
+
79
+ interface SoundCloudWidget {
80
+ bind(eventName: string, listener: (e: any) => void);
81
+ load(url: string, options: SoundCloudLoadOptions);
82
+ pause();
83
+ play();
84
+ seekTo(milliseconds: number);
85
+ setVolume(volume: number);
86
+ unbind(eventName: string);
87
+ getDuration(callback: (duration: number) => void): void;
88
+ getPosition(callback: (position: number) => void): void;
89
+ }
90
+
91
+ interface SoundCloudLoadOptions {
92
+ auto_play?: boolean;
93
+
94
+ callback?: () => void;
95
+ }
96
+
97
+ interface SoundCloudEvents {
98
+ ERROR: string;
99
+ FINISH: string;
100
+ PAUSE: string;
101
+ PLAY: string;
102
+ READY: string;
103
+ PLAY_PROGRESS: string;
104
+ }
105
+ }
106
+
107
+ declare namespace Vimeo {
108
+ // Type definitions for @vimeo/player 2.16.4
109
+ // Project: https://github.com/vimeo/player.js
110
+ // Definitions by: Denis Yılmaz <https://github.com/denisyilmaz>
111
+ // Felix Albert <f.albert.work@icloud.com>
112
+ // Tim Chen <https://github.com/timc13>
113
+ // Terry Mun <https://github.com/terrymun>
114
+ // Coskun Deniz <deniz@tassomai.com>
115
+ // Kohei Watanabe <https://github.com/kou029w>
116
+ // Michael Markey <https://github.com/mikeamarkey>
117
+ // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
118
+
119
+ export type TrackKind = 'captions' | 'subtitles';
120
+
121
+ export type CallbackFunction = (...args: any[]) => any;
122
+
123
+ export interface Error {
124
+ name: string;
125
+ message: string;
126
+ method: string;
127
+ }
128
+
129
+ export interface PasswordError extends Error {
130
+ name: 'PasswordError';
131
+ message: string;
132
+ method: string;
133
+ }
134
+ export interface PrivacyError extends Error {
135
+ name: 'PrivacyError';
136
+ message: string;
137
+ method: string;
138
+ }
139
+ export interface InvalidTrackLanguageError extends Error {
140
+ name: 'InvalidTrackLanguageError';
141
+ message: string;
142
+ method: string;
143
+ }
144
+ export interface InvalidTrackError extends Error {
145
+ name: 'InvalidTrackError';
146
+ message: string;
147
+ method: string;
148
+ }
149
+ export interface UnsupportedError extends Error {
150
+ name: 'UnsupportedError';
151
+ message: string;
152
+ method: string;
153
+ }
154
+ export interface ContrastError extends Error {
155
+ name: 'ContrastError';
156
+ message: string;
157
+ method: string;
158
+ }
159
+ export interface InvalidCuePoint extends Error {
160
+ name: 'InvalidCuePoint';
161
+ message: string;
162
+ method: string;
163
+ }
164
+ export interface RangeError extends Error {
165
+ name: 'RangeError';
166
+ message: string;
167
+ method: string;
168
+ }
169
+ export interface TypeError extends Error {
170
+ name: 'TypeError';
171
+ message: string;
172
+ method: string;
173
+ }
174
+
175
+ export interface TimeEvent {
176
+ duration: number;
177
+ percent: number;
178
+ seconds: number;
179
+ }
180
+
181
+ export interface TextTrackChangeEvent {
182
+ kind: TrackKind | null;
183
+ label: string | null;
184
+ language: string | null;
185
+ }
186
+
187
+ export interface VimeoChapter {
188
+ startTime: number;
189
+ title: string;
190
+
191
+ /**
192
+ * The `index` property of each chapter is the place it holds in the order of all the chapters. It starts at 1.
193
+ */
194
+ index: number;
195
+ }
196
+
197
+ export interface Cue {
198
+ /**
199
+ * The `html` property contains the HTML that the Player renders for that cue.
200
+ */
201
+ html: string;
202
+
203
+ /**
204
+ * The `text` property of each cue is the raw value parsed from the caption or subtitle file.
205
+ */
206
+ text: string;
207
+ }
208
+
209
+ export interface CueChangeEvent {
210
+ cues: Cue[];
211
+ kind: TrackKind;
212
+ label: string;
213
+ language: string;
214
+ }
215
+
216
+ export interface CuePointEvent {
217
+ time: number;
218
+
219
+ /**
220
+ * The `data` property will be the custom data provided in the `addCuePoint()` call, or an empty object if none was provided.
221
+ */
222
+ data: VimeoCuePointData;
223
+ id: string;
224
+ }
225
+
226
+ export interface VolumeChangeEvent {
227
+ volume: number;
228
+ }
229
+
230
+ export interface PlaybackRateEvent {
231
+ playbackRate: number;
232
+ }
233
+
234
+ export interface LoadedEvent {
235
+ id: number;
236
+ }
237
+
238
+ export interface DurationChangeEvent {
239
+ duration: number;
240
+ }
241
+
242
+ export interface FullScreenChangeEvent {
243
+ fullscreen: boolean;
244
+ }
245
+
246
+ export interface VimeoVideoQualityObject {
247
+ label: string;
248
+ id: string;
249
+ active: boolean;
250
+ }
251
+
252
+ export interface QualityChangeEvent {
253
+ quality: VimeoVideoQuality;
254
+ }
255
+
256
+ export interface VimeoCameraProps {
257
+ yaw: number;
258
+ pitch: number;
259
+ roll: number;
260
+ fov: number;
261
+ }
262
+
263
+ export interface ResizeEvent {
264
+ videoWidth: number;
265
+ videoHeight: number;
266
+ }
267
+
268
+ export interface EventMap {
269
+ /**
270
+ * Triggered when video playback is initiated.
271
+ */
272
+ play: TimeEvent;
273
+
274
+ /**
275
+ * Triggered when the video starts playing.
276
+ */
277
+ playing: TimeEvent;
278
+
279
+ /**
280
+ * Triggered when the video pauses.
281
+ */
282
+ pause: TimeEvent;
283
+
284
+ /**
285
+ * Triggered any time the video playback reaches the end. _Note_: when loop is turned on, the ended `event` will not fire.
286
+ */
287
+ ended: TimeEvent;
288
+
289
+ /**
290
+ * Triggered as the `currentTime` of the video updates. It generally fires every 250ms, but it may vary depending on the browser.
291
+ */
292
+ timeupdate: TimeEvent;
293
+
294
+ /**
295
+ * Triggered as the video is loaded. Reports back the amount of the video that has been buffered.
296
+ */
297
+ progress: TimeEvent;
298
+
299
+ /**
300
+ * Triggered when the player starts seeking to a specific time. A `timeupdate` event will also be fired at the same time.
301
+ */
302
+ seeking: TimeEvent;
303
+
304
+ /**
305
+ * Triggered when the player seeks to a specific time. A `timeupdate` event will also be fired at the same time.
306
+ */
307
+ seeked: TimeEvent;
308
+
309
+ /**
310
+ * Triggered when the active text track (captions/subtitles) changes. The values will be null if text tracks are turned off.
311
+ */
312
+ texttrackchange: TextTrackChangeEvent;
313
+
314
+ /**
315
+ * Triggered when the current chapter changes.
316
+ */
317
+ chapterchange: VimeoChapter;
318
+
319
+ /**
320
+ * Triggered when the active cue for the current text track changes. It also fires when the active text track changes. There may be multiple cues active.
321
+ */
322
+ cuechange: CueChangeEvent;
323
+
324
+ /**
325
+ * Triggered when the current time hits a registered cue point.
326
+ */
327
+ cuepoint: CuePointEvent;
328
+
329
+ /**
330
+ * Triggered when the volume in the player changes. Some devices do not support setting the volume of the video independently from the system volume, so this event will never fire on those
331
+ * devices.
332
+ */
333
+ volumechange: VolumeChangeEvent;
334
+
335
+ /**
336
+ * Triggered when the playback rate of the video in the player changes. The ability to change rate can be disabled by the creator and the event will not fire for those videos. The new playback
337
+ * rate is returned with the event.
338
+ */
339
+ playbackratechange: PlaybackRateEvent;
340
+
341
+ /**
342
+ * Triggered when buffering starts in the player. This is also triggered during preload and while seeking. There is no associated data with this event.
343
+ */
344
+ bufferstart: never;
345
+
346
+ /**
347
+ * Triggered when buffering ends in the player. This is also triggered at the end of preload and seeking. There is no associated data with this event.
348
+ */
349
+ bufferend: never;
350
+
351
+ /**
352
+ * Triggered when some kind of error is generated in the player. In general if you are using this API library, you should use `.catch()` on each method call instead of globally listening for
353
+ * error events.
354
+ *
355
+ * If the error was generated from a method call, the name of that method will be included.
356
+ */
357
+ error: Error;
358
+
359
+ /**
360
+ * Triggered when a new video is loaded in the player.
361
+ */
362
+ loaded: LoadedEvent;
363
+
364
+ /**
365
+ * Triggered when the duration attribute has been updated.
366
+ */
367
+ durationchange: DurationChangeEvent;
368
+
369
+ /**
370
+ * Triggered when the player enters or exits fullscreen.
371
+ */
372
+ fullscreenchange: FullScreenChangeEvent;
373
+
374
+ /**
375
+ * Triggered when the set quality changes.
376
+ */
377
+ qualitychange: QualityChangeEvent;
378
+
379
+ /**
380
+ * Triggered when any of the camera properties change for 360° videos.
381
+ */
382
+ camerachange: VimeoCameraProps;
383
+
384
+ /**
385
+ * Triggered when the intrinsic size of the media changes.
386
+ */
387
+ resize: ResizeEvent;
388
+
389
+ /**
390
+ * Triggered when the player enters picture-in-picture.
391
+ */
392
+ enterpictureinpicture: never;
393
+
394
+ /**
395
+ * Triggered when the player leaves picture-in-picture.
396
+ */
397
+ leavepictureinpicture: never;
398
+ }
399
+
400
+ export type EventCallback<Data = any> = (data: Data) => any;
401
+
402
+ export type VimeoTimeRange = [number, number];
403
+ export type VimeoVideoQuality =
404
+ | 'auto'
405
+ | '4K'
406
+ | '2K'
407
+ | '1080p'
408
+ | '720p'
409
+ | '540p'
410
+ | '360p'
411
+ | '240p';
412
+
413
+ export class Player {
414
+ constructor(
415
+ element: HTMLIFrameElement | HTMLElement | string,
416
+ options?: Options,
417
+ );
418
+
419
+ on<EventName extends keyof EventMap>(
420
+ event: EventName,
421
+ callback: EventCallback<EventMap[EventName]>,
422
+ ): void;
423
+ on(event: string, callback: EventCallback): void;
424
+ off<EventName extends keyof EventMap>(
425
+ event: EventName,
426
+ callback: EventCallback<EventMap[EventName]>,
427
+ ): void;
428
+ off(event: string, callback?: EventCallback): void;
429
+ loadVideo(
430
+ id: number,
431
+ ): VimeoPromise<
432
+ number,
433
+ TypeError | PasswordError | PrivacyError | Error
434
+ >;
435
+ loadVideo(
436
+ url: string,
437
+ ): VimeoPromise<
438
+ string,
439
+ TypeError | PasswordError | PrivacyError | Error
440
+ >;
441
+ loadVideo(
442
+ options: Options,
443
+ ): VimeoPromise<
444
+ { [prop: string]: any },
445
+ TypeError | PasswordError | PrivacyError | Error
446
+ >;
447
+ ready(): VimeoPromise<void, Error>;
448
+ enableTextTrack(
449
+ language: string,
450
+ kind?: TrackKind,
451
+ ): VimeoPromise<
452
+ VimeoTextTrack,
453
+ InvalidTrackLanguageError | InvalidTrackError | Error
454
+ >;
455
+ disableTextTrack(): VimeoPromise<void, Error>;
456
+ pause(): VimeoPromise<void, PasswordError | PrivacyError | Error>;
457
+ play(): VimeoPromise<void, PasswordError | PrivacyError | Error>;
458
+ unload(): VimeoPromise<void, Error>;
459
+ requestFullscreen(): VimeoPromise<void, Error>;
460
+ exitFullscreen(): VimeoPromise<void, Error>;
461
+ getFullscreen(): VimeoPromise<boolean, Error>;
462
+ requestPictureInPicture(): VimeoPromise<void, Error>;
463
+ exitPictureInPicture(): VimeoPromise<void, Error>;
464
+ getPictureInPicture(): VimeoPromise<boolean, Error>;
465
+ getAutopause(): VimeoPromise<boolean, UnsupportedError | Error>;
466
+ setAutopause(
467
+ autopause: boolean,
468
+ ): VimeoPromise<boolean, UnsupportedError | Error>;
469
+ getColor(): VimeoPromise<string, Error>;
470
+ setColor(
471
+ color: string,
472
+ ): VimeoPromise<string, ContrastError | TypeError | Error>;
473
+ getChapters(): VimeoPromise<VimeoChapter[], Error>;
474
+ getCurrentChapter(): VimeoPromise<VimeoChapter, Error>;
475
+ addCuePoint(
476
+ time: number,
477
+ data: VimeoCuePointData,
478
+ ): VimeoPromise<string, UnsupportedError | RangeError | Error>;
479
+ removeCuePoint(
480
+ id: string,
481
+ ): VimeoPromise<string, UnsupportedError | InvalidCuePoint | Error>;
482
+ getCuePoints(): VimeoPromise<VimeoCuePoint[], UnsupportedError | Error>;
483
+ getBuffered(): VimeoPromise<VimeoTimeRange[], Error>;
484
+ getCurrentTime(): VimeoPromise<number, Error>;
485
+ setCurrentTime(
486
+ seconds: number,
487
+ ): VimeoPromise<number, RangeError | Error>;
488
+ getDuration(): VimeoPromise<number, Error>;
489
+ getEnded(): VimeoPromise<boolean, Error>;
490
+ getLoop(): VimeoPromise<boolean, Error>;
491
+ setLoop(loop: boolean): VimeoPromise<boolean, Error>;
492
+ getMuted(): VimeoPromise<boolean, Error>;
493
+ setMuted(muted: boolean): VimeoPromise<boolean, Error>;
494
+ getPaused(): VimeoPromise<boolean, Error>;
495
+ getPlayed(): VimeoPromise<VimeoTimeRange[], Error>;
496
+ getSeekable(): VimeoPromise<VimeoTimeRange[], Error>;
497
+ getSeeking(): VimeoPromise<boolean, Error>;
498
+ getPlaybackRate(): VimeoPromise<number, Error>;
499
+ setPlaybackRate(
500
+ playbackRate: number,
501
+ ): VimeoPromise<number, RangeError | Error>;
502
+ getTextTracks(): VimeoPromise<VimeoTextTrack[], Error>;
503
+ getVideoEmbedCode(): VimeoPromise<string, Error>;
504
+ getVideoId(): VimeoPromise<number, Error>;
505
+ getVideoTitle(): VimeoPromise<string, Error>;
506
+ getVideoWidth(): VimeoPromise<number, Error>;
507
+ getVideoHeight(): VimeoPromise<number, Error>;
508
+ getVideoUrl(): VimeoPromise<string, PrivacyError | Error>;
509
+ getVolume(): VimeoPromise<number, Error>;
510
+ setVolume(volume: number): VimeoPromise<number, RangeError | Error>;
511
+ getQualities(): VimeoPromise<VimeoVideoQualityObject[], Error>;
512
+ getQuality(): VimeoPromise<VimeoVideoQuality, Error>;
513
+ setQuality(
514
+ quality: VimeoVideoQuality,
515
+ ): VimeoPromise<VimeoVideoQuality, TypeError | Error>;
516
+ getCameraProps(): VimeoPromise<VimeoCameraProps, Error>;
517
+ setCameraProps(
518
+ cameraProps: VimeoCameraProps,
519
+ ): VimeoPromise<VimeoCameraProps, RangeError | Error>;
520
+ destroy(): VimeoPromise<void, Error>;
521
+ }
522
+
523
+ export interface VimeoCuePoint {
524
+ time: number;
525
+ data: VimeoCuePointData;
526
+ id: string;
527
+ }
528
+
529
+ export interface VimeoCuePointData {
530
+ [key: string]: any;
531
+ }
532
+
533
+ export interface VimeoTextTrack {
534
+ language: string;
535
+ kind: TrackKind;
536
+ label: string;
537
+ mode?: string | undefined;
538
+ }
539
+
540
+ export interface Options {
541
+ id?: number | undefined;
542
+ url?: string | undefined;
543
+ autopause?: boolean | undefined;
544
+ autoplay?: boolean | undefined;
545
+ background?: boolean | undefined;
546
+ byline?: boolean | undefined;
547
+ color?: string | undefined;
548
+ controls?: boolean | undefined;
549
+ dnt?: boolean | undefined;
550
+ height?: number | undefined;
551
+ interactive_params?: string | undefined;
552
+ keyboard?: boolean | undefined;
553
+ loop?: boolean | undefined;
554
+ maxheight?: number | undefined;
555
+ maxwidth?: number | undefined;
556
+ muted?: boolean | undefined;
557
+ pip?: boolean | undefined;
558
+ playsinline?: boolean | undefined;
559
+ portrait?: boolean | undefined;
560
+ responsive?: boolean | undefined;
561
+ speed?: boolean | undefined;
562
+ quality?: VimeoVideoQuality | undefined;
563
+ texttrack?: string | undefined;
564
+ title?: boolean | undefined;
565
+ transparent?: boolean | undefined;
566
+ width?: number | undefined;
567
+ }
568
+
569
+ export interface VimeoPromise<Result, Reason> extends Promise<Result> {
570
+ (
571
+ successCallback?: (promiseValue: Result) => void,
572
+ rejectCallback?: (reasonValue: Reason) => void,
573
+ ): Promise<Result>;
574
+ }
575
+ }
576
+
577
+ // Type definitions for YouTube
578
+ // Project: https://developers.google.com/youtube/
579
+ // Definitions by: Daz Wilkin <https://github.com/DazWilkin/>, Ian Obermiller <http://ianobermiller.com>
580
+ // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
581
+
582
+ declare namespace YT {
583
+ interface EventArgs {
584
+ target: Player;
585
+ data: any;
586
+ }
587
+
588
+ interface EventHandler {
589
+ (event: EventArgs): void;
590
+ }
591
+
592
+ export interface Events {
593
+ onReady?: EventHandler;
594
+ onPlayback?: EventHandler;
595
+ onStateChange?: EventHandler;
596
+ onError?: EventHandler;
597
+ }
598
+
599
+ export enum ListType {
600
+ search,
601
+ user_uploads,
602
+ playlist,
603
+ }
604
+
605
+ export interface PlayerVars {
606
+ autohide?: number;
607
+ autoplay?: number;
608
+ cc_load_policy?: any;
609
+ color?: string;
610
+ controls?: number;
611
+ disablekb?: number;
612
+ enablejsapi?: number;
613
+ end?: number;
614
+ fs?: number;
615
+ iv_load_policy?: number;
616
+ list?: string;
617
+ listType?: ListType;
618
+ loop?: number;
619
+ modestbranding?: number;
620
+ origin?: string;
621
+ playerpiid?: string;
622
+ playlist?: string[];
623
+ playsinline?: number;
624
+ rel?: number;
625
+ showinfo?: number;
626
+ start?: number;
627
+ theme?: string;
628
+ }
629
+
630
+ export interface PlayerOptions {
631
+ width?: string | number;
632
+ height?: string | number;
633
+ videoId?: string;
634
+ playerVars?: PlayerVars;
635
+ events?: Events;
636
+ host?: string;
637
+ }
638
+
639
+ interface VideoByIdParams {
640
+ videoId: string;
641
+ startSeconds?: number;
642
+ endSeconds?: number;
643
+ suggestedQuality?: string;
644
+ }
645
+
646
+ interface VideoByUrlParams {
647
+ mediaContentUrl: string;
648
+ startSeconds?: number;
649
+ endSeconds?: number;
650
+ suggestedQuality?: string;
651
+ }
652
+
653
+ export interface VideoData {
654
+ video_id: string;
655
+ author: string;
656
+ title: string;
657
+ }
658
+
659
+ export class Player {
660
+ // Constructor
661
+ constructor(id: string | HTMLElement, playerOptions: PlayerOptions);
662
+
663
+ // Queueing functions
664
+ loadVideoById(
665
+ videoId: string,
666
+ startSeconds?: number,
667
+ suggestedQuality?: string,
668
+ ): void;
669
+ loadVideoById(VideoByIdParams: any /* TODO */): void;
670
+ cueVideoById(
671
+ videoId: string,
672
+ startSeconds?: number,
673
+ suggestedQuality?: string,
674
+ ): void;
675
+ cueVideoById(VideoByIdParams: any /* TODO */): void;
676
+
677
+ loadVideoByUrl(
678
+ mediaContentUrl: string,
679
+ startSeconds?: number,
680
+ suggestedQuality?: string,
681
+ ): void;
682
+ loadVideoByUrl(VideoByUrlParams: any /* TODO */): void;
683
+ cueVideoByUrl(
684
+ mediaContentUrl: string,
685
+ startSeconds?: number,
686
+ suggestedQuality?: string,
687
+ ): void;
688
+ cueVideoByUrl(VideoByUrlParams: any /* TODO */): void;
689
+
690
+ // Properties
691
+ size: any;
692
+
693
+ // Playing
694
+ playVideo(): void;
695
+ pauseVideo(): void;
696
+ stopVideo(): void;
697
+ seekTo(seconds: number, allowSeekAhead?: boolean): void;
698
+ clearVideo(): void;
699
+
700
+ // Playlist
701
+ nextVideo(): void;
702
+ previousVideo(): void;
703
+ playVideoAt(index: number): void;
704
+
705
+ // Volume
706
+ mute(): void;
707
+ unMute(): void;
708
+ isMuted(): boolean;
709
+ setVolume(volume: number): void;
710
+ getVolume(): number;
711
+
712
+ // Sizing
713
+ setSize(width: number, height: number): any;
714
+
715
+ // Playback
716
+ getPlaybackRate(): number;
717
+ setPlaybackRate(suggestedRate: number): void;
718
+ getAvailablePlaybackRates(): number[];
719
+
720
+ // Behavior
721
+ setLoop(loopPlaylists: boolean): void;
722
+ setShuffle(shufflePlaylist: boolean): void;
723
+
724
+ // Status
725
+ getVideoLoadedFraction(): number;
726
+ getPlayerState(): number;
727
+ getCurrentTime(): number;
728
+ getVideoStartBytes(): number;
729
+ getVideoBytesLoaded(): number;
730
+ getVideoBytesTotal(): number;
731
+
732
+ // Information
733
+ getDuration(): number;
734
+ getVideoUrl(): string;
735
+ getVideoEmbedCode(): string;
736
+ getVideoData(): VideoData;
737
+
738
+ // Playlist
739
+ getPlaylist(): any[];
740
+ getPlaylistIndex(): number;
741
+
742
+ // Event Listener
743
+ addEventListener(event: string, handler: EventHandler): void;
744
+
745
+ // DOM
746
+ destroy(): void;
747
+ }
748
+
749
+ export enum PlayerState {
750
+ UNSTARTED,
751
+ BUFFERING,
752
+ CUED,
753
+ ENDED,
754
+ PAUSED,
755
+ PLAYING,
756
+ }
757
+ }