IFClite TypeScript API
    Preparing search index...

    Interface PeerVisual

    interface PeerVisual {
        clientId: number;
        color: string;
        cursor2d?: { pos: Vec2; viewport: string };
        cursor3d?: Vec3;
        isStale: boolean;
        label: string;
        modelId?: string;
        opacity: number;
        selection: string[];
        user: UserIdentity;
    }
    Index
    clientId: number
    color: string

    Resolved hex color — palette pick if user.color was absent.

    cursor2d?: { pos: Vec2; viewport: string }
    cursor3d?: Vec3
    isStale: boolean

    True when no update has arrived for staleAfterMs.

    label: string

    "Anna (agent)", "Mark — measuring", "Louis"…

    modelId?: string
    opacity: number

    0..1; 1 for fresh, fades to ~0.4 as the peer goes idle / stale.

    selection: string[]