op 1
This commit is contained in:
24
src/types/media.ts
Normal file
24
src/types/media.ts
Normal file
@@ -0,0 +1,24 @@
|
||||
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)
|
||||
}
|
||||
Reference in New Issue
Block a user