@vkontakte/videoplayer-core 2.0.162 → 2.0.163-dev.2ed41cd75.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.
Files changed (32) hide show
  1. package/es2015.cjs +39 -39
  2. package/es2015.esm.js +41 -41
  3. package/esnext.cjs +33 -33
  4. package/esnext.esm.js +33 -33
  5. package/evergreen.esm.js +33 -33
  6. package/package.json +2 -2
  7. package/types/player/Player.d.ts +2 -2
  8. package/types/player/types.d.ts +30 -2
  9. package/types/player/utils/extractEmbeddableAllocation.d.ts +3 -0
  10. package/types/providers/ChromecastProvider/types.d.ts +1 -1
  11. package/types/providers/DashLiveProvider/DashLiveProvider.d.ts +1 -1
  12. package/types/providers/DashLiveProvider/utils/LiveDashPlayer.d.ts +1 -1
  13. package/types/providers/DashProvider/baseDashProvider.d.ts +2 -2
  14. package/types/providers/DashProvider/lib/player.d.ts +1 -1
  15. package/types/providers/DashProviderVirtual/baseDashProvider.d.ts +2 -2
  16. package/types/providers/DashProviderVirtual/lib/player/basePlayer.d.ts +2 -2
  17. package/types/providers/HlsLiveProvider/index.d.ts +1 -1
  18. package/types/providers/HlsProvider/index.d.ts +1 -1
  19. package/types/providers/MpegProvider/index.d.ts +1 -1
  20. package/types/providers/ProviderContainer/index.d.ts +2 -2
  21. package/types/providers/WebRTCLiveProvider/WebRTCLiveProvider.d.ts +1 -1
  22. package/types/providers/types.d.ts +10 -4
  23. package/types/providers/utils/Abr/types.d.ts +2 -2
  24. package/types/providers/utils/HTMLVideoElement/destroy.d.ts +1 -1
  25. package/types/providers/utils/HTMLVideoElement/forcePlay.d.ts +1 -1
  26. package/types/providers/utils/HTMLVideoElement/observable.d.ts +2 -1
  27. package/types/providers/utils/HTMLVideoElement/pool.d.ts +3 -2
  28. package/types/providers/utils/createAllocationResolution.d.ts +3 -0
  29. package/types/providers/utils/syncDesiredState.d.ts +3 -3
  30. package/types/utils/buffer/getPlayedTime.d.ts +3 -0
  31. package/types/utils/changePlaybackRate.d.ts +1 -1
  32. package/types/player/utils/selectContainer.d.ts +0 -3
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vkontakte/videoplayer-core",
3
- "version": "2.0.162",
3
+ "version": "2.0.163-dev.2ed41cd75.0",
4
4
  "author": "vk.com",
5
5
  "description": "Videoplayer core library based on the vk.com platform",
6
6
  "homepage": "https://vk.com",
@@ -42,6 +42,6 @@
42
42
  "**/*.d.ts"
43
43
  ],
44
44
  "dependencies": {
45
- "@vkontakte/videoplayer-shared": "1.0.91"
45
+ "@vkontakte/videoplayer-shared": "1.0.92-dev.2ed41cd75.0"
46
46
  }
47
47
  }
@@ -1,6 +1,6 @@
1
1
  import type { IOptionalTuningConfig } from "../utils/tuningConfig";
2
- import type { ILogEntry, Seconds, QualityLimits, VideoQuality, ITracer } from "@vkontakte/videoplayer-shared";
3
- import { type IAudioStream, type IConfig, type ICueSettings, type IExternalTextTrack, type IPlayer, type ITextTrack, type IVideoStream, type PlaybackRate, PredefinedQualityLimits, type PlayerInfoImpl, type PlayerEventsImpl, type PlayerExperimentalImpl } from "./types";
2
+ import type { ILogEntry, ITracer, QualityLimits, Seconds, VideoQuality } from "@vkontakte/videoplayer-shared";
3
+ import { type IAudioStream, type IConfig, type ICueSettings, type IExternalTextTrack, type IPlayer, type ITextTrack, type IVideoStream, type PlaybackRate, type PlayerEventsImpl, type PlayerExperimentalImpl, type PlayerInfoImpl, PredefinedQualityLimits } from "./types";
4
4
  import type { IPlayerOptions } from "../utils/playerOptions";
