Hvordan importerer jeg en JavaScript-modul i TypeScript og kaster til TypeScript-navnerom
Jeg har en JS-fil som gjør monkey patching på noe funksjonalitet i tredjeparts pakker:
import L from 'leaflet';
import 'leaflet.pm';
import 'leaflet-textpath';
...
// do monkeypatching with all 3 packages.
// Only leaflet and leaflet.pm have typedef packages.
...
export default L;
L (leaflet) har en @types-pakke som inkluderer alle typene.
export as namespace L;
...
// export all type defs
...
På dette tidspunktet ønsker jeg ikke å konvertere monkeypatch JS-filen til TS. Jeg kan håndtere å ikke ha typekontroll for den monkeypatchede funksjonaliteten.
Gitt dette prøver jeg å importere monkeypatch.js som L-navnerommet slik at jeg kan bruke det med minst L-typer.
Jeg har prøvd ulike ting som følgende, men har ikke hatt noen hell:
import MonkeyPatch from 'monkey-patch';
const TS = MonkeyPatch as L;
Dette fungerer ikke på grunn av at man ikke kan bruke et navneområde L som en type.
Hvordan kan jeg importere monkeypatch JS-filen som L-navnerom slik at jeg har L-typekontroll?