UNPKG

@pubby/sdk

Version:
28 lines (27 loc) 1.06 kB
import { Pubby } from "../../client"; import { PubbyStream } from "../../lib/streams"; import { User } from "../../models/user"; import { PubbyModule } from "../../module"; import { QueueAddResponse, QueueUpdateResponse } from "../../websocket/incoming"; declare module "../../client" { interface Pubby { queue: QueueModule; } } export declare class QueueModule extends PubbyModule { state: Set<string>; update$: PubbyStream<QueueUpdateResponse>; add$: PubbyStream<QueueAddResponse>; get usersId(): string[]; get users(): any[]; get next(): any; constructor(client: Pubby); init(): void; join(userId?: string): Promise<unknown>; leave(userId?: string): Promise<unknown>; move(userId: string, position: number): void; has(userId: string): boolean; on(event: "update", ...listeners: ((queue: User[]) => void)[]): this; on(event: "user-join", ...listeners: ((user: User) => void)[]): this; on(event: "user-leave", ...listeners: ((user: User) => void)[]): this; }