Files
stream-capture/src/types/media.ts
Julian Freeman e86bc86793 op 1
2026-04-19 09:56:09 -04:00

25 lines
600 B
TypeScript

export interface VideoMetadata {
id: string
title: string
thumbnail: string
duration?: number | null
uploader?: string | null
url?: string | null
}
export interface SelectableVideoMetadata extends VideoMetadata {
selected: boolean
}
export interface PlaylistMetadata {
id: string
title: string
entries: SelectableVideoMetadata[]
}
export type AnalysisMetadata = VideoMetadata | PlaylistMetadata
export function isPlaylistMetadata(metadata: AnalysisMetadata | null): metadata is PlaylistMetadata {
return !!metadata && Array.isArray((metadata as PlaylistMetadata).entries)
}