Type Alias Platformstreamers<T, P>

Platformstreamers<T, P>: {
    currentTotal: number;
    maxLimit: number;
    premium: {
        tierId: string;
        tierName: string;
    };
    streamers: T extends true
        ? P extends "kick"
            ? {
                chatRoomId: string;
                guildId: string;
                streamerId: string | null;
                streamerUserName: string;
            }[]
            : P extends "twitch"
                ? {
                    guildId: string;
                    streamerId: string | null;
                    streamerUserName: string;
                }[]
                : P extends "rumble"
                    ? {
                        guildId: string;
                        streamerUserName: string;
                        type: string;
                    }[]
                    : P extends "tiktok"
                        ? {
                            guildId: string;
                            streamerUserName: string;
                        }[]
                        : P extends "youtube"
                            ? {
                                guildId: string | null;
                                streamerId: string;
                                streamerUserName: string;
                            }[]
                            : P extends "club"
                                ? {
                                    guildId: string;
                                    streamerUserName: string;
                                }[]
                                : never
        : P extends "kick"
            ? KickStreamer[]
            : P extends "twitch"
                ? TwitchStreamer[]
                : P extends "rumble"
                    ? RumbleStreamer[]
                    : P extends "tiktok"
                        ? TikTokStreamer[]
                        : P extends "youtube"
                            ? YouTubeStreamer[]
                            : never;
    thumbnailWaitBaselineSeconds?: number;
    thumbnailWaitOptions?: number[];
}

Type Parameters

Type declaration

  • currentTotal: number
  • maxLimit: number
  • premium: {
        tierId: string;
        tierName: string;
    }
    • tierId: string
    • tierName: string
  • streamers: T extends true
        ? P extends "kick"
            ? {
                chatRoomId: string;
                guildId: string;
                streamerId: string | null;
                streamerUserName: string;
            }[]
            : P extends "twitch"
                ? {
                    guildId: string;
                    streamerId: string | null;
                    streamerUserName: string;
                }[]
                : P extends "rumble"
                    ? {
                        guildId: string;
                        streamerUserName: string;
                        type: string;
                    }[]
                    : P extends "tiktok"
                        ? {
                            guildId: string;
                            streamerUserName: string;
                        }[]
                        : P extends "youtube"
                            ? {
                                guildId: string | null;
                                streamerId: string;
                                streamerUserName: string;
                            }[]
                            : P extends "club"
                                ? {
                                    guildId: string;
                                    streamerUserName: string;
                                }[]
                                : never
        : P extends "kick"
            ? KickStreamer[]
            : P extends "twitch"
                ? TwitchStreamer[]
                : P extends "rumble"
                    ? RumbleStreamer[]
                    : P extends "tiktok"
                        ? TikTokStreamer[]
                        : P extends "youtube"
                            ? YouTubeStreamer[]
                            : never
  • OptionalthumbnailWaitBaselineSeconds?: number

    The baseline every creator already gets, in seconds - the number thumbnailWaitOptions ADD to.

    Use this to label a control honestly: option 30 with a baseline of 10 is "+30s (up to 40s)", and null is "no extra time (10s baseline)", NOT "do not wait".

    Do not hard-code the ten. It is derived server-side from the thumbnail probe budget, which is environment-tunable, so a copied literal silently overstates the ceiling the day it is changed. Absent on APIs that predate this field - fall back to 10 there, and only there.

  • OptionalthumbnailWaitOptions?: number[]

    The values thumbnailWaitSeconds will accept, served by the API. Kick only.

    EXTRA seconds on top of the ten second baseline every creator already gets, NOT a total - see THUMBNAIL_WAIT_CHOICES below before you write the control's label.

    Prefer this over the THUMBNAIL_WAIT_CHOICES constant. This is the authority; the constant is a hand-copy kept for APIs that predate this field. Absent on those - fall back to the constant.