vuetube
Version:
A fast, lightweight, lazyload vue component acting as a thin layer over the YouTube IFrame Player API which renders fast
62 lines (61 loc) • 1.55 kB
TypeScript
/// <reference types="youtube" />
import Vue, { VNode } from 'vue';
declare global {
interface Window {
YT: YT.Player;
onYouTubeIframeAPIReady: () => void;
}
}
declare const _default: import("vue/types/vue").ExtendedVue<Vue, {
isConnectionWarmed: boolean;
isPlayed: boolean;
isLoaded: boolean;
player: YT.Player | null;
}, {
/**
* Add preconnect links
*/
warmConnections(): void;
/**
* Run video
*/
playVideo(): void;
/**
* Run after iframe has been loaded
*/
onIframeLoad(): void;
/**
* Init YouTube API
* @link https://developers.google.com/youtube/iframe_api_reference
*/
initAPI(): void;
/**
* Build player with YouTube API
* @link https://developers.google.com/youtube/iframe_api_reference#Loading_a_Video_Player
*/
initAPIPlayer(): void;
}, {
host: string;
iframeUrl: string;
calculatedAspectRatioPadding: string;
boxComponent: VNode;
thumbnailComponent: VNode | VNode[];
playBtnComponent: VNode;
playBtnIconComponent: VNode | VNode[];
iframeComponent: VNode;
}, {
videoId: string;
isPlaylist: boolean;
aspectRatio: number;
enableCookies: boolean;
playerVars: {};
disableWarming: boolean;
disableWebp: boolean;
imageAlt: string;
imageLoading: string;
resolution: string;
buttonLabel: string;
iframeTitle: string;
iframeAllow: string;
}>;
export default _default;