interface WithHype {
    artist: string;
    artist_unicode: string;
    covers: {
        card: string;
        card@2x: string;
        cover: string;
        cover@2x: string;
        list: string;
        list@2x: string;
        slimcover: string;
        slimcover@2x: string;
    };
    creator: string;
    favourite_count: number;
    hype: null | {
        current: number;
        required: number;
    };
    id: number;
    nsfw: boolean;
    offset: number;
    play_count: number;
    preview_url: string;
    source: string;
    spotlight: boolean;
    status: string;
    title: string;
    title_unicode: string;
    track_id: null | number;
    user_id: number;
    video: boolean;
}

Hierarchy (view full)

Properties

artist: string
artist_unicode: string
covers: {
    card: string;
    card@2x: string;
    cover: string;
    cover@2x: string;
    list: string;
    list@2x: string;
    slimcover: string;
    slimcover@2x: string;
}
creator: string
favourite_count: number
hype: null | {
    current: number;
    required: number;
}
id: number
nsfw: boolean
offset: number
play_count: number
preview_url: string

A string like that where id is the id of the beatmapset: //b.ppy.sh/preview/58951.mp3

source: string
spotlight: boolean
status: string

Is it ranked, is it graveyarded, etc

title: string

A title readable by any english-speaking person, so it'd be in romaji if the song's title is in Japanese

title_unicode: string

Basically the title is the original language, so with hiragana, katakana and kanji if Japanese

track_id: null | number

If the song exists on a featured artist's page, then it has a track_id

https://osu.ppy.sh/beatmaps/artists/tracks/<track_id> redirects to the page of said featured artist

user_id: number
video: boolean