# @ckeditor/typedoc-plugins 中文文档

规范地址：https://npmcn.com/package/%40ckeditor/typedoc-plugins/

版本：63\.1\.3
npm 元数据更新时间：2026-11-09T07:49:41.718Z
中文译文更新时间：2026-11-09T23:24:24.771Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40ckeditor/typedoc-plugins
原文对照：https://npmcn.com/package/%40ckeditor/typedoc-plugins/?lang=original
项目主页：https://github.com/ckeditor/ckeditor5-dev/tree/master/packages/typedoc-plugins
源码仓库：https://github.com/ckeditor/ckeditor5-dev

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：83.8 kB，37 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- Node.js 要求：\>=26\.10\.0
- 运行依赖：1 个
- peer 依赖：typedoc ^0\.28\.20
- 首次发布：2023-01-18T10:31:11.264Z
- 最新版本发布：2026-11-09T07:49:41.554Z
- 近 30 天下载量：7924（2026-10-10 至 2026-11-08，npm 官方下载统计）
- 已发布版本数：219（近 12 个月 80 个）

## 中文简介

CKEditor 5团队开发的各种类型Doc插件.

## 安装

```sh
npm install @ckeditor/typedoc-plugins
```

也可以使用：`pnpm add @ckeditor/typedoc-plugins`、`yarn add @ckeditor/typedoc-plugins`、`bun add @ckeditor/typedoc-plugins`

## README

# 类型文件插件概览

