feat: add interfaces for xtream api

This commit is contained in:
4gray committed 2023-07-01 11:03:25 +02:00
1 parent 632426d201
commit 7da3e83686
5 files changed
+93 -19

No files matched your search

+11
View File
@@ -0,0 +1,11 @@
export interface XtreamItem {
num: number;
name: string;
stream_type: 'live' | 'movie';
stream_id: number;
stream_icon: string;
added: string;
category_id: string;
custom_sid: string;
direct_source: string;
}
+3 -9
View File
@@ -1,14 +1,8 @@
export interface XtreamLiveStream {
num: number;
name: string;
import { XtreamItem } from './xtream-item.interface';
export interface XtreamLiveStream extends XtreamItem {
stream_type: 'live';
stream_id: number;
stream_icon: string;
epg_channel_id?: number;
added: string;
category_id: string;
custom_sid?: string;
tv_archive: number;
direct_source?: string;
tv_archive_duration: number;
}
+57
View File
@@ -0,0 +1,57 @@
export interface XtreamSerieDetails {
seasons: XtreamSerieSeason[];
info: XtreamSerieInfo;
episodes: Record<string, XtreamSerieEpisode[]>;
}
export interface XtreamSerieInfo {
name: string;
cover: string;
plot: string;
cast: string;
director: string;
genre: string;
releaseDate: string;
last_modified: string;
rating: string;
rating_5based: number;
backdrop_path: string[];
youtube_trailer: string;
episode_run_time: string;
category_id: string;
}
export interface XtreamSerieEpisode {
id: string;
episode_num: number;
title: string;
container_extension: string;
info: {
tmdb_id: number;
releasedate: string;
plot: string;
duration_secs: number;
duration: string;
movie_image: string;
video: Record<string, string>; // TODO
audio: Record<string, string>; // TODO
bitrate: number;
rating: number;
season: string;
};
custom_sid: string;
added: string;
season: number;
direct_source: string;
}
export interface XtreamSerieSeason {
air_date: string;
episode_count: number;
id: number;
name: string;
overview: string;
season_number: number;
cover: string;
cover_big: string;
}
+18
View File
@@ -0,0 +1,18 @@
export interface XtreamSerieItem {
num: number;
name: string;
series_id: number;
cover: string;
plot: string;
cast: string;
director: string;
genre: string;
releaseDate: string;
last_modified: string;
rating: string;
rating_5based: number;
backdrop_path: string[];
youtube_trailer: string;
episode_run_time: string;
category_id: number;
}
+4 -10
View File
@@ -1,14 +1,8 @@
export interface XtreamVodStream {
num: number;
name: string;
stream_type: string;
stream_id: number;
stream_icon: string;
import { XtreamItem } from './xtream-item.interface';
export interface XtreamVodStream extends XtreamItem {
stream_type: 'movie';
rating: number;
rating_5based: number;
added: string;
category_id: string;
container_extension: string;
custom_sid: string;
direct_source: string;
}