import { SignalingWS } from "../models/ws"; import { RoomAccess, SignalingUser, SignalingTrackInfo } from "../types"; export declare function getPayloadFromJwt(jwttoken: string): T; export declare function getRoomAccessFromToken(roomToken: string): RoomAccess; export declare function arrayCheck(array: any[], element: any, key: string): boolean; export declare function removeElementFromArray(array: T[], key: string, value: any): { removeElement: T | null; newArray: T[]; }; export declare function getElementFromObject(objs: { [key: string]: T; }, targetKey: string, value: any): { key: string; obj: T; } | null; export declare function getElementFromArray(array: T[], key: string, value: any): T | null; export declare function sendMsgWaitResponse(signaling: SignalingWS, msgName: string, msgBody: any, responseName: string): Promise; export declare function noop(): void; export declare function removeUndefinedKey(obj: any, depth?: number): any; export declare function nextTick(func: () => any): void; export declare function withTimeout(p: Promise, timeout: number): Promise; export interface MissingUserEvent { join: SignalingUser[]; leave: SignalingUser[]; add: SignalingTrackInfo[]; remove: SignalingTrackInfo[]; mute: any[]; } export declare function getMissingUserEvent(currentUserId: string, lastTracksInfo: SignalingTrackInfo[], currentTracksInfo: SignalingTrackInfo[], lastUsers: string[], currentUsers: string[]): MissingUserEvent; export declare function randomInteger(): number; export declare function randomStringGen(strLength?: number): string; export declare function clone(obj: any): any; export declare function timeout(ms: number): Promise; /** * 对于相同 key 的调用,只会执行一次 */ export declare function runOnce(func: () => any, key: string): any; export declare function showPlayWarn(e: any): void;