Avatar ·

Überschreiben des Eigenschaftstyps eines in einer .d.ts-Datei deklarierten TypeScript-Interfaces

Hallo zusammen! Ich bin neu in TypeScript und habe ein Problem bei der Arbeit mit externen Bibliotheken. Ich habe eine Bibliothek (z.B. `express` oder `mongoose`), die in ihren Typdeklarationsdateien (`.d.ts`) ein Interface, sagen wir `Request`, definiert. In diesem Interface gibt es eine Eigenschaft `user`, die standardmäßig den Typ `any` oder `Express.User | undefined` hat. Ich muss diese Eigenschaft in meinem Projekt überschreiben, damit sie einen spezifischen Typ hat, z.B. `{ id: string; name: string; role: 'admin' | 'user' }`. Das Problem ist, dass ich die `.d.ts`-Datei der Bibliothek nicht einfach ändern kann – das ist eine schlechte Praxis, und bei einem Update der Bibliothek gehen meine Änderungen verloren. Ich habe versucht, mein eigenes Interface zu erstellen, das das ursprüngliche erweitert, aber TypeScript beschwert sich über einen Typkonflikt oder erkennt meine Überschreibung nicht. Hier ist ein Beispielcode: ```typescript // In node_modules/@types/express/index.d.ts (angenommen) interface Request { user?: any; // ... andere Eigenschaften } // Meine Datei types/express.d.ts import {