@mica/sdk (SDK contract v1)
    Preparing search index...

    Interface QueueEntry

    One row of the queue.

    key rather than the video id, because the same track queued twice is two rows a person can reorder past or remove independently, and because a playlist entry has no video id at all. Every reference the queue holds internally — the history stack, the shuffle cycle — is a key for that reason.

    interface QueueEntry {
        error?: MusicError | null;
        key: string;
        playlistId: string | null;
        title: string | null;
        videoId: string | null;
    }

    Hierarchy (View Summary)

    Index
    error?: MusicError | null

    Why this row would not play, once it has failed. Kept on the row rather than only in musicError so the reason survives moving on to the next track — a list where the bad row still says what is wrong with it is a list a person can act on.

    key: string
    playlistId: string | null

    The playlist to play through, when the pasted link named one.

    title: string | null

    What the player reported for this row, once it has played it. null until then, and for a playlist row always — see MusicNowPlaying.title for what a playlist is on.

    videoId: string | null

    The video to play, or null for a playlist opened at its first entry.