The files
Each file is an object with one array of entries, one entry per page. They are rebuilt with the site; this copy is from 21 October 2026.
| File | Entries | What it holds |
|---|---|---|
| tags.json | 36 entries in tags | The JSDoc tags of checked JavaScript: whether TypeScript checks each one, shows it in hovers or ignores it, its syntax next to the TypeScript spelling, and sources. The pages: JSDoc tags. |
| type-expressions.json | 51 entries in types | What goes inside the braces of a JSDoc tag: each type expression next to its TypeScript spelling, grouped from basics to utility types. The pages: Type expressions in JSDoc. |
| config-options.json | 45 entries in options | The jsconfig.json options, top-level keys and comment directives that matter for JavaScript, with defaults, TypeScript 6.0 defaults and values to start with. The pages: jsconfig.json options for JavaScript. |
| diagnostics.json | 82 entries in diagnostics | TypeScript errors JavaScript projects meet: the message, what causes each in a .js file, the options that control it and how to fix it. The pages: TypeScript errors in JavaScript projects. |
| editors.json | 8 entries in editors | How eight editors run TypeScript for JavaScript files: what checks the code, where its TypeScript comes from, and how each page was checked. The pages: Editor setup for type-checked JavaScript. |
| project-shapes.json | 8 entries in shapes | Eight checked setups for type-checked JavaScript (Node.js, the browser, a library, Deno, Bun, a monorepo and more): jsconfig.json, scripts and packages. The pages: Project shapes for the quick start. |
| versions.json | 22 entries in versions | What each TypeScript release from 4.0 to 7.0 changed for JavaScript checked with JSDoc: dates, changes, upgrade notes and sources. The pages: TypeScript releases for JavaScript users. |
Fields every entry has
id, slug- The entry's id, and the last part of its page address.
title, summary- The page title, and a summary of at most 160 characters.
intro- The opening paragraphs.
sections, gotchas, faq- The page's sections (
id,heading,body,list,examples,snippets), its gotchas and its questions. examples- The checked example projects the page shows, as
family/slug. The code is on the page; the project folders are not published. related- Other pages, as
family/slug(tags/paramis/tags/param/). since- The TypeScript version the release notes date the feature to, or
null. sources- The references the page cites, as
{ title, url, publisher }. updated- The day the page was last reviewed,
YYYY-MM-DD.
Text fields use a small inline markup: `code`, [text](/path/) links (paths are on this site),
**strong** and *emphasis*. Dates are YYYY-MM-DD.
Fields of each file
tags.json
tag- The tag as written,
@param. aliases- Other names TypeScript accepts for it,
@argand@argument. supportchecked(TypeScript reads it as a type),docs-onlyorunsupported.syntax- Each use of the tag, as
{ use, jsdoc, typescript }.
type-expressions.json
category- The listing group, from Basics to Legacy syntax.
jsdoc- The expression as written in JSDoc.
typescript- The same type in a
.tsfile. syntax- More spellings, as
{ use, jsdoc, typescript }, when one is not enough.
config-options.json
kindcompilerOption,topLevel(include,extends…) ordirective(// @ts-check…).option- The option name, or the directive as written.
category- The listing group;
tsCategoryis TypeScript's own category. type, default, flag- The value type, the default in TypeScript 5.9 (with
defaultNote) and the command-line flag. jsconfigDefault, ts6Default- The default in a file named
jsconfig.json, and the default from TypeScript 6.0, where they differ. officialDescription- TypeScript's own one-line description, quoted (see the license note below).
startWith- What to write, or whether to leave it out.
appliesTo, withCheckJs, withoutCheckJs- For directives: what the comment covers and what it does with
checkJson and off.
diagnostics.json
code, message- The error code and TypeScript's message template, quoted.
category- The listing group;
tsCategoryis TypeScript's own (error,suggestion…). flags- The options that decide whether it is reported, as
{ option, effect }. alsoCovers- Companion codes the page explains too, with their messages.
cause, fixes- What causes it, and each fix as a section.
editors.json
editor, setup- The editor, and what to install.
typescriptSource, languageServer- Where its TypeScript comes from and the program it talks to.
checkedHere- What this site ran, and what comes from the editor's documentation.
project-shapes.json
jsconfig, packageJson, scripts- The checked
jsconfig.json, the parts ofpackage.jsonthat matter, and the npm scripts. devDependencies- The packages to install.
editorNotes- Notes for the editor setup.
example- The checked example project with exactly this setup.
versions.json
version, released- The release and the day it was announced.
group, notes- The listing group and the release notes page.
checkedexamples(every example ran with TypeScript 5.9) ornotes(taken from the release notes).changes- What changed for JavaScript, one section per change.
License
The site's own text and data, these files included, are published under the Creative Commons Attribution 4.0 International (CC BY 4.0) license. You may copy, share and adapt them for any purpose, commercial or not, as long as you credit the source.
Some text in the files is not ours and keeps its own license: TypeScript's option descriptions (officialDescription)
and error messages (message, and the messages in alsoCovers) are quoted from TypeScript under the Apache License
2.0, and the descriptions of four top-level config keys are quoted from SchemaStore's tsconfig.json schema under the same license. The
third-party notices list them. The code examples may be copied without credit, as the
terms say.
How to credit
Name the source as JS with Types (jswithtypes.com) and link to the page or file you used, for example:
Data: JS with Types (jswithtypes.com), jswithtypes.com/data/tags.json, CC BY 4.0.
If you change the data, say so. Questions and corrections go to the contact address.