Búsqueda de sitios web

TypeScript personalizado .d.ts la importación de módulo no funciona


Tengo el siguiente archivo .d.ts

interface MyInterface {
    login();
    logout();
}

declare module "myOtherModule" {
    export = MyInterface
}

Ahora en mi archivo .ts incluyo lo siguiente

import { MyInterface } from '../modules/myOtherModule';

Aquí recibo el error "myOtherModule.d.ts" no es un módulo. ¿No debería funcionar esto? si no, ¿cómo lo arreglo?

Respuesta #1

Para solucionarlo, intenta usar en tu archivo myOtherModule.d.ts:

export interface MyInterface {
  login();
  logout();
}

Y tu archivo foo.ts:

import { MyInterface } from '../modules/myOtherModule';

Por favor, consulte las plantillas oficiales de TypeScript para escribir archivos .d.ts.

Puedes encontrar algunos ejemplos aquí: https://www.typescriptlang.org/docs/handbook/declaration-files/templates.html

Hay mucha información útil en estas plantillas si quieres escribir un archivo .d.ts para un módulo personalizado o un módulo de clase.

Además, hay mucha información útil aquí: https://www.typescriptlang.org/docs/handbook/declaration-files/deep-dive.html