Build a declaration file for Astro Integrations
This utility function is used to build a declaration file for use with Astro's injectTypes
function added in the astro:config:done
Integration Hook in Astro 4.14.0
. This function is useful for generating TypeScript declaration files for Astro Integrations.
Example Usage
import buildDeclarationFile from '@matthiesenxyz/astrodtsbuilder';
const dts = buildDeclarationFile();
dts.addSingleLineNote(`This file was generated by '@my-example/module'`);
dts.addMultiLineNote(['It does some cool and helpful stuff', 'It also does some other cool stuff']);
dts.addModule("example:module", {
defaultExport: {
typeDef: "import('@my-example/module').ExampleModule",
singleLineDescription: "This is the default Module",
}
});
const dtsFile = dts.makeFile();
console.log(dtsFile);
Example Output
declare module 'example:module' {
const defaultExport: import('@my-example/module').ExampleModule;
export default defaultExport;
}
Licensing
MIT Licensed. Made with ❤️ by Adam Matthiesen.