-
Notifications
You must be signed in to change notification settings - Fork 70
/
index.d.ts
109 lines (95 loc) · 2.48 KB
/
index.d.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
import * as React from 'react';
import { ViewStyle } from 'react-native';
type VideoToken = string;
export type BrightcovePlayerProps = {
policyKey?: string;
accountId?: string;
referenceId?: string;
videoId?: string;
videoToken?: VideoToken;
autoPlay?: boolean;
play?: boolean;
fullscreen?: boolean;
disableDefaultControl?: boolean;
volume?: number;
bitRate?: number;
playbackRate?: number;
onReady?: () => void;
onPlay?: () => void;
onPause?: () => void;
onEnd?: () => void;
onProgress?: ({ currentTime: number }) => void;
onChangeDuration?: ({ duration: number }) => void;
onUpdateBufferProgress?: ({ bufferProgress: number }) => void;
onEnterFullscreen?: () => void;
onExitFullscreen?: () => void;
style?: ViewStyle;
};
export class BrightcovePlayer extends React.Component<
BrightcovePlayerProps,
{}
> {
seekTo(position: number): {};
}
export type BrightcovePlayerPosterProps = {
policyKey?: string;
accountId?: string;
referenceId?: string;
videoId?: string;
videoToken?: VideoToken;
style?: ViewStyle;
};
export class BrightcovePlayerPoster extends React.Component<
BrightcovePlayerPosterProps,
{}
> {}
export namespace BrightcovePlayerUtil {
type PlaylistVideo = {
accountId: String;
videoId: String;
referenceId: String;
name: String;
description: String;
duration: number;
};
type OfflineVideoStatus = {
accountId: string;
videoId: string;
downloadProgress: number;
videoToken: VideoToken;
};
export function requestDownloadVideoWithReferenceId(
accountId: string,
policyKey: string,
referenceId: string,
bitRate?: number
): Promise<VideoToken>;
export function requestDownloadVideoWithVideoId(
accountId: string,
policyKey: string,
videoId: string,
bitRate?: number
): Promise<VideoToken>;
export function getOfflineVideoStatuses(
accountId: string,
policyKey: string
): Promise<OfflineVideoStatus[]>;
export function deleteOfflineVideo(
accountId: string,
policyKey: string,
videoToken: VideoToken
): Promise<void>;
export function getPlaylistWithReferenceId(
accountId: string,
policyKey: string,
referenceId: string
): Promise<PlaylistVideo[]>;
export function getPlaylistWithPlaylistId(
accountId: string,
policyKey: string,
playlistId: string
): Promise<PlaylistVideo[]>;
export function addOfflineNotificationListener(
callback: (statuses: OfflineVideoStatus[]) => void
): Function;
}