Created
December 8, 2021 11:56
-
-
Save enjikaka/55db678a4a8c432e86aebc63134b5a96 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
export interface Root { | |
selfLink: any | |
id: string | |
title: string | |
rows: Row[] | |
} | |
export interface Row { | |
modules: Module[] | |
} | |
export interface Module { | |
id: string | |
type: string | |
width: number | |
title: string | |
description: string | |
preTitle?: string | |
showMore?: ShowMore | |
supportsPaging: boolean | |
quickPlay: boolean | |
layout: any | |
playlistStyle?: string | |
highlights?: Highlight[] | |
scroll?: string | |
pagedList?: PagedList | |
listFormat?: string | |
showTableHeaders?: boolean | |
header?: Header | |
} | |
export interface ShowMore { | |
title: string | |
apiPath: string | |
} | |
export interface Highlight { | |
title: string | |
item: Item | |
} | |
export interface Item { | |
type: string | |
item: Item2 | |
} | |
export interface Item2 { | |
id: any | |
title: string | |
subTitle?: string | |
graphic?: Graphic | |
images?: Images | |
sharingImages: any | |
mixType?: string | |
contentBehavior?: string | |
cover?: string | |
vibrantColor?: string | |
videoCover?: string | |
url?: string | |
artists?: Artist[] | |
explicit?: boolean | |
streamReady?: boolean | |
streamStartDate?: string | |
allowStreaming?: boolean | |
numberOfTracks?: number | |
numberOfVideos?: number | |
audioQuality?: string | |
audioModes?: string[] | |
releaseDate?: string | |
duration?: number | |
uuid?: string | |
type?: string | |
image?: string | |
squareImage?: string | |
lastItemAddedAt?: string | |
promotedArtists?: PromotedArtist[] | |
creators?: any[] | |
description?: string | |
version: any | |
editable?: boolean | |
trackNumber?: number | |
volumeNumber?: number | |
mixes?: Mixes | |
album?: Album | |
popularity?: number | |
replayGain?: number | |
} | |
export interface Graphic { | |
type: string | |
text: string | |
images: Image[] | |
} | |
export interface Image { | |
id: string | |
vibrantColor: string | |
type: string | |
} | |
export interface Images { | |
SMALL: Small | |
MEDIUM: Medium | |
LARGE: Large | |
} | |
export interface Small { | |
width: number | |
height: number | |
url: string | |
} | |
export interface Medium { | |
width: number | |
height: number | |
url: string | |
} | |
export interface Large { | |
width: number | |
height: number | |
url: string | |
} | |
export interface Artist { | |
picture: string | |
name: string | |
id: number | |
type: string | |
} | |
export interface PromotedArtist { | |
picture: any | |
name: string | |
id: number | |
type: string | |
} | |
export interface Mixes { | |
MASTER_TRACK_MIX: string | |
TRACK_MIX: string | |
} | |
export interface Album { | |
id: number | |
title: string | |
cover: string | |
vibrantColor: string | |
videoCover: any | |
url: string | |
releaseDate: string | |
} | |
export interface PagedList { | |
limit: number | |
offset: number | |
totalNumberOfItems: number | |
items: Item3[] | |
dataApiPath: string | |
} | |
export interface Item3 { | |
id: any | |
title?: string | |
cover?: string | |
vibrantColor?: string | |
videoCover?: string | |
url?: string | |
artists?: Artist2[] | |
explicit?: boolean | |
streamReady?: boolean | |
streamStartDate?: string | |
allowStreaming?: boolean | |
numberOfTracks?: number | |
numberOfVideos?: number | |
audioQuality?: string | |
audioModes?: string[] | |
releaseDate?: string | |
duration?: number | |
subTitle?: string | |
graphic?: Graphic2 | |
images?: Images2 | |
sharingImages?: SharingImages | |
mixType?: string | |
contentBehavior?: string | |
uuid?: string | |
type?: string | |
image?: string | |
squareImage?: string | |
lastItemAddedAt?: string | |
promotedArtists?: PromotedArtist2[] | |
creators?: Creator[] | |
description?: string | |
item?: Item4 | |
version: any | |
editable?: boolean | |
trackNumber?: number | |
volumeNumber?: number | |
mixes?: Mixes2 | |
album?: Album2 | |
popularity?: number | |
replayGain?: number | |
} | |
export interface Artist2 { | |
picture?: string | |
name: string | |
id: number | |
type: string | |
} | |
export interface Graphic2 { | |
type: string | |
text: string | |
images: Image2[] | |
} | |
export interface Image2 { | |
id: string | |
vibrantColor: string | |
type: string | |
} | |
export interface Images2 { | |
SMALL: Small2 | |
MEDIUM: Medium2 | |
LARGE: Large2 | |
} | |
export interface Small2 { | |
width: number | |
height: number | |
url: string | |
} | |
export interface Medium2 { | |
width: number | |
height: number | |
url: string | |
} | |
export interface Large2 { | |
width: number | |
height: number | |
url: string | |
} | |
export interface SharingImages { | |
PORTRAIT: Portrait | |
LANDSCAPE: Landscape | |
} | |
export interface Portrait { | |
width: number | |
height: number | |
url: string | |
} | |
export interface Landscape { | |
width: number | |
height: number | |
url: string | |
} | |
export interface PromotedArtist2 { | |
picture: any | |
name: string | |
id: number | |
type: string | |
} | |
export interface Creator { | |
id: number | |
name: string | |
} | |
export interface Item4 { | |
id: any | |
title: string | |
subTitle?: string | |
graphic?: Graphic3 | |
images?: Images3 | |
sharingImages: any | |
mixType?: string | |
contentBehavior?: string | |
uuid?: string | |
type?: string | |
url?: string | |
image?: string | |
squareImage?: string | |
duration?: number | |
numberOfTracks?: number | |
numberOfVideos?: number | |
lastItemAddedAt?: string | |
promotedArtists?: PromotedArtist3[] | |
creators?: Creator2[] | |
description?: string | |
cover?: string | |
vibrantColor?: string | |
videoCover?: string | |
artists?: Artist3[] | |
explicit?: boolean | |
streamReady?: boolean | |
streamStartDate?: string | |
allowStreaming?: boolean | |
audioQuality?: string | |
audioModes?: string[] | |
releaseDate?: string | |
} | |
export interface Graphic3 { | |
type: string | |
text: string | |
images: Image3[] | |
} | |
export interface Image3 { | |
id: string | |
vibrantColor: string | |
type: string | |
} | |
export interface Images3 { | |
SMALL: Small3 | |
MEDIUM: Medium3 | |
LARGE: Large3 | |
} | |
export interface Small3 { | |
width: number | |
height: number | |
url: string | |
} | |
export interface Medium3 { | |
width: number | |
height: number | |
url: string | |
} | |
export interface Large3 { | |
width: number | |
height: number | |
url: string | |
} | |
export interface PromotedArtist3 { | |
picture: any | |
name: string | |
id: number | |
type: string | |
} | |
export interface Creator2 { | |
id: number | |
name?: string | |
} | |
export interface Artist3 { | |
picture?: string | |
name: string | |
id: number | |
type: string | |
} | |
export interface Mixes2 { | |
MASTER_TRACK_MIX?: string | |
TRACK_MIX?: string | |
} | |
export interface Album2 { | |
id: number | |
title: string | |
cover: string | |
vibrantColor: string | |
videoCover: any | |
url: string | |
releaseDate: string | |
} | |
export interface Header { | |
type: string | |
item: Item5 | |
} | |
export interface Item5 { | |
id: number | |
title: string | |
cover: string | |
vibrantColor: string | |
videoCover: any | |
url: string | |
artists: Artist4[] | |
explicit: boolean | |
streamReady: boolean | |
streamStartDate: string | |
allowStreaming: boolean | |
numberOfTracks: number | |
numberOfVideos: number | |
audioQuality: string | |
audioModes: string[] | |
releaseDate: string | |
duration: number | |
} | |
export interface Artist4 { | |
picture?: string | |
name: string | |
id: number | |
type: string | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment