Я пытаюсь дополнить определение типа Sinon для нашего проекта, вот как Sinon.d.ts
определяютсяДополняя модуль машинописи
declare module 'sinon' {
module Sinon {
interface SinonStub extends SinonSpy {
...
}
interface SinonStatic { ... }
...
}
var Sinon: Sinon.SinonStatic;
export = Sinon;
}
У меня есть definitions.d.ts
, который я использую в моем проекте для любых пользовательских определений. Вот как я пытался сделать это:
declare module 'sinon' {
module Sinon {
interface SinonPromise {
resolves(value?: any): void;
rejects(value?: any): void;
}
interface SinonStub {
returnsPromise(): SinonPromise;
}
}
}
Но компилятор не распознает новый returnsPromise
в интерфейсе SinonStub
, не признает нового SinonPromise
типа.
Что не так с этим определением?
У меня та же проблема при написании определений для «sinon-as-prom» и «sinon-mongoose», когда я использовал типизацию для определения npm. – stevehipwell
N.B. Модули (внутренние модули) не приветствуются в TypeScript, они рекомендуют модули JavaScript ES6 (внешние модули или просто модули) вместо старого пространства имен, основанного на нем. См. Https://www.typescriptlang.org/docs/handbook/modules.html и https://www.typescriptlang.org/docs/handbook/namespaces-and-modules.html –
@JuanMendes, который не помогает, я didn «Я создаю типизацию для синона, я использую их и нуждаюсь в дополнении с помощью некоторых пользовательских функций. – vintem