我创建了一个类型定义来表示jsep.parse()
函数返回的抽象语法树,以便在我的Angular应用程序中使用。
类型如下:
import { ArrayExpression } from './ast/array-expression';
import { BinaryExpression } from './ast/binary-expression';
import { CallExpression } from './ast/call-expression';
import { ConditionalExpression } from './ast/conditional-expression';
import { Identifier } from './ast/identifier';
import { Literal } from './ast/literal';
import { LogicalExpression } from './ast/logical-expression';
import { MemberExpression } from './ast/member-expression';
import { ThisExpression } from './ast/this-expression';
import { UnaryExpression } from './ast/unary-expression';
export type AST =
ArrayExpression |
BinaryExpression |
CallExpression |
ConditionalExpression |
Identifier |
Literal |
LogicalExpression |
MemberExpression |
ThisExpression |
UnaryExpression;
我试图将其包装成可重复使用的模块。不幸的是,当我尝试将类型添加到模块Exports时,它抱怨我使用类型作为变量。
如果我想捕获此类型并将其导入多个项目,那么正确的方法是什么?