Export JSII Compatible Interface from external packages
This repository is an exploration of generating JSII Compatible Interfaces for public packages on NPM.
It has only been tested with the DataDog Typescript API Client package and is not intended for production use.
# install pj dependencies
yarn
# run the export-datadog-interfaces task
npx projen@latest export-datadog-interfaces
# confirm JSII compile works
npx projen@latest compile
The export-datadog-interfaces
task uses the ts-morph
package to parse the DataDog Typescript API Client package and generate a JSII compatible interface for a specific class within the package. It resolves imports and combines all dependencies into a single Typescript source file.
Notes:
class
objects only.attributeTypeMap
are filtered out.UnparsedObject
type's _data
property is tagged as internal.