import type { Errors } from './ZoomVideoSdk'; /** * Sub-session kit parameters. */ export declare type SubSessionKit = { subSessionName: string; subSessionID: string; subSessionUserList: SubSessionUser[]; }; /** * Sub-session user parameters. */ export declare type SubSessionUser = { userName: string; userGUID: string; }; /** * User help request result. */ export declare enum UserHelpRequestResult { Idle = "Idle", Busy = "Busy", Ignore = "Ignore", HostAlreadyInSubSession = "HostAlreadyInSubSession" } /** * Sub-session status. */ export declare enum SubSessionStatus { None = "None", Committed = "Committed", Withdrawn = "Withdrawn", Started = "Started", Stopping = "Stopping", CommitFailed = "CommitFailed", WithdrawFailed = "WithdrawFailed", StartFailed = "StartFailed", StopFailed = "StopFailed" } /** * A class to operate the sub-session actions. */ export declare type ZoomVideoSdkSubSessionType = { /** * Join a sub-session by sub-session ID. */ joinSubSession: (subSessionID: string) => Promise; /** * Start a sub-session. */ startSubSession: () => Promise; /** * Stop a sub-session, after calling stopSubSession, there will be a buffer period for the * participants in the sub-session to exit. Once the buffer period ends, the sub-session will be * closed. */ stopSubSession: () => Promise; /** * Check if sub-session is started. */ isSubSessionStarted: () => Promise; /** * Broadcast message to all sub-sessions. * Only host and manger can call this function. */ broadcastMessage: (message: string) => Promise; /** * Return to main session from sub-session. */ returnToMainSession: () => Promise; /** * Request for help from sub-session. * Only attendee can call this function. */ requestForHelp: () => Promise; /** * Get request user name. */ getRequestUserName: () => Promise; /** * Get request sub-session name. * When attendee request for help from sub-session, the manager can call this function to get * request sub-session name. */ getRequestSubSessionName: () => Promise; /** * Ignore help request. * When attendee request for help from sub-session, the manager can call this function to ignore * the request, the attendee will receive notification. */ ignore: () => Promise; /** * Join sub-session by user request. * When attendee request for help from sub-session, the manager can call this function to join * the sub-session. */ joinSubSessionByUserRequest: () => Promise; /** * Create sub-session list. */ commitSubSessionList: (subSessionNameList: string[]) => Promise; /** * Withdraw sub-session list. */ withdrawSubSessionList: () => Promise; /** * Get committed sub-session list. */ getCommittedSubSessionList: () => Promise; }; export declare class ZoomVideoSdkSubSession implements ZoomVideoSdkSubSessionType { joinSubSession(subSessionID: string): Promise; startSubSession(): Promise; stopSubSession(): Promise; isSubSessionStarted(): Promise; broadcastMessage(message: string): Promise; returnToMainSession(): Promise; requestForHelp(): Promise; getRequestUserName(): Promise; getRequestSubSessionName(): Promise; ignore(): Promise; joinSubSessionByUserRequest(): Promise; commitSubSessionList(subSessionNameList: string[]): Promise; withdrawSubSessionList(): Promise; getCommittedSubSessionList(): Promise; }