L'équipe TypeScript a annoncé la version bêta 7.1 le 20 octobre. Un changement permet aux déclarations de module ambiant d'inclure des attributs d'importation, de sorte qu'une déclaration peut décrire le type renvoyé par une importation CSS, texte ou octets.

declare module "*" with { type: "text" } {
  const content: string;
  export default content;
}

Pourquoi la fonctionnalité bêta est importante

  • The declaration can require an attribute such as type: "text" rather than matching only a filename pattern.
  • La version bêta inclut également la prise en charge de l'importation en phase source, que l'article TypeScript décrit dans le contexte de l'évolution des fonctionnalités des modules JavaScript et WebAssembly.
  • L'équipe note que les déclarations ambiantes ne vérifient pas qu'un fichier correspondant existe sur le disque.

Il s'agit d'une version bêta, ce n'est pas une raison pour mettre à niveau une chaîne d'outils de production sans tests. Confirmez que votre environnement d'exécution et votre bundler prennent en charge la même syntaxe et le même comportement d'importation.

L'annonce officielle comprend des détails et des limitations pour chaque fonctionnalité ; les bibliothèques doivent éviter d'envoyer des déclarations globales qui pourraient entrer en conflit avec l'environnement d'une application.