Skip to content

Commit 94bdbc7

Browse files
committed
fix: Fixes type error when build in jitsi-meet.
When TypeScript runs inside node_modules/lib-jitsi-meet, it doesn't just look in its own node_modules/@types/ — Node.js module resolution walks up the directory tree. So it also finds jitsi-meet/node_modules/@types/node (version 20.17.6). The lib-jitsi-meet code explicitly types timeout variables as NodeJS.Timeout: // VADNoiseDetection.ts:65 private _processTimeout?: NodeJS.Timeout; // ResumeTask.ts:27 private _resumeTimeout: Optional<NodeJS.Timeout>; But lib-jitsi-meet's own tsconfig.json only specifies "lib": ["DOM", "ES2021", "ES2024.Promise"] with no Node.js lib. So when DOM lib is active, setTimeout() is the DOM version which returns number. The outer jitsi-meet's @types/node v20.17.6 defines NodeJS.Timeout as a class (with .ref(), .unref(), etc.), which is not compatible with number. Hence the mismatch: Type 'number' is not assignable to type 'Timeout'
1 parent 94d0e53 commit 94bdbc7

2 files changed

Lines changed: 2 additions & 2 deletions

File tree

modules/detection/VADNoiseDetection.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ export default class VADNoiseDetection extends EventEmitter {
6262
/**
6363
* Timeout reference for processing VAD scores.
6464
*/
65-
private _processTimeout?: NodeJS.Timeout;
65+
private _processTimeout?: ReturnType<typeof setTimeout>;
6666

6767
/**
6868
* Creates <tt>VADNoiseDetection</tt>

modules/xmpp/ResumeTask.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ export default class ResumeTask {
2424
private _stropheConn: Strophe.Connection;
2525
private _resumeRetryN: number;
2626
private _retryDelay: Optional<number>;
27-
private _resumeTimeout: Optional<NodeJS.Timeout>;
27+
private _resumeTimeout: Optional<ReturnType<typeof setTimeout>>;
2828
private _networkOnlineListener: Nullable<() => void>;
2929

3030
/**

0 commit comments

Comments
 (0)