@hathora/client-sdk
Version:

38 lines (37 loc) • 1.43 kB
TypeScript
import { ConnectionDetails, HathoraConnection } from "./connection.js";
export declare type LobbyInfo = {
roomId: string;
region: string;
createdBy: string;
createdAt: Date;
};
export declare type StartingConnectionInfo = {
status: "starting";
};
export declare type ActiveConnectionInfo = ConnectionDetails & {
status: "active";
};
export declare type ConnectionInfo = StartingConnectionInfo | ActiveConnectionInfo;
export declare class HathoraClient {
appId: string;
private localConnectionDetails?;
static getUserFromToken(token: string): object & {
id: string;
};
constructor(appId: string, localConnectionDetails?: ConnectionDetails | undefined);
loginAnonymous(): Promise<string>;
loginNickname(nickname: string): Promise<string>;
loginGoogle(idToken: string): Promise<string>;
createPrivateLobby(token: string, { region, initialConfig }?: {
region?: string | undefined;
initialConfig?: {} | undefined;
}): Promise<string>;
createPublicLobby(token: string, { region, initialConfig }?: {
region?: string | undefined;
initialConfig?: {} | undefined;
}): Promise<string>;
getPublicLobbies(token: string, region?: string): Promise<LobbyInfo[]>;
getConnectionDetailsForRoomId(roomId: string): Promise<ConnectionDetails>;
newConnection(roomId: string): Promise<HathoraConnection>;
private postJson;
}