mirror of
https://github.com/tubearchivist/tubearchivist-frontend.git
synced 2024-11-22 11:50:14 +00:00
137 lines
2.6 KiB
TypeScript
137 lines
2.6 KiB
TypeScript
export interface Videos {
|
|
data: Datum[];
|
|
config: Config;
|
|
paginate: Paginate;
|
|
}
|
|
|
|
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;
|
|
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: string;
|
|
playlist: string;
|
|
grid_items: number;
|
|
}
|
|
|
|
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;
|
|
cookie_import: 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 {
|
|
active: boolean;
|
|
category: string[];
|
|
channel: Channel;
|
|
date_downloaded: number;
|
|
description: string;
|
|
media_url: string;
|
|
player: Player;
|
|
published: string;
|
|
stats: Stats;
|
|
tags: string[];
|
|
title: string;
|
|
vid_last_refresh: string;
|
|
vid_thumb_base64: boolean;
|
|
vid_thumb_url: string;
|
|
youtube_id: string;
|
|
}
|
|
|
|
export interface Channel {
|
|
channel_active: boolean;
|
|
channel_banner_url: string;
|
|
channel_description: string;
|
|
channel_id: string;
|
|
channel_last_refresh: string;
|
|
channel_name: string;
|
|
channel_subs: number;
|
|
channel_subscribed: boolean;
|
|
channel_thumb_url: string;
|
|
channel_tvart_url: boolean;
|
|
channel_views: number;
|
|
}
|
|
|
|
export interface Player {
|
|
watched: boolean;
|
|
duration: number;
|
|
duration_str: string;
|
|
}
|
|
|
|
export interface Stats {
|
|
view_count: number;
|
|
like_count: number;
|
|
dislike_count: number;
|
|
average_rating: null;
|
|
}
|
|
|
|
export interface Paginate {
|
|
page_size: number;
|
|
page_from: number;
|
|
prev_pages: boolean;
|
|
current_page: number;
|
|
max_hits: boolean;
|
|
last_page: boolean;
|
|
next_pages: any[];
|
|
total_hits: number;
|
|
}
|