import { Socket } from 'socket.io-client'; export interface JoinRoomClientOptions { socket: Socket; roomName: string; islevel: string; member: string; sec: string; apiUserName: string; consume?: boolean; } export type JoinRoomClientType = (params: JoinRoomClientOptions) => Promise; /** * Joins a room by emitting the `joinRoom` event to the server using the provided socket. * * @param {JoinRoomClientOptions} options - The options for joining the room. * @param {Socket} options.socket - The socket instance to use for communication. * @param {string} options.roomName - The name of the room to join. * @param {string} options.islevel - The level indicator for the room. * @param {string} options.member - The member identifier. * @param {string} options.sec - The security token or identifier. * @param {string} options.apiUserName - The API username for authentication. * @param {boolean} [options.consume=false] - Flag to determine which join function to use. * @returns {Promise>} A promise that resolves with the data returned from the server. * @throws {Error} Throws an error if the room joining process fails. * * @example * ```typescript * const options = { * socket: socketInstance, * roomName: "room1", * islevel: "2", * member: "user123", * sec: "secureToken", * apiUserName: "apiUser", * consume: true * }; * * try { * const response = await joinRoomClient(options); * console.log("Joined room successfully:", response); * } catch (error) { * console.error("Failed to join room:", error); * } * ``` */ export declare const joinRoomClient: ({ socket, roomName, islevel, member, sec, apiUserName, consume, }: JoinRoomClientOptions) => Promise;