@hathora/server-sdk
Version:

16 lines (15 loc) • 832 B
TypeScript
export declare type RoomId = string;
export declare type UserId = string;
export interface Application {
verifyToken(token: string, roomId: RoomId): Promise<UserId | undefined>;
subscribeUser(roomId: RoomId, userId: UserId): Promise<void>;
unsubscribeUser(roomId: RoomId, userId: UserId): Promise<void>;
onMessage(roomId: RoomId, userId: UserId, data: ArrayBuffer): Promise<void>;
}
export interface Server {
broadcastMessage(roomId: RoomId, data: ArrayBuffer): void;
sendMessage(roomId: RoomId, userId: UserId, data: ArrayBuffer): void;
closeConnection(roomId: RoomId, userId: UserId, error: string): void;
}
export declare function startServer(app: Application, port: number): Promise<Server>;
export declare function verifyJwt(token: string, secret: string, userIdField?: string): UserId | undefined;