TypeScript:有没有办法在lib。*。d.ts中隐藏/禁止某些已声明的函数?

时间:2019-07-05 21:46:30

标签: javascript typescript dom settimeout

exp。,在lib.dom.d.ts中:

declare function setInterval(handler: TimerHandler, timeout?: number, ...arguments: any[]): number;
declare function setTimeout(handler: TimerHandler, timeout?: number, ...arguments: any[]): number;

这是错误键入的,我们想用更好类型的声明代替它们。

但是仅添加新的声明只会“重载”这些函数,而不是隐藏它们。

declare function setTimeout<A extends any[]>(handler: (...args: A) => void, timeout?: number, ...arguments: A): number;
declare function setTimeout(handler: string, timeout?: number, ...arguments: any[]): number;
declare function setInterval<A extends any[]>(handler: (...args: A) => void, timeout?: number, ...arguments: A): number;
declare function setInterval(handler: string, timeout?: number, ...arguments: any[]): number;
  

仅添加这些声明是没有用的。

有没有办法隐藏/禁止原始声明?

0 个答案:

没有答案