[![npm version](https://badge.fury.io/js/%40ckeditor%2Ftypedoc-plugins.svg)](https://www.npmjs.com/package/@ckeditor/typedoc-plugins) [![CircleCI](https://circleci.com/gh/ckeditor/ckeditor5-dev.svg?style=shield)](https://app.circleci.com/pipelines/github/ckeditor/ckeditor5-dev?branch=master)

## 概览

这个寄存器由几个插件组成,可以扩展其容量 [类型文件](https://typedoc.org/)。 。 。 .

> \[尖叫声\] 这个 [`@ckeditor/typedoc-plugins`](https://www.npmjs.com/package/@ckeditor/typedoc-plugins) 需求 [`typedoc@0.28`](https://npmjs.com/package/typedoc)。 。 。 .

在启用软件包的插件之前,需要先安装.

```bash
npm install @ckeditor/typedoc-plugins
```

下面可以找到可用插件的详细概览.

## 使用量

用来使用 `typedoc-plugins`,需要创建 Typedoc 应用程序实例.

```js
import { Application } from 'typedoc';
import { typeDocSymbolFixer } from '@ckeditor/typedoc-plugins';

const app = await Application.bootstrapWithPlugins( { /* Typedoc options. */ } );

// It is essential to execute a plugin before converting the project.
typeDocSymbolFixer( app );

const conversionResult = await typeDoc.convert();
```

## 可用的插件

-   **模块修正器** —— 说 `typeDocModuleFixer()`
    
    插件读取 : `@module` 注释.
    
    ```ts
    import type { TypeDefinition } from '...';
    
    /**
     * @module package/file
     */
    ```
    
    就上述例子而言,解析模块的名称应等于 `package/file`。 。 。 .
    
    这个 `import` 语句可以在"@module"区块代码上方指定. 在这种情况下,默认模块解析从 `typedoc` 返回基于相对于工程根的路径的模块名称.
    
-   **符号修正器** —— 说 `typeDocSymbolFixer()`
    
    插件重命名 `Symbol.*` 定义采用JSDoc风格.
    
    -   类型doc : `[iterator]() → Iterator`
    -   联合来文: `Symbol.iterator() → Iterator`
-   **接口增强修复器** —— 说 `typeDocInterfaceAugmentationFixer()`
    
    插件试图修复一个接口, 该接口已经从外部( 从另一个模块) 延伸出来 `index.ts` 文档。 当扩展"declare module..."声明包含完整包名时,它指向 `index.ts` 文件而非实际源文件。 目标是从界面中将缺失的属性添加到其源位置.
    
-   **事件参数修正器** —— 说 `typeDocEventParamFixer()`
    
    该插件注入 `eventInfo` 参数(一个实例) `EventInfo` class)作为每次事件反射的第一个参数.
    
-   **事件遗产确定者** —— 说 `typeDocEventInheritanceFixer()`
    
    插件会照顾到继承事件, 事件是手工创建的 [`@eventName`](https://npmcn.com/package/%40ckeditor/typedoc-plugins/#readme-tag-eventname) 注释.
    
-   **等级修正器** —— 说 `typeDocHierarchyFixer()`
    
    该插件通过扩展中间混音常数来恢复被打破的类分级,例如. `const ClassicEditorBase = ElementApiMixin( Editor )`,它用实际的基类取代了不可解的基础类参考,恢复了基类上"子类"关系,并列出了由扩展类执行的混音接口. 它还删除了指向从私人包中清除出反射的引用.
    
    插件必须在之后执行 `typeDocEventInheritanceFixer()`,因为继承事件解决了被这个插件所取代的原始(断)引用.
    
-   **清除私有 API** —— 说 `typeDocPurgePrivateApiDocs()`
    
    插件去除从私人软件包中收集的反射( 标记为 `"private": true` 中标 `package.json`) (中文(简体) ). 要禁用机制,请添加 `@publicApi` 文件开头的注释.
    
-   **标记 `@error`** —— 说 `typeDocTagError()`
    
    插件收集错误定义 `@error` 注释.
    
-   **标记 `@eventName`** —— 说 `typeDocTagEvent()`
    
    插件收集事件定义 `@eventName` 注释并指定他们为班级或班级的儿童 `Observable` 接口.
    
    我们没有使用 [`@event`](https://typedoc.org/tags/event/) 注释,从JSDoc规格中得名,因为它在"TypeDoc"中有着特殊的意义,并且很难让它如我们所期望的那样工作.
    
-   **标记 `@observable`** —— 说 `typeDocTagObservable()`
    
    添加支持从属性创建 CKEditor 5 事件 `@observable`。 。 。 .
    
-   **转换后恢复程序** —— 说 `typeDocRestoreProgramAfterConversion()`
    
    插件恢复用于源转换的TypeScript程序. 类型文件删除 `context.program` 属性,一旦转换完成,则防止其他插件监听 `EVENT_END` 使用 TypeScript API 生成的事件.
    
-   **参考修正器** —— 说 `typeDocReferenceFixer()`
    
    插件将从另一个文件中再导出的反射修正为默认导出 。 在这种情况下,TypeDoc将反射声明添加到包含再导出的文件上,而实际的源文件只包含一个引用. 插件将声明移回源地址 .
    
-   **产出清理** —— 说 `typeDocOutputCleanUp()`
    
    插件会从反射中去掉不必要的属性来缩小生成输出的大小.
    
-   **验证器** —— 说 `validate()`
    
    验证 CKEditor 5 文档 。 它验证 `@see` 财务报告和审定财务报表 `@link` 参考文献和 `@fires` 注释。 选择,当 `enableOverloadValidator` 选项,它也验证超载签名是否使用 `@label` 注释.
    

* * *

## 更改日志

见 [`CHANGELOG.md`](https://github.com/ckeditor/ckeditor5-dev/blob/master/packages/typedoc-plugins/CHANGELOG.md) 文档.

## 常见问题

### @ckeditor/typedoc-plugins 是什么？

CKEditor 5团队开发的各种类型Doc插件\.

### 如何安装 @ckeditor/typedoc-plugins？

在项目目录运行 npm install @ckeditor/typedoc-plugins，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：typedoc（^0\.28\.20）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @ckeditor/typedoc-plugins 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @ckeditor/typedoc-plugins 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @ckeditor/typedoc-plugins 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=26\.10\.0。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### @ckeditor/typedoc-plugins 可以商用吗？

@ckeditor/typedoc-plugins 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @ckeditor/typedoc-plugins 的下载量有多少？

根据 npm 官方下载统计，@ckeditor/typedoc-plugins 在 2026/10/10 – 2026/11/08 这 30 天内被下载 7,924 次，日均约 264 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @ckeditor/typedoc-plugins 还在维护吗？

最新版本 63\.1\.3 发布于 2026/11/09（今天）；至今共发布 219 个版本，其中过去 12 个月发布了 80 个；首次发布于 2023/01/18。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