5
5
  export default class Player implements IPlayer {
6
6
  private readonly subscription;
@@ -1,4 +1,4 @@
1
- import type { IObservable, IValueObservable, IValueSubject, ILogEntry, Kbps, Milliseconds, Seconds, IRectangle, IError, QualityLimits, VideoQuality, Subject, ValueSubject } from "@vkontakte/videoplayer-shared";
1
+ import type { IError, ILogEntry, IObservable, IRectangle, IValueObservable, IValueSubject, Kbps, Milliseconds, QualityLimits, Seconds, Subject, ValueSubject, VideoQuality } from "@vkontakte/videoplayer-shared";
2
2
  import type { Pixel } from "../utils/3d/types";
3
3
  import type { dump } from "../utils/playbackTelemetry";
4
4
  export interface StartEnd<Unit extends number> {
@@ -251,6 +251,12 @@ export interface PlayerInfoValues {
251
251
  * default value: `Infinity`
252
252
  */
253
253
  duration$: Seconds;
254
+ /**
255
+ * Сумма времени воспроизведенных отрывков
256
+ *
257
+ * default value: `0`
258
+ */
259
+ playedTime$: Seconds;
254
260
  muted$: boolean;
255
261
  volume$: number;
256
262
  availableVideoStreams$: IVideoStream[];
@@ -527,7 +533,9 @@ export interface IVolumeState {
527
533
  muted: boolean;
528
534
  }
529
535
  export interface IConfig {
530
- container: string | HTMLElement;
536
+ /** @deprecated */
537
+ container?: string | HTMLElement;
538
+ readonly allocation?: TAnyAllocation;
531
539
  sources: ISources;
532
540
  meta?: IMetadata;
533
541
  failoverHosts?: string[];
@@ -539,6 +547,26 @@ export interface IConfig {
539
547
  */
540
548
  handleNetworkRecoverableErrorAsProviderError?: boolean;
541
549
  }
550
+ export type TAllocationParent = string | HTMLElement;
551
+ export type TAllocationSelf = HTMLAudioElement;
552
+ export interface IAllocation<Parent extends TAllocationParent = TAllocationParent> {
553
+ readonly strategy: string;
554
+ readonly parent?: Parent;
555
+ readonly self?: TAllocationSelf;
556
+ }
557
+ export interface IEmbeddableAllocation<Parent extends TAllocationParent = TAllocationParent> extends IAllocation<Parent> {
558
+ readonly strategy: "embeddable";
559
+ readonly parent: Parent;
560
+ readonly self?: never;
561
+ }
562
+ export type IStringifiedEmbeddableAllocation = IEmbeddableAllocation<string>;
563
+ export type IDirectEmbeddableAllocation = IEmbeddableAllocation<HTMLElement>;
564
+ export interface IPersonalAllocation extends IAllocation {
565
+ readonly strategy: "personal";
566
+ readonly self: TAllocationSelf;
567
+ readonly parent?: never;
568
+ }
569
+ export type TAnyAllocation = IStringifiedEmbeddableAllocation | IDirectEmbeddableAllocation | IPersonalAllocation;
542
570
  export interface ISources {
543
571
  [VideoFormat.MPEG]?: IMpegSource;
544
572
  [VideoFormat.DASH]?: IDashURLSource;
@@ -0,0 +1,3 @@
1
+ import type { IConfig, IDirectEmbeddableAllocation } from "../types";
2
+ declare const _default: (config: IConfig) => IDirectEmbeddableAllocation | null;
3
+ export default _default;
@@ -1,7 +1,7 @@
1
1
  import type { IMetadata, ISources, VideoFormat } from "../../player/types";
2
2
  import type { IProviderParams } from "../types";
3
3
  import type { IChromecastConnection } from "./ChromecastInitializer/types";
4
- export interface IParams extends Omit<IProviderParams<ISources>, "skipVideoElVolumeSync$"> {
4
+ export interface IParams extends Omit<IProviderParams<ISources>, "skipVideoElVolumeSync$" | "allocation"> {
5
5
  meta: IMetadata;
6
6
  format: VideoFormat;
7
7
  connection: IChromecastConnection;
@@ -11,7 +11,7 @@ type Params = IProviderParams<IDashURLSource> & {
11
11
  export default class DashLiveProvider implements IProvider {
12
12
  private subscription;
13
13
  private volumeSubscription;
14
- private video;
14
+ private readonly allocation;
15
15
  private videoState;
16
16
  private dash;
17
17
  private representations$;
@@ -5,7 +5,7 @@ import { IRepresentation, State } from "../types";
5
5
  import { Subject } from "@vkontakte/videoplayer-shared";
6
6
  import { PlaybackState } from "../../../player/types";
7
7
  interface IParams {
8
- videoElement: HTMLVideoElement;
8
+ videoElement: HTMLMediaElement;
9
9
  videoState: IStateMachine<State>;
10
10
  playbackState: IStateMachine<PlaybackState>;
11
11
  liveOffset: ILiveOffset;
@@ -2,7 +2,7 @@ import type { IAudioTrack, IDashURLSource, IHLSSource, IInternalTextTrack, IVide
2
2
  import type { IProviderSubscriptionInfo } from "./lib/types";
3
3
  import { ProviderState } from "./lib/types";
4
4
  import type { CommonInit, Representation, Stream } from "../utils/parsers/types";
5
- import type { IProvider, IProviderParams } from "../types";
5
+ import type { IProvider, IProviderAllocationResolution, IProviderParams } from "../types";
6
6
  import type { IObservableVideo } from "../utils/HTMLVideoElement/observable";
7
7
  import { TrackHistory } from "../../utils/autoSelectTrack";
8
8
  import type { IStateMachine } from "../../utils/StateMachine/types";
@@ -26,7 +26,7 @@ export default abstract class BaseDashProvider implements IProvider {
26
26
  protected subscription: ISubscription;
27
27
  protected volumeSubscription: ISubscription;
28
28
  protected videoState: IStateMachine<ProviderState>;
29
- protected video: HTMLVideoElement;
29
+ protected readonly allocation: IProviderAllocationResolution;
30
30
  protected observableVideo: IObservableVideo | null;
31
31
  protected player: Player;
32
32
  protected params: IParams;
@@ -89,7 +89,7 @@ export declare class Player {
89
89
  private dashMaxTvVideoQuality;
90
90
  private destroyController;
91
91
  constructor(params: Params);
92
- initManifest: ReturnType<typeof abortable<[HTMLVideoElement, string, number]>>;
92
+ initManifest: ReturnType<typeof abortable<[HTMLMediaElement, string, number]>>;
93
93
  updateManifest: ReturnType<typeof abortable<[], Manifest | null>>;
94
94
  setSmartRepresentationSwitch(state: boolean): void;
95
95
  seekLive(nextOffset: Milliseconds): Promise<void>;
@@ -2,7 +2,7 @@ import type { IAudioTrack, IBaseTrack, IDashURLSource, IHLSSource, IInternalText
2
2
  import type { IProviderSubscriptionInfo } from "./lib/types";
3
3
  import { ProviderState } from "./lib/types";
4
4
  import type { CommonInit, Representation, Stream } from "../utils/parsers/types";
5
- import type { IProvider, IProviderParams } from "../types";
5
+ import type { IProvider, IProviderAllocationResolution, IProviderParams } from "../types";
6
6
  import type { IObservableVideo } from "../utils/HTMLVideoElement/observable";
7
7
  import { TrackHistory } from "../../utils/autoSelectTrack";
8
8
  import type { IStateMachine } from "../../utils/StateMachine/types";
@@ -26,7 +26,7 @@ export default abstract class BaseDashProvider implements IProvider {
26
26
  protected subscription: ISubscription;
27
27
  protected volumeSubscription: ISubscription;
28
28
  protected videoState: IStateMachine<ProviderState>;
29
- protected video: HTMLVideoElement;
29
+ protected readonly allocation: IProviderAllocationResolution;
30
30
  protected observableVideo: IObservableVideo | null;
31
31
  protected player: BasePlayer;
32
32
  protected params: IParams;
@@ -14,7 +14,7 @@ import type { Params } from "./types";
14
14
  import { State } from "./types";
15
15
  import { NativeBufferManager } from "../buffer/nativeBufferManager";
16
16
  export declare abstract class BasePlayer {
17
- protected element: HTMLVideoElement | null;
17
+ protected element: HTMLMediaElement | null;
18
18
  protected manifestUrlString: string;
19
19
  protected source: MediaSource | null;
20
20
  protected manifest: Manifest | null;
@@ -80,7 +80,7 @@ export declare abstract class BasePlayer {
80
80
  protected abstract setSourceInitDuration(): void;
81
81
  protected abstract restoreAfterDeepStall(): Promise<void>;
82
82
  initRepresentations: ReturnType<typeof abortable<[Representation["id"], Representation["id"] | undefined, IHLSSource | undefined]>>;
83
- initManifest(element: HTMLVideoElement, manifestBaseUrlString: string, offset: number): Promise<void>;
83
+ initManifest(element: HTMLMediaElement, manifestBaseUrlString: string, offset: number): Promise<void>;
84
84
  initBuffer(): void;
85
85
  switchRepresentation(kind: StreamKind, id: Representation["id"], mode: SwithRepresentationMode): Promise<void>;
86
86
  seek(requestedPosition: Milliseconds, forcePrecise?: boolean): Promise<void>;
@@ -12,7 +12,7 @@ export default class HlsLiveProvider implements IProvider {
12
12
  private subscription;
13
13
  private volumeSubscription;
14
14
  private videoState;
15
- private video;
15
+ private readonly allocation;
16
16
  private params;
17
17
  private textTracksManager;
18
18
  private liveTextManager;
@@ -7,7 +7,7 @@ export default class HlsProvider implements IProvider {
7
7
  private subscription;
8
8
  private volumeSubscription;
9
9
  private videoState;
10
- private video;
10
+ private readonly allocation;
11
11
  private params;
12
12
  private textTracksManager;
13
13
  private masterManifest;
@@ -5,7 +5,7 @@ export default class MpegProvider implements IProvider {
5
5
  private subscription;
6
6
  private volumeSubscription;
7
7
  private videoState;
8
- private video;
8
+ private readonly allocation;
9
9
  private trackUrls;
10
10
  private params;
11
11
  private textTracksManager;
@@ -3,10 +3,10 @@ import { VideoFormat } from "../../player/types";
3
3
  import type { ITuningConfig } from "../../utils/tuningConfig";
4
4
  import type { IError, ISubject, IValueSubject, IRectangle } from "@vkontakte/videoplayer-shared";
5
5
  import { ValueSubject } from "@vkontakte/videoplayer-shared";
6
- import type { IDesiredState, IProviderDependencies, IProviderOutput } from "../types";
6
+ import type { IDesiredState, IProviderDependencies, IProviderOutput, TProviderAllocation } from "../types";
7
7
  import type { IProviderContainer, IProviderEntry } from "./types";
8
8
  interface IParams extends IProviderDependencies {
9
- container: HTMLElement;
9
+ allocation: TProviderAllocation;
10
10
  sources: ISources;
11
11
  meta: IMetadata;
12
12
  failoverHosts: string[];
@@ -10,7 +10,7 @@ export default class WebRTCLiveProvider implements IProvider {
10
10
  private readonly volumeSubscription;
11
11
  private readonly params;
12
12
  private log;
13
- private video;
13
+ private readonly allocation;
14
14
  private videoState;
15
15
  private liveStreamClient;
16
16
  private maxSeekBackTime$;
@@ -1,8 +1,8 @@
1
1
  import type { ITuningConfig } from "../utils/tuningConfig";
2
- import type { ILogger, ISubject, IValueSubject, Milliseconds, Seconds, IRange, IError, QualityLimits, IWarning, IComponentLogger, ITracer, IRectangle } from "@vkontakte/videoplayer-shared";
2
+ import type { IComponentLogger, IError, ILogger, IRange, IRectangle, ISubject, ITracer, IValueSubject, IWarning, Milliseconds, QualityLimits, Seconds } from "@vkontakte/videoplayer-shared";
3
3
  import type { IChromecastInitializer } from "./ChromecastProvider/ChromecastInitializer/types";
4
- import type { HttpConnectionType, HttpConnectionMetrics, HttpDownloadMetrics, VideoCodec, AudioCodec, IAudioStream, IAudioTrack, ICueSettings, ISources, IVideoStream, SeekState } from "../player/types";
5
- import type { IExternalTextTrack, IInternalTextTrack, ITextTrack, IVideoTrack, IVolumeState, PlaybackState, PlaybackRate } from "../player/types";
4
+ import type { IExternalTextTrack, IInternalTextTrack, ITextTrack, IVideoTrack, IVolumeState, PlaybackRate, PlaybackState } from "../player/types";
5
+ import type { AudioCodec, HttpConnectionMetrics, HttpConnectionType, HttpDownloadMetrics, IAudioStream, IAudioTrack, ICueSettings, IDirectEmbeddableAllocation, IPersonalAllocation, ISources, IVideoStream, SeekState, TAnyAllocation, VideoCodec } from "../player/types";
6
6
  import type { IStateMachine } from "../utils/StateMachine/types";
7
7
  import type ThroughputEstimator from "../utils/ThroughputEstimator";
8
8
  import type { Scene3D } from "../utils/3d/Scene3D";
@@ -21,7 +21,7 @@ export interface IProviderDependencies {
21
21
  };
22
22
  }
23
23
  export interface IProviderParams<TSourceType> extends IProviderDependencies {
24
- container: HTMLElement;
24
+ readonly allocation: TProviderAllocation;
25
25
  source: TSourceType;
26
26
  desiredState: IDesiredState;
27
27
  output: IProviderOutput;
@@ -66,6 +66,7 @@ export type IDesiredState = { [K in keyof DesiredStateValues] : IStateMachine<De
66
66
  export interface IProviderOutput {
67
67
  position$: IValueSubject<Seconds>;
68
68
  duration$: IValueSubject<Seconds>;
69
+ playedTime$: IValueSubject<Seconds>;
69
70
  volume$: IValueSubject<IVolumeState>;
70
71
  currentVideoSegmentLength$: IValueSubject<number>;
71
72
  currentAudioSegmentLength$: IValueSubject<number>;
@@ -129,3 +130,8 @@ export interface IProviderOutput {
129
130
  playbackState$: IValueSubject<PlaybackState | string>;
130
131
  getCurrentTime$: IValueSubject<(() => number) | null>;
131
132
  }
133
+ export type TProviderAllocation = Extract<TAnyAllocation, IDirectEmbeddableAllocation | IPersonalAllocation>;
134
+ export interface IProviderAllocationResolution {
135
+ readonly target: HTMLMediaElement;
136
+ readonly video: HTMLVideoElement | null;
137
+ }
@@ -55,7 +55,7 @@ export interface IInitAbrManagerContext {
55
55
  throughput$: IValueSubject<Kbps>;
56
56
  rtt$: IValueSubject<Milliseconds>;
57
57
  throughputVariance$?: IValueSubject<number>;
58
- element: HTMLVideoElement;
58
+ element: HTMLMediaElement;
59
59
  failedVideoTrack: Nullable<IVideoTrack>;
60
60
  abrLogger: IComponentLogger;
61
61
  panelSize?: IRectangle;
@@ -63,7 +63,7 @@ export interface IInitAbrManagerContext {
63
63
  export interface IVideoElementAbrManagerContext {
64
64
  observableVideo: IObservableVideo;
65
65
  elementVisible$: IValueSubject<boolean>;
66
- elementSizeManager: ElementSizeManager;
66
+ elementSizeManager?: ElementSizeManager;
67
67
  }
68
68
  export interface IVideoTracksContext {
69
69
  videoTracksAsc: IVideoTrack[];
@@ -1 +1 @@
1
- export declare const destroy: (video: HTMLVideoElement, clearVideoElementInnerHTML: boolean) => void;
1
+ export declare const destroy: (video: HTMLMediaElement, clearVideoElementInnerHTML: boolean) => void;
@@ -4,5 +4,5 @@
4
4
  * @param {Function} soundNotAllowedCallback - колбэк, который вызовется если нам не разрешили играть со звуком
5
5
  * @return {Promise}<boolean> - получилось начать воспроизведение
6
6
  */
7
- declare const _default: (video: HTMLVideoElement, soundNotAllowedCallback?: () => void) => Promise<boolean>;
7
+ declare const _default: (video: HTMLMediaElement, soundNotAllowedCallback?: () => void) => Promise<boolean>;
8
8
  export default _default;
@@ -12,6 +12,7 @@ export interface IObservableVideo {
12
12
  progress$: IObservable<undefined>;
13
13
  timeUpdate$: IObservable<Seconds>;
14
14
  durationChange$: IObservable<Seconds>;
15
+ playedTime$: IObservable<Seconds>;
15
16
  loadStart$: IObservable<void>;
16
17
  loadedMetadata$: IObservable<undefined>;
17
18
  loadedData$: IObservable<undefined>;
@@ -25,4 +26,4 @@ export interface IObservableVideo {
25
26
  leavePip$: IObservable<PictureInPictureEvent>;
26
27
  destroy: () => void;
27
28
  }
28
- export declare const observe: (video: HTMLVideoElement) => IObservableVideo;
29
+ export declare const observe: (video: HTMLMediaElement) => IObservableVideo;
@@ -1,6 +1,7 @@
1
1
  import type { ITuningConfig } from "../../../utils/tuningConfig";
2
- type AllocateConstraints = Pick<ITuningConfig, "audioVideoSyncRate" | "disableYandexPiP" | "clearVideoElementInnerHTML" | "reuseOwnVideoElement">;
2
+ export type AllocateConstraints = Pick<ITuningConfig, "audioVideoSyncRate" | "disableYandexPiP" | "clearVideoElementInnerHTML" | "reuseOwnVideoElement">;
3
3
  type DisposeConstraints = Pick<ITuningConfig, "keepVideoElement" | "clearVideoElementInnerHTML" | "reuseOwnVideoElement">;
4
4
  export declare const allocate: (container: HTMLElement, { audioVideoSyncRate, disableYandexPiP, clearVideoElementInnerHTML, reuseOwnVideoElement }: AllocateConstraints) => HTMLVideoElement;
5
- export declare const dispose: (videoElement: HTMLVideoElement, { keepVideoElement, clearVideoElementInnerHTML, reuseOwnVideoElement }: DisposeConstraints) => void;
5
+ export declare const initializeAudio: (element: HTMLAudioElement) => HTMLAudioElement;
6
+ export declare const dispose: (element: HTMLMediaElement, constraints: DisposeConstraints) => void;
6
7
  export {};
@@ -0,0 +1,3 @@
1
+ import type { IProviderAllocationResolution, TProviderAllocation } from "../types";
2
+ import { type AllocateConstraints } from "./HTMLVideoElement/pool";
3
+ export declare function resolveAllocation(allocation: TProviderAllocation, constraints: AllocateConstraints): IProviderAllocationResolution;
@@ -6,9 +6,9 @@ declare const syncDesiredState: <Value>(desiredState: IStateMachine<Value | unde
6
6
  changed$?: IObservable<Value | undefined>;
7
7
  onError?: IListener<Error | unknown>;
8
8
  }) => ISubscription;
9
- export declare const syncVideoLooped: (video: HTMLVideoElement, desiredState: IStateMachine<boolean>, onError?: IListener<Error | unknown>) => ISubscription;
10
- export declare const syncVideoVolumeState: (video: HTMLVideoElement, desiredState: IStateMachine<IVolumeState>, changed$: IObservable<IVolumeState>, onError?: IListener<Error | unknown>, params?: {
9
+ export declare const syncVideoLooped: (video: HTMLMediaElement, desiredState: IStateMachine<boolean>, onError?: IListener<Error | unknown>) => ISubscription;
10
+ export declare const syncVideoVolumeState: (video: HTMLMediaElement, desiredState: IStateMachine<IVolumeState>, changed$: IObservable<IVolumeState>, onError?: IListener<Error | unknown>, params?: {
11
11
  skipVideoElVolumeSync$: IValueSubject<boolean>;
12
12
  }) => ISubscription;
13
- export declare const syncVideoPlaybackRate: (video: HTMLVideoElement, desiredState: IStateMachine<PlaybackRate>, changed$: IObservable<PlaybackRate>, onError?: IListener<Error | unknown>) => ISubscription;
13
+ export declare const syncVideoPlaybackRate: (video: HTMLMediaElement, desiredState: IStateMachine<PlaybackRate>, changed$: IObservable<PlaybackRate>, onError?: IListener<Error | unknown>) => ISubscription;
14
14
  export default syncDesiredState;
@@ -0,0 +1,3 @@
1
+ import type { Seconds } from "@vkontakte/videoplayer-shared";
2
+ declare const _default: (ranges: TimeRanges) => Seconds;
3
+ export default _default;
@@ -1,2 +1,2 @@
1
1
  import type { Nullable } from "@vkontakte/videoplayer-shared";
2
- export declare const changePlaybackRate: (element: Nullable<HTMLVideoElement>, targetPlaybackRate: number) => void;
2
+ export declare const changePlaybackRate: (element: Nullable<HTMLMediaElement>, targetPlaybackRate: number) => void;
@@ -1,3 +0,0 @@
1
- import type { IConfig } from "../types";
2
- declare const _default: (config: IConfig) => HTMLElement;
3
- export default _default;