UNPKG

@ernestoyoofi/yt.loader-to

Version:

An unofficial, promise-based API wrapper for `loader.to` to fetch YouTube video information and generate download links. Written in TypeScript, it's fully typed and easy to use in any Node.js project.

58 lines (57 loc) 1.62 kB
import { AxiosRequestConfig } from "axios"; export interface OptionsDownloadMedia { axios_config?: AxiosRequestConfig; hosting?: String; ajax?: any; } export interface Params_DownloadMedia { link: String; debugging?: Boolean; format: "480" | "720" | "1080" | "1440" | "4k" | "8k" | "mp3" | "ogg" | "wav" | "m4a" | "webm" | "aac" | "opus"; options?: OptionsDownloadMedia; } export interface InfoContent_API_VideoDownloadAPI { id: String; title: String; link: String; thumbnail: String; channel?: { id: String; name: String; link: String | undefined; verified: Boolean | undefined; handle: String; thumbnail: String; }; description: String; views: Number; uploaded: String; duration: Number; durationString: String; } export interface API_Progress_VideoDownloadAPI { success: Boolean | Number; progress?: Number | 0 | 1000; download?: String | null; text?: String; message?: String; } export interface API_VideoDownloadAPI { success: true | Boolean; id?: String; content?: String; info?: { image?: String | undefined; title?: String | undefined; }; repeat_download: true | Boolean; message?: String; cachehash?: String; additional_info?: InfoContent_API_VideoDownloadAPI; progress_url?: String; extended_duration?: Number | null | undefined; } export default function DownloadMedia({ link, debugging, format, options }: Params_DownloadMedia): Promise<{ card?: InfoContent_API_VideoDownloadAPI | any; url: String; }>;