Ich versuche, einer importierten Deklaration einen Konstruktor hinzuzufügen. Laut the docs sollte dies funktionieren. (Kapitel Adding using an interface
)Warum kann ich keine Mitglieder eine importierte Deklaration hinzufügen?
Hier ist mein Code:
import { ObjectID } from 'mongodb';
interface ObjectID {
new(b: Buffer): ObjectID;
}
bekomme ich folgende Fehlermeldung:
Import Erklärung in Konflikt mit lokaler Erklärung ‚ObjectID'at Linie 2 col 10
Als Workaround habe ich die Schnittstelle umbenannt und eine Typ Assertion zu jedem und dann zu meiner Schnittstelle. Das ist gut genug, da ich es nur an einem Ort brauche, aber ich frage mich immer noch, warum es nicht funktioniert.
Ich benutze tatsächlich bereits diese Typdefinition (Entschuldigung, sollte explizit angegeben haben). Der Konstruktor, mit dem Sie verknüpft sind, akzeptiert nur Zeichenfolgen und Zahlen, was gemäß den API-Dokumenten korrekt ist. Aber es gibt auch die undokumentierte Möglichkeit einen Puffer zu übergeben. Das wollte ich der bestehenden Deklaration hinzufügen. – ctusch