};
export const sleep = async (milliSeconds: number): Promise<NodeJS.Timeout> => {
- return new Promise((resolve) => setTimeout(resolve as () => void, milliSeconds));
+ return new Promise<NodeJS.Timeout>((resolve) => setTimeout(resolve as () => void, milliSeconds));
};
export const formatDurationMilliSeconds = (duration: number): string => {
};
export const isIterable = <T>(obj: T): boolean => {
- return !isNullOrUndefined(obj) ? typeof obj[Symbol.iterator] === 'function' : false;
+ return !isNullOrUndefined(obj) ? typeof obj[Symbol.iterator as keyof T] === 'function' : false;
};
const isString = (value: unknown): boolean => {
return '(For applications)';
}
}
- if (!isUndefined(WebSocketCloseEventStatusString[code])) {
- return WebSocketCloseEventStatusString[code] as string;
+ if (
+ !isUndefined(
+ WebSocketCloseEventStatusString[code as keyof typeof WebSocketCloseEventStatusString],
+ )
+ ) {
+ return WebSocketCloseEventStatusString[code as keyof typeof WebSocketCloseEventStatusString];
}
return '(Unknown)';
};