youtubei
Version:
Simple package to get information from youtube such as videos, playlists, channels, video information & comments, related videos, up next video, and more!
70 lines (69 loc) • 2.42 kB
TypeScript
import { Thumbnails, YoutubeRawData } from "../../common";
import { Base, BaseProperties } from "../Base";
import { BaseChannel } from "../BaseChannel";
import { PlaylistCompact } from "../PlaylistCompact";
import { VideoCompact } from "../VideoCompact";
import { VideoCaptions } from "./VideoCaptions";
import { VideoRelated } from "./VideoRelated";
/** @hidden */
export interface BaseVideoProperties extends BaseProperties {
id?: string;
title?: string;
thumbnails?: Thumbnails;
description?: string;
channel?: BaseChannel | null;
uploadDate?: string;
viewCount?: number | null;
likeCount?: number | null;
isLiveContent?: boolean;
tags?: string[];
formats?: YoutubeRawData[];
adaptiveFormats?: YoutubeRawData[];
}
/** Represents a Video */
export declare class BaseVideo extends Base implements BaseVideoProperties {
id: string;
/** The title of this video */
title: string;
/** Thumbnails of the video with different sizes */
thumbnails: Thumbnails;
/** The description of this video */
description: string;
/** The channel that uploaded this video */
channel: BaseChannel | null;
/** The collaborators of this video */
channels: BaseChannel[] | null;
/** The date this video is uploaded at */
uploadDate: string;
/** How many view does this video have, null if the view count is hidden */
viewCount: number | null;
/** How many like does this video have, null if the like count is hidden */
likeCount: number | null;
/** Whether this video is a live content or not */
isLiveContent: boolean;
/** The tags of this video */
/** The formats of the video */
formats: YoutubeRawData[];
/** The adaptive formats of the video */
adaptiveFormats: YoutubeRawData[];
tags: string[];
/** Continuable of videos / playlists related to this video */
related: VideoRelated;
/** Captions helper class of this video (if caption exists in this video) */
captions: VideoCaptions | null;
/** @hidden */
constructor(attr: BaseVideoProperties);
/**
* Load this instance with raw data from Youtube
*
* @hidden
*/
load(data: YoutubeRawData): BaseVideo;
/**
* Video / playlist to play next after this video, alias to
* ```js
* video.related.items[0]
* ```
*/
get upNext(): VideoCompact | PlaylistCompact;
}