TypeScriptDocParser
API
TypeScriptDocParser 类
表示一个 TypeScript 文档解析器
构造函数
new TypeScriptDocParser
初始化新的文档解析器
参数
| 参数名 | 说明 | 类型 |
|---|---|---|
program | 要解析的工程对象 | |
属性
| 属性名 | 说明 | 类型 |
|---|---|---|
program只读 | 获取正在解析的工程对象 | |
checker只读 | 获取正在使用的类型解析器 | |
方法
getDocSourceFiles
获取当前工程文件的所有入口文件
返回值
DocSourceFile[]getDocSouceFile
解析一个源文件
getJSDocComments
解析节点关联的注释节点
参数
| 参数名 | 说明 | 类型 |
|---|---|---|
node | 要解析的节点 | |
(可选)sourceFile | 如果提供了节点所在的源文件,可以提升性能 默认值: | |
返回值
JSDoc[]getDocMember
解析一个成员
getSymbolName
获取符号的名称
参数
| 参数名 | 说明 | 类型 |
|---|---|---|
symbol | 要解析的符号 | |
返回值
stringgetSymbolID
获取符号的唯一标识
参数
| 参数名 | 说明 | 类型 |
|---|---|---|
symbol | 要解析的符号 | |
返回值
stringgetParentSymbol
获取定义指定符号的父符号
参数
| 参数名 | 说明 | 类型 |
|---|---|---|
symbol | 要解析的符号 | |
返回值
SymbolgetDocType
解析一个类型
getSourceLocation
解析一个节点的源位置
参数
| 参数名 | 说明 | 类型 |
|---|---|---|
node | 要解析的节点 | |
(可选)sourceFile | 如果提供了节点所在的源文件,可以提升性能 默认值: | |
返回值
getPropertiesOfType
获取类型的所有成员
typeToString
获取类型等价的字符串
parseMemberBase保护
解析成员基类
praseFunctionSignature保护
解析一个方法
参数
| 参数名 | 说明 | 类型 |
|---|---|---|
symbol | 引用成员的符号名称 | |
declaration | 当前重载的声明 | |
result | 解析的结果 | |
返回值
voidparseTypeParameter保护
解析一个类型参数
parseParameter保护
解析一个参数
parseClassOrInterface保护
解析一个类或接口
findBestDeclaration保护
查找注释最多的声明节点
参数
| 参数名 | 说明 | 类型 |
|---|---|---|
declarations | 所有声明节点 | |
返回值
DeclarationfindMember保护
在指定类型中查找成员
参数
| 参数名 | 说明 | 类型 |
|---|---|---|
type | 要查找的类型 | |
escapedName | 已编码的成员名 | |
返回值
SymbolsortMembers保护
排序成员
parseNamespace保护
解析一个命名空间
parseModule保护
解析一个模块
parseTypeBase保护
解析类型基类
DocSourceFile 接口
表示一个源文件
属性
| 属性名 | 说明 | 类型 |
|---|---|---|
raw | 原始文件对象 | |
path | 文件绝对路径 | string |
name | 模块名或文件名 | string |
imports | 所有导入项 展开子属性
| |
members | 所有导出的成员 | |
isDeclaration(可选) | 是否是声明文件(.d.ts) | boolean |
isModule(可选) | 是否是模块 | boolean |
summary(可选) | 文件概述 | string |
author(可选) | 文件作者 | string |
copyright(可选) | 版权声明 | string |
license(可选) | 源码协议 | string |
version(可选) | 文件版本号 | string |
created(可选) | 创建时间 | string |
modified(可选) | 最后修改时间 | string |
unknownTags(可选) | 未识别的其它标签 | {[key: string]: string} |
DocImport 接口
表示一个导入项
属性
| 属性名 | 说明 | 类型 |
|---|---|---|
name | 导入的原始模块名 | string |
resolvedModule | 解析后的模块信息 展开子属性
| |
DocMember 类型
表示一个成员
DocMemberType 枚举只读
表示成员类型的枚举
成员
| 枚举名 | 说明 | 值 |
|---|---|---|
unknown | 不支持的成员 | 0 |
var | 函数作用域变量 | 1 |
let | 块作用域变量 | 2 |
const | 常量 | 4 |
function | 函数 | 8 |
class | 类 | 16 |
field | 字段 | 32 |
accessor | 访问器 | 64 |
constructor | 构造函数 | 128 |
method | 方法 | 256 |
event | 事件 | 512 |
index | 索引器签名 | 1024 |
call | 函数调用签名 | 2048 |
enum | 枚举 | 4096 |
enumMember | 枚举成员 | 8192 |
interface | 接口 | 16384 |
typeAlias | 类型别名 | 32768 |
namespace | 命名空间 | 65536 |
module | 模块 | 131072 |
DocMemberBase 接口
表示一个成员基类
泛型参数
属性
| 属性名 | 说明 | 类型 |
|---|---|---|
memberType | 成员的类型 | T |
raw | 原始符号 | |
name | 成员的名字 | string |
id | 成员的唯一标识 | string |
modifiers | 成员的修饰符 | |
declaration(可选) | 原始声明节点 | |
sourceLocation(可选) | 源码位置 展开子属性
| |
parentMember(可选) | 声明当前成员的容器成员 | |
baseMember(可选) | 继承的父类成员 | |
overridingMember(可选) | 覆盖的父类同名成员 | |
ignore(可选) | 是否忽略当前成员 | boolean |
deprecatedMessage(可选) | 废弃后的提示文案 | string |
summary(可选) | 概述 | string |
description(可选) | 详细说明 | string |
examples(可选) | 示例 | string[] |
seeAlso(可选) | 参考列表 | string[] |
since(可选) | 首次添加的版本号 | string |
category(可选) | 所在分类 | string |
defaultValue(可选) | 默认值 | string | number | |
unknownTags(可选) | 未识别的其它标签 | {[key: string]: string} |
DocMemberModifiers 枚举只读
表示成员修饰符
成员
| 枚举名 | 说明 | 值 |
|---|---|---|
export | 是否导出 | 1 |
exportDefault | 是否默认导出 | 2 |
public | 是否公开 | 4 |
private | 是否私有 | 8 |
protected | 是否保护 | 16 |
internal | 是否内部 | 32 |
accessiblity | 可访问性修饰符 | 60 |
static | 是否静态 | 64 |
optional | 是否可选 | 128 |
readOnly | 是否只读 | 256 |
virtual | 是否虚拟 | 512 |
abstract | 是否抽象 | 1024 |
final | 是否密封 | 2048 |
generator | 是否是生成器 | 4096 |
async | 是否异步 | 8192 |
deprecated | 是否废弃 | 16384 |
experimental | 是否试验中 | 32768 |
DocUnknownMember 接口
表示一个不支持的成员
属性
继承自 DocMemberBase 接口的属性
| 属性名 | 说明 | 类型 |
|---|---|---|
memberType | 成员的类型 | |
raw | 原始符号 | |
name | 成员的名字 | string |
id | 成员的唯一标识 | string |
modifiers | 成员的修饰符 | |
declaration(可选) | 原始声明节点 | |
sourceLocation(可选) | 源码位置 展开子属性
| |
parentMember(可选) | 声明当前成员的容器成员 | |
baseMember(可选) | 继承的父类成员 | |
overridingMember(可选) | 覆盖的父类同名成员 | |
ignore(可选) | 是否忽略当前成员 | boolean |
deprecatedMessage(可选) | 废弃后的提示文案 | string |
summary(可选) | 概述 | string |
description(可选) | 详细说明 | string |
examples(可选) | 示例 | string[] |
seeAlso(可选) | 参考列表 | string[] |
since(可选) | 首次添加的版本号 | string |
category(可选) | 所在分类 | string |
defaultValue(可选) | 默认值 | string | number | |
unknownTags(可选) | 未识别的其它标签 | {[key: string]: string} |
DocVariable 接口
表示一个变量、字段或访问器
DocMemberBase<DocMemberType.var | DocMemberType.let | DocMemberType.const | DocMemberType.field | DocMemberType.accessor | DocMemberType.event>属性
| 属性名 | 说明 | 类型 |
|---|---|---|
type | 值的类型 | |
继承自 DocMemberBase 接口的属性
| 属性名 | 说明 | 类型 |
|---|---|---|
memberType | 成员的类型 | |
raw | 原始符号 | |
name | 成员的名字 | string |
id | 成员的唯一标识 | string |
modifiers | 成员的修饰符 | |
declaration(可选) | 原始声明节点 | |
sourceLocation(可选) | 源码位置 展开子属性
| |
parentMember(可选) | 声明当前成员的容器成员 | |
baseMember(可选) | 继承的父类成员 | |
overridingMember(可选) | 覆盖的父类同名成员 | |
ignore(可选) | 是否忽略当前成员 | boolean |
deprecatedMessage(可选) | 废弃后的提示文案 | string |
summary(可选) | 概述 | string |
description(可选) | 详细说明 | string |
examples(可选) | 示例 | string[] |
seeAlso(可选) | 参考列表 | string[] |
since(可选) | 首次添加的版本号 | string |
category(可选) | 所在分类 | string |
defaultValue(可选) | 默认值 | string | number | |
unknownTags(可选) | 未识别的其它标签 | {[key: string]: string} |
DocFunction 接口
表示一个函数、方法、构造函数或索引器
DocMemberBase<DocMemberType.function | DocMemberType.constructor | DocMemberType.method | DocMemberType.index | DocMemberType.call>属性
| 属性名 | 说明 | 类型 |
|---|---|---|
parameters | 所有参数 展开子属性
| |
returnType | 返回值类型 | |
typeParameters(可选) | 所有类型参数 | |
returnSummary(可选) | 返回值描述 | string |
overloads(可选) | 方法的多个重载 展开子属性
| |
classOrInterface(可选) | 同名的类或接口 展开子属性
| |
namespace(可选) | 同名的命名空间 展开子属性
| |
继承自 DocMemberBase 接口的属性
| 属性名 | 说明 | 类型 |
|---|---|---|
memberType | 成员的类型 | |
raw | 原始符号 | |
name | 成员的名字 | string |
id | 成员的唯一标识 | string |
modifiers | 成员的修饰符 | |
declaration(可选) | 原始声明节点 | |
sourceLocation(可选) | 源码位置 展开子属性
| |
parentMember(可选) | 声明当前成员的容器成员 | |
baseMember(可选) | 继承的父类成员 | |
overridingMember(可选) | 覆盖的父类同名成员 | |
ignore(可选) | 是否忽略当前成员 | boolean |
deprecatedMessage(可选) | 废弃后的提示文案 | string |
summary(可选) | 概述 | string |
description(可选) | 详细说明 | string |
examples(可选) | 示例 | string[] |
seeAlso(可选) | 参考列表 | string[] |
since(可选) | 首次添加的版本号 | string |
category(可选) | 所在分类 | string |
defaultValue(可选) | 默认值 | string | number | |
unknownTags(可选) | 未识别的其它标签 | {[key: string]: string} |
DocTypeParameter 接口
表示一个类型参数
DocParameter 接口
表示一个参数
属性
| 属性名 | 说明 | 类型 |
|---|---|---|
raw | 原始符号 | |
name | 参数名 | string |
type | 参数类型 | |
summary(可选) | 概述 | string |
rest(可选) | 是否是展开参数 | boolean |
optional(可选) | 是否可选 | boolean |
defaultValue(可选) | 默认值 | |
subParameters(可选) | 所有子参数 展开子属性
| |
DocClassOrInterface 接口
表示一个类或接口
属性
| 属性名 | 说明 | 类型 |
|---|---|---|
declaredType | 声明的类型 | |
members | 所有成员(含继承的成员) | |
typeParameters(可选) | 所有类型参数 | |
extends(可选) | 继承类型 | |
implements(可选) | 实现类型 | |
继承自 DocMemberBase 接口的属性
| 属性名 | 说明 | 类型 |
|---|---|---|
memberType | 成员的类型 | |
raw | 原始符号 | |
name | 成员的名字 | string |
id | 成员的唯一标识 | string |
modifiers | 成员的修饰符 | |
declaration(可选) | 原始声明节点 | |
sourceLocation(可选) | 源码位置 展开子属性
| |
parentMember(可选) | 声明当前成员的容器成员 | |
baseMember(可选) | 继承的父类成员 | |
overridingMember(可选) | 覆盖的父类同名成员 | |
ignore(可选) | 是否忽略当前成员 | boolean |
deprecatedMessage(可选) | 废弃后的提示文案 | string |
summary(可选) | 概述 | string |
description(可选) | 详细说明 | string |
examples(可选) | 示例 | string[] |
seeAlso(可选) | 参考列表 | string[] |
since(可选) | 首次添加的版本号 | string |
category(可选) | 所在分类 | string |
defaultValue(可选) | 默认值 | string | number | |
unknownTags(可选) | 未识别的其它标签 | {[key: string]: string} |
DocEnum 接口
表示一个枚举
属性
| 属性名 | 说明 | 类型 |
|---|---|---|
declaredType | 声明的类型 | |
members | 所有枚举成员 | |
继承自 DocMemberBase 接口的属性
| 属性名 | 说明 | 类型 |
|---|---|---|
memberType | 成员的类型 | |
raw | 原始符号 | |
name | 成员的名字 | string |
id | 成员的唯一标识 | string |
modifiers | 成员的修饰符 | |
declaration(可选) | 原始声明节点 | |
sourceLocation(可选) | 源码位置 展开子属性
| |
parentMember(可选) | 声明当前成员的容器成员 | |
baseMember(可选) | 继承的父类成员 | |
overridingMember(可选) | 覆盖的父类同名成员 | |
ignore(可选) | 是否忽略当前成员 | boolean |
deprecatedMessage(可选) | 废弃后的提示文案 | string |
summary(可选) | 概述 | string |
description(可选) | 详细说明 | string |
examples(可选) | 示例 | string[] |
seeAlso(可选) | 参考列表 | string[] |
since(可选) | 首次添加的版本号 | string |
category(可选) | 所在分类 | string |
defaultValue(可选) | 默认值 | string | number | |
unknownTags(可选) | 未识别的其它标签 | {[key: string]: string} |
DocEnumMember 接口
表示一个枚举成员
属性
继承自 DocMemberBase 接口的属性
| 属性名 | 说明 | 类型 |
|---|---|---|
memberType | 成员的类型 | |
raw | 原始符号 | |
name | 成员的名字 | string |
id | 成员的唯一标识 | string |
modifiers | 成员的修饰符 | |
declaration(可选) | 原始声明节点 | |
sourceLocation(可选) | 源码位置 展开子属性
| |
parentMember(可选) | 声明当前成员的容器成员 | |
baseMember(可选) | 继承的父类成员 | |
overridingMember(可选) | 覆盖的父类同名成员 | |
ignore(可选) | 是否忽略当前成员 | boolean |
deprecatedMessage(可选) | 废弃后的提示文案 | string |
summary(可选) | 概述 | string |
description(可选) | 详细说明 | string |
examples(可选) | 示例 | string[] |
seeAlso(可选) | 参考列表 | string[] |
since(可选) | 首次添加的版本号 | string |
category(可选) | 所在分类 | string |
defaultValue(可选) | 默认值 | string | number | |
unknownTags(可选) | 未识别的其它标签 | {[key: string]: string} |
DocTypeAlias 接口
表示一个类型别名
属性
| 属性名 | 说明 | 类型 |
|---|---|---|
declaredType | 声明的类型 | |
aliasedType | 等价的类型 | |
继承自 DocMemberBase 接口的属性
| 属性名 | 说明 | 类型 |
|---|---|---|
memberType | 成员的类型 | |
raw | 原始符号 | |
name | 成员的名字 | string |
id | 成员的唯一标识 | string |
modifiers | 成员的修饰符 | |
declaration(可选) | 原始声明节点 | |
sourceLocation(可选) | 源码位置 展开子属性
| |
parentMember(可选) | 声明当前成员的容器成员 | |
baseMember(可选) | 继承的父类成员 | |
overridingMember(可选) | 覆盖的父类同名成员 | |
ignore(可选) | 是否忽略当前成员 | boolean |
deprecatedMessage(可选) | 废弃后的提示文案 | string |
summary(可选) | 概述 | string |
description(可选) | 详细说明 | string |
examples(可选) | 示例 | string[] |
seeAlso(可选) | 参考列表 | string[] |
since(可选) | 首次添加的版本号 | string |
category(可选) | 所在分类 | string |
defaultValue(可选) | 默认值 | string | number | |
unknownTags(可选) | 未识别的其它标签 | {[key: string]: string} |
DocNamespace 接口
表示一个命名空间
属性
| 属性名 | 说明 | 类型 |
|---|---|---|
members | 所有导出的成员 | |
继承自 DocMemberBase 接口的属性
| 属性名 | 说明 | 类型 |
|---|---|---|
memberType | 成员的类型 | |
raw | 原始符号 | |
name | 成员的名字 | string |
id | 成员的唯一标识 | string |
modifiers | 成员的修饰符 | |
declaration(可选) | 原始声明节点 | |
sourceLocation(可选) | 源码位置 展开子属性
| |
parentMember(可选) | 声明当前成员的容器成员 | |
baseMember(可选) | 继承的父类成员 | |
overridingMember(可选) | 覆盖的父类同名成员 | |
ignore(可选) | 是否忽略当前成员 | boolean |
deprecatedMessage(可选) | 废弃后的提示文案 | string |
summary(可选) | 概述 | string |
description(可选) | 详细说明 | string |
examples(可选) | 示例 | string[] |
seeAlso(可选) | 参考列表 | string[] |
since(可选) | 首次添加的版本号 | string |
category(可选) | 所在分类 | string |
defaultValue(可选) | 默认值 | string | number | |
unknownTags(可选) | 未识别的其它标签 | {[key: string]: string} |
DocType 类型
表示一个类型
DocUnknownType | DocNativeType | DocLiteralType | ... 10 more ...DocTemplateLiteralType | DocReferenceType | DocAliasType | DocGenericType | DocFunctionType | DocArrayType | DocTupleType | DocObjectType | DocKeyOfType | DocTypeOfType | DocBinaryType | DocConditionalTypeDocTypeType 枚举只读
表示类型类型的枚举
成员
| 枚举名 | 说明 | 值 |
|---|---|---|
unknown | 不支持的类型 | 0 |
error | 错误类型 | 1 |
native | 内置基础类型 | 2 |
numberLiteral | 数字字面量类型 | 4 |
stringLiteral | 字符串字面量类型 | 8 |
bigintLiteral | 大整数字面量类型 | 16 |
templateLiteral | 模板字面量类型 | 32 |
class | 类 | 64 |
interface | 接口 | 128 |
enum | 枚举 | 256 |
enumMember | 枚举成员 | 512 |
typeAlias | 别名类型 | 1024 |
typeParameter | 类型参数 | 2048 |
this | 当前类型引用类型 | 4096 |
generic | 泛型 | 8192 |
function | 函数类型 | 16384 |
constructor | 构造函数类型 | 32768 |
object | 匿名对象类型 | 65536 |
array | 数组类型 | 131072 |
tuple | 元组类型 | 262144 |
keyOf | 键查询 | 524288 |
typeOf | 类型查询 | 1048576 |
indexedAccess | 属性访问 | 2097152 |
union | 并集类型 | 4194304 |
intersection | 交集类型 | 8388608 |
conditional | 条件类型 | 16777216 |
DocTypeBase 接口
表示一个类型
DocUnknownType 接口
表示一个未知类型
属性
继承自 DocTypeBase 接口的属性
| 属性名 | 说明 | 类型 |
|---|---|---|
typeType | 类型的类型 | |
raw | 原始类型 | |
DocNativeType 接口
表示一个内置类型
属性
| 属性名 | 说明 | 类型 |
|---|---|---|
name | 获取内置类型的名字 | "string" | "number" | "bigint" | ... 9 more ..."boolean" | "symbol" | "undefined" | "object" | "unknown" | "any" | "never" | "void" | "null" | "true" | "false" |
继承自 DocTypeBase 接口的属性
| 属性名 | 说明 | 类型 |
|---|---|---|
typeType | 类型的类型 | |
raw | 原始类型 | |
DocLiteralType 接口
表示一个字面量类型
属性
| 属性名 | 说明 | 类型 |
|---|---|---|
value | 类型的值 | string |
继承自 DocTypeBase 接口的属性
| 属性名 | 说明 | 类型 |
|---|---|---|
typeType | 类型的类型 | |
raw | 原始类型 | |
DocTemplateLiteralType 接口
表示一个字面量类型
属性
| 属性名 | 说明 | 类型 |
|---|---|---|
spans | 所有组成部分 | (string | |
继承自 DocTypeBase 接口的属性
| 属性名 | 说明 | 类型 |
|---|---|---|
typeType | 类型的类型 | |
raw | 原始类型 | |
DocReferenceType 接口
表示一个由符号声明的类型,比如类、接口、枚举或泛型参数
DocTypeBase<DocTypeType.class | DocTypeType.interface | DocTypeType.enum | DocTypeType.enumMember | DocTypeType.typeParameter | DocTypeType.this>属性
| 属性名 | 说明 | 类型 |
|---|---|---|
member | 关联的成员 | |
继承自 DocTypeBase 接口的属性
| 属性名 | 说明 | 类型 |
|---|---|---|
typeType | 类型的类型 | |
raw | 原始类型 | |
DocAliasType 接口
表示一个别名类型
属性
继承自 DocTypeBase 接口的属性
| 属性名 | 说明 | 类型 |
|---|---|---|
typeType | 类型的类型 | |
raw | 原始类型 | |
DocGenericType 接口
表示一个泛型
属性
继承自 DocTypeBase 接口的属性
| 属性名 | 说明 | 类型 |
|---|---|---|
typeType | 类型的类型 | |
raw | 原始类型 | |
DocFunctionType 接口
表示一个函数或构造函数类型
属性
| 属性名 | 说明 | 类型 |
|---|---|---|
signature | 原始签名对象 | |
parameters | 所有参数 展开子属性
| |
returnType | 返回值类型 | |
typeParameters(可选) | 所有类型参数 | |
继承自 DocTypeBase 接口的属性
| 属性名 | 说明 | 类型 |
|---|---|---|
typeType | 类型的类型 | |
raw | 原始类型 | |
DocArrayType 接口
表示一个数组类型
DocTupleType 接口
表示一个元组类型
属性
| 属性名 | 说明 | 类型 |
|---|---|---|
elements | 元素 | |
继承自 DocTypeBase 接口的属性
| 属性名 | 说明 | 类型 |
|---|---|---|
typeType | 类型的类型 | |
raw | 原始类型 | |
DocObjectType 接口
表示一个匿名对象类型
属性
| 属性名 | 说明 | 类型 |
|---|---|---|
members | 获取所有成员 | |
继承自 DocTypeBase 接口的属性
| 属性名 | 说明 | 类型 |
|---|---|---|
typeType | 类型的类型 | |
raw | 原始类型 | |
DocKeyOfType 接口
表示一个键查询类型
DocTypeOfType 接口
表示一个类型查询类型
属性
| 属性名 | 说明 | 类型 |
|---|---|---|
member | 查询的成员 | |
继承自 DocTypeBase 接口的属性
| 属性名 | 说明 | 类型 |
|---|---|---|
typeType | 类型的类型 | |
raw | 原始类型 | |
DocIndexedAccessType 接口
表示一个子属性访问类型
属性
继承自 DocTypeBase 接口的属性
| 属性名 | 说明 | 类型 |
|---|---|---|
typeType | 类型的类型 | |
raw | 原始类型 | |
DocBinaryType 接口
表示一个双目类型
属性
| 属性名 | 说明 | 类型 |
|---|---|---|
operands | 操作数 | |
继承自 DocTypeBase 接口的属性
| 属性名 | 说明 | 类型 |
|---|---|---|
typeType | 类型的类型 | |
raw | 原始类型 | |
DocConditionalType 接口
表示一个条件类型
属性
| 属性名 | 说明 | 类型 |
|---|---|---|
checkType | 检查类型 | |
extendsType | 测试的继承类型 | |
trueType | 测试结果为 | |
falseType | 测试结果为 | |
继承自 DocTypeBase 接口的属性
| 属性名 | 说明 | 类型 |
|---|---|---|
typeType | 类型的类型 | |
raw | 原始类型 | |
DocSourceLocation 接口
表示一个源码位置
属性
| 属性名 | 说明 | 类型 |
|---|---|---|
sourcePath | 源文件绝对路径 | string |
start | 源文件中的开始索引(从 0 开始) | number |
end | 源文件中的结束索引(从 0 开始) | number |
line | 源文件中的开始行号(从 0 开始) | number |
column | 源文件中的开始列号(从 0 开始) | number |
endLine | 源文件中的结束行号(从 0 开始) | number |
endColumn | 源文件中的结束列号(从 0 开始) | number |