JSPM

  • Created
  • Published
  • Downloads 3702
  • Score
    100M100P100Q134020F
  • License MIT

Augment the TypeScript compiler module's types to expose hidden internal types

Package Exports

    This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (ts-expose-internals) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

    Readme

    License

    TypeScript Internal Types

    Expose TypeScript internal types by simply adding a development dependency.

    Setup

    1. Add aliased dependency to package.json (use the same version as your typescript version)

      {
        "devDependencies": {
          "typescript": "^5.1.3",
          // Note: The package is 'ts-expose-internals', but we are aliasing within the @types scope to make TS adopt it globally
          "@types/ts-expose-internals": "npm:ts-expose-internals@5.1.3"
        }
      }
    2. Run npm install / yarn install

    Usage

    All internal types are now available within the primary typescript module

    // This namespace is flagged @internal and is omitted from published types, but now we can access it!
    import { JsDoc } from 'typescript'

    How It Works

    The code within this repo runs on a schedule of once per day via GitHub Actions.

    It checks for new TypeScript release tags, and if there are any, it clones the source code for that release and builds the internal types. After, it performs a bit of transformation magic and publishes the package to NPM.

    New types are added to the 'typescript' module via the Module Augmentation technique.

    Notes

    • We publish for full TS releases only. If you'd like nightly builds, have a look at byots.
    • If we don't have a package for the latest release, please allow 24hrs, then file an issue.

    Acknowledgments

    Thanks to basarat for his work on byots, which served as the inspiration!