55 lines
1.0 KiB
TypeScript
55 lines
1.0 KiB
TypeScript
|
|
export interface Video {
|
|
url: string;
|
|
type: string;
|
|
title: string;
|
|
thumbnail: string;
|
|
uploaderName: string;
|
|
uploaderUrl?: string;
|
|
uploaderAvatar: string;
|
|
uploadedDate: string;
|
|
shortDescription?: string | null;
|
|
duration: number;
|
|
views: number;
|
|
uploaded: number;
|
|
videoId: string;
|
|
providerUrl?: string; // URL complète de la vidéo sur le site du fournisseur
|
|
}
|
|
|
|
export interface VideoDetail extends Video {
|
|
description: string;
|
|
subscribers: number;
|
|
likes: number;
|
|
dislikes: number;
|
|
videoStreams: VideoStream[];
|
|
audioStreams: AudioStream[];
|
|
relatedStreams: Video[];
|
|
comments: Comment[];
|
|
}
|
|
|
|
export interface VideoStream {
|
|
url: string;
|
|
format: string;
|
|
quality: string;
|
|
mimeType: string;
|
|
codec: string;
|
|
videoOnly: boolean;
|
|
}
|
|
|
|
export interface AudioStream {
|
|
url: string;
|
|
format: string;
|
|
quality: string;
|
|
mimeType: string;
|
|
codec: string;
|
|
}
|
|
|
|
export interface Comment {
|
|
author: string;
|
|
thumbnail: string;
|
|
commentText: string;
|
|
commentedTime: string;
|
|
likeCount: number;
|
|
replies?: Comment[];
|
|
}
|