Files
seojng-tv/types/room.ts
T
ysj7705 69b647145f
CI / Type-check & Build (push) Failing after 5m50s
CI / Build & Push image (push) Skipped
first commit
2026-08-12 15:01:43 +09:00

37 lines
707 B
TypeScript

export interface RoomPublic {
id: string
name: string
createdAt?: string
memberCount?: number
streamCount?: number
}
export interface RoomAdmin extends RoomPublic {
pwdVersion: number
createdBy: string
}
export interface Participant {
clientId: string
nickname: string
joinedAt: number
isStreaming: boolean
}
export interface ActiveStream {
streamId: string
broadcasterId: string
broadcasterNickname: string
startedAt: number
}
/** viewerClientId -> Set of streamIds (serialized as Record) */
export type WatchMap = Record<string, string[]>
export interface RoomState {
roomId: string
participants: Participant[]
activeStreams: ActiveStream[]
watchMap: WatchMap
}