UNPKG

993 BTypeScriptView Raw
1interface TSBaseType {
2 name: string;
3 type?: string;
4 raw?: string;
5 required?: boolean;
6}
7declare type TSArgType = TSType;
8declare type TSCombinationType = TSBaseType & {
9 name: 'union' | 'intersection';
10 elements: TSType[];
11};
12declare type TSFuncSigType = TSBaseType & {
13 name: 'signature';
14 type: 'function';
15 signature: {
16 arguments: TSArgType[];
17 return: TSType;
18 };
19};
20declare type TSObjectSigType = TSBaseType & {
21 name: 'signature';
22 type: 'object';
23 signature: {
24 properties: {
25 key: string;
26 value: TSType;
27 }[];
28 };
29};
30declare type TSScalarType = TSBaseType & {
31 name: 'any' | 'boolean' | 'number' | 'void' | 'string' | 'symbol';
32};
33declare type TSArrayType = TSBaseType & {
34 name: 'Array';
35 elements: TSType[];
36};
37export declare type TSSigType = TSObjectSigType | TSFuncSigType;
38export declare type TSType = TSScalarType | TSCombinationType | TSSigType | TSArrayType;
39export {};