如何创建可重用的类型定义(例如在模块中)

时间:2017-12-03 01:45:36

标签: angular typescript

我创建了一个类型定义来表示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时,它抱怨我使用类型作为变量。

如果我想捕获此类型并将其导入多个项目,那么正确的方法是什么?

0 个答案:

没有答案