obby-client for TypeScript
    Preparing search index...

    Type Alias VoiceParticipant

    One participant's state within a [Room].

    Every toggle is [OnOff] rather than bool: this is the same distinction clippy's own struct_excessive_bools lint asks for (six independent flags read equally well as a state machine's cases), and reusing OnOff rather than inventing six near-identical two-variant enums keeps it to one type.

    type VoiceParticipant = {
        deaf: OnOff;
        hand: OnOff;
        mic: OnOff;
        nick: string;
        role: VoiceRole;
        screen: OnOff;
        speaking: OnOff;
        video: OnOff;
    }
    Index
    deaf: OnOff

    Not receiving room audio.

    hand: OnOff

    Hand raised.

    mic: OnOff

    Microphone on.

    nick: string

    Their nick as the server spells it, since the map that holds them is keyed by a fold that throws that spelling away.

    role: VoiceRole

    Whether they may publish, decided by the room kind and, in a $ room, whether the server named them a streamer.

    screen: OnOff

    Screen share active.

    speaking: OnOff

    The voice-activity flag the last presence reported.

    video: OnOff

    Camera on.