JSDoc — VSCode Extension
A universal JSDoc tag registry for VSCode extensions, backed by @microsoft/tsdoc.
Purpose
This extension exports a stable API that other extensions can consume to get the complete list of JSDoc/TSDoc tags — without hardcoding or maintaining the tag list themselves. When Microsoft adds a new tag to TSDoc, it appears automatically in all consumers.
Extension API
Declare this extension as a dependency in your package.json:
"extensionDependencies": ["5m1ly.gpec-javascript"]
Then consume the API in your extension:
import type { JsDocApi } from 'gpec-javascript/src/extension';
const ext = vscode.extensions.getExtension('5m1ly.gpec-javascript');
if (!ext.isActive) await ext.activate();
const api = ext.exports as JsDocApi;
const tags = api.getTags(); // TagDefinition[]
const param = api.getTag('param'); // TagDefinition | undefined
TagDefinition shape
interface TagDefinition {
name: string; // e.g. 'param'
syntaxKind: 'modifier' | 'block' | 'inline';
description: string;
snippet: string;
allowMultiple: boolean;
}
All tags defined in StandardTags from @microsoft/tsdoc, including:
@alpha @beta @decorator @defaultValue @deprecated @eventProperty @example @experimental @inheritDoc @internal @label @link @override @packageDocumentation @param @privateRemarks @public @readonly @remarks @returns @sealed @see @throws @typeParam @virtual
Release Notes
See CHANGELOG.md.