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[]; }