mirror of
https://github.com/tubearchivist/tubearchivist-frontend.git
synced 2024-11-16 17:10:12 +00:00
168 lines
3.3 KiB
TypeScript
168 lines
3.3 KiB
TypeScript
export interface Download {
|
|
data: Datum[];
|
|
config: Config;
|
|
paginate: Paginate;
|
|
message: string;
|
|
}
|
|
|
|
export interface Task {
|
|
success: boolean;
|
|
task: string;
|
|
}
|
|
|
|
export type Tasks = "download_pending" | "rescan_pending";
|
|
|
|
export interface Paginate {
|
|
page_size: number;
|
|
page_from: number;
|
|
prev_pages: number[];
|
|
current_page: number;
|
|
max_hits: boolean;
|
|
last_page: number;
|
|
next_pages: number[];
|
|
total_hits: number;
|
|
}
|
|
|
|
export interface Config {
|
|
archive: Archive;
|
|
default_view: DefaultView;
|
|
subscriptions: Subscriptions;
|
|
downloads: Downloads;
|
|
application: Application;
|
|
scheduler: Scheduler;
|
|
}
|
|
|
|
export interface Application {
|
|
app_root: string;
|
|
cache_dir: string;
|
|
videos: string;
|
|
file_template: string;
|
|
colors: string;
|
|
enable_cast: boolean;
|
|
REDIS_HOST: string;
|
|
es_url: string;
|
|
es_auth: string[];
|
|
HOST_UID: number;
|
|
HOST_GID: number;
|
|
}
|
|
|
|
export interface Archive {
|
|
sort_by: string;
|
|
sort_order: string;
|
|
page_size: number;
|
|
}
|
|
|
|
export interface DefaultView {
|
|
home: string;
|
|
channel: string;
|
|
downloads: "grid" | "list";
|
|
playlist: string;
|
|
}
|
|
|
|
export interface Downloads {
|
|
limit_count: boolean;
|
|
limit_speed: boolean;
|
|
sleep_interval: number;
|
|
autodelete_days: boolean;
|
|
format: boolean;
|
|
add_metadata: boolean;
|
|
add_thumbnail: boolean;
|
|
subtitle: boolean;
|
|
subtitle_source: boolean;
|
|
subtitle_index: boolean;
|
|
throttledratelimit: boolean;
|
|
integrate_ryd: boolean;
|
|
integrate_sponsorblock: boolean;
|
|
}
|
|
|
|
export interface Scheduler {
|
|
update_subscribed: boolean;
|
|
download_pending: boolean;
|
|
check_reindex: CheckReindex;
|
|
check_reindex_days: number;
|
|
thumbnail_check: CheckReindex;
|
|
run_backup: CheckReindex;
|
|
run_backup_rotate: number;
|
|
}
|
|
|
|
export interface CheckReindex {
|
|
minute: string;
|
|
hour: string;
|
|
day_of_week: string;
|
|
}
|
|
|
|
export interface Subscriptions {
|
|
auto_search: boolean;
|
|
auto_download: boolean;
|
|
channel_size: number;
|
|
}
|
|
|
|
export interface Datum {
|
|
channel_id: string;
|
|
channel_indexed: boolean;
|
|
channel_name: string;
|
|
duration: string;
|
|
published: string;
|
|
status: string;
|
|
timestamp: number;
|
|
title: string;
|
|
vid_thumb_url: string;
|
|
youtube_id: string;
|
|
}
|
|
|
|
export enum Category {
|
|
ScienceTechnology = "Science & Technology",
|
|
}
|
|
|
|
export interface Channel {
|
|
channel_active: boolean;
|
|
channel_banner_url: ChannelBannerURL;
|
|
channel_description: string;
|
|
channel_id: ChannelID;
|
|
channel_last_refresh: LastRefresh;
|
|
channel_name: ChannelName;
|
|
channel_subs: number;
|
|
channel_subscribed: boolean;
|
|
channel_thumb_url: ChannelThumbURL;
|
|
channel_tvart_url: boolean;
|
|
channel_views: number;
|
|
channel_indexed: boolean;
|
|
}
|
|
|
|
export enum ChannelBannerURL {
|
|
CacheChannelsUCFhXFikryT4AFcLkLw2LBLABannerJpg = "/cache/channels/UCFhXFikryT4aFcLkLw2LBLA_banner.jpg",
|
|
}
|
|
|
|
export enum ChannelID {
|
|
UCFhXFikryT4AFcLkLw2LBLA = "UCFhXFikryT4aFcLkLw2LBLA",
|
|
}
|
|
|
|
export enum LastRefresh {
|
|
The05APR2022 = "05 Apr, 2022",
|
|
}
|
|
|
|
export enum ChannelName {
|
|
NileRed = "NileRed",
|
|
}
|
|
|
|
export enum ChannelThumbURL {
|
|
CacheChannelsUCFhXFikryT4AFcLkLw2LBLAThumbJpg = "/cache/channels/UCFhXFikryT4aFcLkLw2LBLA_thumb.jpg",
|
|
}
|
|
|
|
export interface Player {
|
|
watched: boolean;
|
|
duration: number;
|
|
duration_str: string;
|
|
}
|
|
|
|
export enum Playlist {
|
|
PLbaramj7Nly5K5AsvQoI9PJQhy47PfDAF = "PLbaramj7Nly5K5AsvQoI9PJQhy47pfDAf",
|
|
}
|
|
|
|
export interface Stats {
|
|
view_count: number;
|
|
like_count: number;
|
|
dislike_count: number;
|
|
average_rating: null;
|
|
}
|