Extend-Schnittstelle in .d.ts-Datei definiert

In meinem TypeScript-Projekt verwende ich DefinitelyTyped Definitionen für externe js-Abhängigkeiten.

Manchmal kann es vorkommen, dass diese Definitionen veraltet sind. Es kann auch vorkommen, dass einige Bibliotheken zur Laufzeit neue Methoden hinzufügen können, z. B. express-validator, in dem Sie benutzerdefinierte Prüffunktionen definieren können.

Daher möchte ich diese erweitern.d.ts Definitionen, die neue Methoden und / oder Eigenschaften hinzufügen.

Also wenn ich meine DefinitelyTyped defininiton in @ haexpress-validator.d.ts:

declare module ExpressValidator {
  export interface Validator {
    is(): Validator;
    not(): Validator;
    isEmail(): Validator;
    ...
  }
}

wie kann ich verlängernValidator interface innerhalb von zum Beispiel meinemapplication.ts ?

///<reference path='../typings/tsd.d.ts' />

import expressValidator = require('express-validator');
export var app = express();

app.use(expressValidator({
    customValidators: {
        isArray: function(value) {
            return Array.isArray(value);
        }
 }
}));

// How to extend Validator interface adding isArray() method??

Antworten auf die Frage(2)

Ihre Antwort auf die Frage