mirror of
https://github.com/zhigang1992/DefinitelyTyped.git
synced 2026-04-24 05:06:02 +08:00
284 lines
7.2 KiB
TypeScript
284 lines
7.2 KiB
TypeScript
const players: YT.Player[] = [
|
|
new YT.Player(document.body, {}),
|
|
new YT.Player(document.body, {
|
|
width: 100,
|
|
height: 100,
|
|
}),
|
|
new YT.Player("id", {
|
|
width: "100%",
|
|
height: "100%",
|
|
videoId: "videoId",
|
|
playerVars: {},
|
|
events: {},
|
|
host: 'https://www.youtube.com',
|
|
}),
|
|
new YT.Player("id", {
|
|
playerVars: {
|
|
autohide: YT.AutoHide.AlwaysVisible,
|
|
autoplay: YT.AutoPlay.AutoPlay,
|
|
cc_load_policy: YT.ClosedCaptionsLoadPolicy.ForceOn,
|
|
color: "red",
|
|
controls: YT.Controls.Hide,
|
|
disablekb: YT.KeyboardControls.Disable,
|
|
enablejsapi: YT.JsApi.Disable,
|
|
end: 9001,
|
|
fs: YT.FullscreenButton.Hide,
|
|
hl: "en-us",
|
|
iv_load_policy: YT.IvLoadPolicy.Hide,
|
|
list: "my query",
|
|
listType: "search",
|
|
loop: YT.Loop.Loop,
|
|
modestbranding: YT.ModestBranding.Full,
|
|
origin: "localhost",
|
|
playlist: "1,2",
|
|
playsinline: YT.PlaysInline.Fullscreen,
|
|
rel: YT.RelatedVideos.Hide,
|
|
showinfo: YT.ShowInfo.Hide,
|
|
start: 0,
|
|
},
|
|
}),
|
|
new YT.Player("id", {
|
|
events: {
|
|
onReady(event: YT.PlayerEvent) {
|
|
const targetPlayer: YT.Player = event.target;
|
|
},
|
|
onStateChange(event: YT.OnStateChangeEvent) {
|
|
const targetPlayer: YT.Player = event.target;
|
|
const playerData: YT.PlayerState = event.data;
|
|
},
|
|
onPlaybackQualityChange(event: YT.OnPlaybackQualityChangeEvent) {
|
|
const targetPlayer: YT.Player = event.target;
|
|
const newQuality: string = event.data;
|
|
},
|
|
onPlaybackRateChange(event: YT.OnPlaybackRateChangeEvent) {
|
|
const targetPlayer: YT.Player = event.target;
|
|
const newRate: number = event.data;
|
|
},
|
|
onError(event: YT.OnErrorEvent) {
|
|
const targetPlayer: YT.Player = event.target;
|
|
const error: YT.PlayerError = event.data;
|
|
},
|
|
onApiChange(event: YT.PlayerEvent) {
|
|
const targetPlayer: YT.Player = event.target;
|
|
},
|
|
}
|
|
}),
|
|
];
|
|
|
|
const ensureNumeric = <TValue extends number>() => {};
|
|
|
|
ensureNumeric<YT.PlayerState>();
|
|
ensureNumeric<YT.PlayerError>();
|
|
ensureNumeric<YT.AutoHide>();
|
|
ensureNumeric<YT.AutoPlay>();
|
|
ensureNumeric<YT.ClosedCaptionsLoadPolicy>();
|
|
ensureNumeric<YT.Controls>();
|
|
ensureNumeric<YT.KeyboardControls>();
|
|
ensureNumeric<YT.JsApi>();
|
|
ensureNumeric<YT.FullscreenButton>();
|
|
ensureNumeric<YT.IvLoadPolicy>();
|
|
ensureNumeric<YT.Loop>();
|
|
ensureNumeric<YT.ModestBranding>();
|
|
ensureNumeric<YT.PlaysInline>();
|
|
ensureNumeric<YT.RelatedVideos>();
|
|
ensureNumeric<YT.ShowInfo>();
|
|
|
|
const ensureString = <TValue extends string>() => {}
|
|
|
|
ensureString<YT.ProgressBarColor>();
|
|
ensureString<YT.ListType>();
|
|
ensureString<YT.ListTypePlayer>();
|
|
ensureString<YT.ListTypeSearch>();
|
|
ensureString<YT.ListTypeUserUploads>();
|
|
ensureString<YT.SuggestedVideoQuality>();
|
|
|
|
const player = new YT.Player("", {});
|
|
|
|
player.cueVideoById("id");
|
|
player.cueVideoById("id", 0);
|
|
player.cueVideoById("id", 9001, "default");
|
|
player.cueVideoById("id", 9001, "small");
|
|
|
|
player.cueVideoById({
|
|
videoId: "id",
|
|
});
|
|
|
|
player.cueVideoById({
|
|
startSeconds: 0,
|
|
endSeconds: 9001,
|
|
suggestedQuality: "highres",
|
|
videoId: "id",
|
|
});
|
|
|
|
player.loadVideoById("id");
|
|
player.loadVideoById("id", 0);
|
|
player.loadVideoById("id", 0, "medium");
|
|
player.loadVideoById("id", 0, "large");
|
|
|
|
player.loadVideoById({
|
|
videoId: "id",
|
|
});
|
|
|
|
player.loadVideoById({
|
|
endSeconds: 9001,
|
|
startSeconds: 0,
|
|
suggestedQuality: "hd720",
|
|
videoId: "id",
|
|
});
|
|
|
|
player.cueVideoByUrl("url");
|
|
player.cueVideoByUrl("url", 0);
|
|
player.cueVideoByUrl("url", 0, "hd1080");
|
|
player.cueVideoByUrl("url", 0, "highres");
|
|
|
|
player.cueVideoByUrl({
|
|
mediaContentUrl: "url",
|
|
});
|
|
|
|
player.cueVideoByUrl({
|
|
endSeconds: 9001,
|
|
mediaContentUrl: "url",
|
|
startSeconds: 0,
|
|
suggestedQuality: "hd720",
|
|
});
|
|
|
|
player.loadVideoByUrl("url");
|
|
player.loadVideoByUrl("url", 0);
|
|
player.loadVideoByUrl("url", 0, "hd1080");
|
|
player.loadVideoByUrl("url", 0, "highres");
|
|
|
|
player.loadVideoByUrl({
|
|
mediaContentUrl: "url",
|
|
});
|
|
|
|
player.loadVideoByUrl({
|
|
endSeconds: 9001,
|
|
mediaContentUrl: "url",
|
|
startSeconds: 0,
|
|
suggestedQuality: "hd720",
|
|
});
|
|
|
|
player.cuePlaylist(["play", "list"]);
|
|
player.cuePlaylist(["play", "list"], 7);
|
|
player.cuePlaylist(["play", "list"], 7, 0);
|
|
player.cuePlaylist(["play", "list"], 7, 0, "default");
|
|
|
|
player.cuePlaylist({
|
|
list: "playlist",
|
|
listType: "player",
|
|
});
|
|
|
|
player.cuePlaylist({
|
|
index: 7,
|
|
list: "playlist",
|
|
listType: "search",
|
|
});
|
|
|
|
player.cuePlaylist({
|
|
endSeconds: 9001,
|
|
index: 7,
|
|
list: "playlist",
|
|
listType: "search",
|
|
startSeconds: 0,
|
|
suggestedQuality: "hd720",
|
|
});
|
|
|
|
player.loadPlaylist(["play", "list"]);
|
|
player.loadPlaylist(["play", "list"], 7);
|
|
player.loadPlaylist(["play", "list"], 7, 0);
|
|
player.loadPlaylist(["play", "list"], 7, 0, "default");
|
|
|
|
player.loadPlaylist({
|
|
list: "playlist",
|
|
listType: "player",
|
|
});
|
|
|
|
player.loadPlaylist({
|
|
index: 7,
|
|
listType: "search",
|
|
list: "playlist",
|
|
});
|
|
|
|
player.loadPlaylist({
|
|
endSeconds: 9001,
|
|
index: 7,
|
|
listType: "search",
|
|
list: "playlist",
|
|
startSeconds: 0,
|
|
suggestedQuality: "hd720",
|
|
});
|
|
|
|
player.playVideo();
|
|
|
|
player.pauseVideo();
|
|
|
|
player.stopVideo();
|
|
|
|
player.seekTo(9001, true);
|
|
|
|
player.nextVideo();
|
|
|
|
player.previousVideo();
|
|
|
|
player.playVideoAt(0);
|
|
|
|
player.mute();
|
|
|
|
player.unMute();
|
|
|
|
const muted: boolean = player.isMuted();
|
|
|
|
player.setVolume(49);
|
|
|
|
const volume: number = player.getVolume();
|
|
|
|
player.setSize(350, 490);
|
|
|
|
const playbackRate: number = player.getPlaybackRate();
|
|
|
|
player.setPlaybackRate(2);
|
|
|
|
const playbackRates: number[] = player.getAvailablePlaybackRates();
|
|
|
|
player.setLoop(true);
|
|
|
|
player.setShuffle(false);
|
|
|
|
const fraction: number = player.getVideoLoadedFraction();
|
|
|
|
const state: YT.PlayerState = player.getPlayerState();
|
|
|
|
const time: number = player.getCurrentTime();
|
|
|
|
const quality: YT.SuggestedVideoQuality = player.getPlaybackQuality();
|
|
|
|
player.setPlaybackQuality(quality);
|
|
player.setPlaybackQuality("medium");
|
|
|
|
const qualities: YT.SuggestedVideoQuality[] = player.getAvailableQualityLevels();
|
|
|
|
for (const quality of player.getAvailableQualityLevels()) {
|
|
player.setPlaybackQuality(quality)
|
|
}
|
|
|
|
const duration: number = player.getDuration();
|
|
|
|
const videoUrl: string = player.getVideoUrl();
|
|
|
|
const videoEmbed: string = player.getVideoEmbedCode();
|
|
|
|
const playlist: string[] = player.getPlaylist();
|
|
|
|
const playlistIndex: number = player.getPlaylistIndex();
|
|
|
|
player.addEventListener("onReady", (event: YT.PlayerEvent) => {});
|
|
player.addEventListener("onStateChange", (event: YT.OnStateChangeEvent) => {});
|
|
player.addEventListener("onPlaybackQualityChange", (event: YT.OnPlaybackQualityChangeEvent) => {});
|
|
player.addEventListener("onPlaybackRateChange", (event: YT.OnPlaybackRateChangeEvent) => {});
|
|
player.addEventListener("onError", (event: YT.OnErrorEvent) => {});
|
|
player.addEventListener("onApiChange", (event: YT.PlayerEvent) => {});
|
|
|
|
const frame: HTMLIFrameElement = player.getIframe();
|
|
|
|
player.destroy();
|