@tobyg74/tiktok-api-dl
Version:
Scraper for downloading media in the form of videos, images and audio from Tiktok. Also for stalking Tiktok Users
55 lines (54 loc) • 2.38 kB
TypeScript
import { TiktokAPIResponse } from "./types/downloader/tiktokApi";
import { SSSTikResponse } from "./types/downloader/ssstik";
import { MusicalDownResponse } from "./types/downloader/musicaldown";
import { UserSearchResult } from "./types/search/userSearch";
import { LiveSearchResult } from "./types/search/liveSearch";
import { VideoSearchResult } from "./types/search/videoSearch";
import { TiktokStalkUserResponse } from "./types/get/getProfile";
import { TiktokVideoCommentsResponse } from "./types/get/getComments";
import { TiktokUserPostsResponse } from "./types/get/getUserPosts";
import { TiktokUserFavoriteVideosResponse } from "./types/get/getUserLiked";
type DownloaderVersion = "v1" | "v2" | "v3";
type SearchType = "user" | "live" | "video";
type TiktokDownloaderResponse<T extends DownloaderVersion> = T extends "v1" ? TiktokAPIResponse : T extends "v2" ? SSSTikResponse : T extends "v3" ? MusicalDownResponse : TiktokAPIResponse;
type SearchResult<T extends SearchType> = {
type: T;
} & (T extends "user" ? UserSearchResult : T extends "live" ? LiveSearchResult : VideoSearchResult);
type TiktokSearchResponse<T extends SearchType> = {
status: "success" | "error";
message?: string;
result?: SearchResult<T>[];
page?: number;
totalResults?: number;
};
declare const _default: {
Downloader: <T extends DownloaderVersion>(url: string, options?: {
version: DownloaderVersion;
proxy?: string;
showOriginalResponse?: boolean;
}) => Promise<TiktokDownloaderResponse<T>>;
Search: <T extends SearchType>(keyword: string, options?: {
type?: T;
cookie?: string;
page?: number;
proxy?: string;
}) => Promise<TiktokSearchResponse<T>>;
StalkUser: (username: string, options?: {
cookie?: string | any[];
proxy?: string;
}) => Promise<TiktokStalkUserResponse>;
GetVideoComments: (url: string, options?: {
commentLimit?: number;
proxy?: string;
}) => Promise<TiktokVideoCommentsResponse>;
GetUserPosts: (username: string, options?: {
postLimit?: number;
proxy?: string;
}) => Promise<TiktokUserPostsResponse>;
GetUserLiked: (username: string, options: {
cookie: string | any[];
postLimit?: number;
proxy?: string;
}) => Promise<TiktokUserFavoriteVideosResponse>;
};
export = _default;