@globalleaderboards/sdk - v0.5.0
    Preparing search index...

    Interface WebSocketHandlers

    WebSocket event handlers

    interface WebSocketHandlers {
        onConnect?: () => void;
        onDisconnect?: (code: number, reason: string) => void;
        onError?: (error: Error) => void;
        onLeaderboardUpdate?: (
            data: {
                leaderboardId: string;
                updateType: "score_update" | "full_refresh" | "bulk_update";
                leaderboard: {
                    entries: LeaderboardEntry[];
                    totalEntries: number;
                    displayedEntries: number;
                };
                mutations: LeaderboardMutation[];
                trigger: UpdateTrigger;
                sequence: number;
            },
        ) => void;
        onUserRankUpdate?: (
            data: {
                leaderboard_id: string;
                user_id: string;
                old_rank: number;
                new_rank: number;
                score: number;
            },
        ) => void;
        onMessage?: (message: WebSocketMessage) => void;
        onReconnecting?: (
            attempt: number,
            maxAttempts: number,
            nextDelay: number,
        ) => void;
    }
    Index

    Properties

    onConnect?: () => void

    Called when connection is established

    onDisconnect?: (code: number, reason: string) => void

    Called when connection is closed

    onError?: (error: Error) => void

    Called when an error occurs

    onLeaderboardUpdate?: (
        data: {
            leaderboardId: string;
            updateType: "score_update" | "full_refresh" | "bulk_update";
            leaderboard: {
                entries: LeaderboardEntry[];
                totalEntries: number;
                displayedEntries: number;
            };
            mutations: LeaderboardMutation[];
            trigger: UpdateTrigger;
            sequence: number;
        },
    ) => void

    Called when leaderboard is updated

    onUserRankUpdate?: (
        data: {
            leaderboard_id: string;
            user_id: string;
            old_rank: number;
            new_rank: number;
            score: number;
        },
    ) => void

    Called when user rank changes

    onMessage?: (message: WebSocketMessage) => void

    Called for any message

    onReconnecting?: (
        attempt: number,
        maxAttempts: number,
        nextDelay: number,
    ) => void

    Called when starting a reconnection attempt