mirror of
https://github.com/swc-project/swc.git
synced 2024-12-25 22:56:11 +03:00
10666 lines
294 KiB
JSON
10666 lines
294 KiB
JSON
{
|
|
"type": "Module",
|
|
"span": {
|
|
"start": 37,
|
|
"end": 4415,
|
|
"ctxt": 0
|
|
},
|
|
"body": [
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 46,
|
|
"end": 48,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f1",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 49,
|
|
"end": 88,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 49,
|
|
"end": 88,
|
|
"ctxt": 0
|
|
},
|
|
"value": "obj",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 52,
|
|
"end": 88,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 54,
|
|
"end": 88,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 56,
|
|
"end": 66,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 56,
|
|
"end": 57,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 57,
|
|
"end": 65,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 59,
|
|
"end": 65,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 67,
|
|
"end": 76,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 67,
|
|
"end": 68,
|
|
"ctxt": 0
|
|
},
|
|
"value": "b",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 68,
|
|
"end": 75,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 70,
|
|
"end": 75,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsLiteralType",
|
|
"span": {
|
|
"start": 70,
|
|
"end": 71,
|
|
"ctxt": 0
|
|
},
|
|
"literal": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 70,
|
|
"end": 71,
|
|
"ctxt": 0
|
|
},
|
|
"value": 0.0
|
|
}
|
|
},
|
|
{
|
|
"type": "TsLiteralType",
|
|
"span": {
|
|
"start": 74,
|
|
"end": 75,
|
|
"ctxt": 0
|
|
},
|
|
"literal": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 74,
|
|
"end": 75,
|
|
"ctxt": 0
|
|
},
|
|
"value": 1.0
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 77,
|
|
"end": 86,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 77,
|
|
"end": 78,
|
|
"ctxt": 0
|
|
},
|
|
"value": "c",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 78,
|
|
"end": 86,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 80,
|
|
"end": 86,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 90,
|
|
"end": 97,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 90,
|
|
"end": 97,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k0",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 92,
|
|
"end": 97,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsLiteralType",
|
|
"span": {
|
|
"start": 94,
|
|
"end": 97,
|
|
"ctxt": 0
|
|
},
|
|
"literal": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 94,
|
|
"end": 97,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"raw": "'a'"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 99,
|
|
"end": 112,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 99,
|
|
"end": 112,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k1",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 101,
|
|
"end": 112,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 103,
|
|
"end": 112,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsLiteralType",
|
|
"span": {
|
|
"start": 103,
|
|
"end": 106,
|
|
"ctxt": 0
|
|
},
|
|
"literal": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 103,
|
|
"end": 106,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"raw": "'a'"
|
|
}
|
|
},
|
|
{
|
|
"type": "TsLiteralType",
|
|
"span": {
|
|
"start": 109,
|
|
"end": 112,
|
|
"ctxt": 0
|
|
},
|
|
"literal": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 109,
|
|
"end": 112,
|
|
"ctxt": 0
|
|
},
|
|
"value": "b",
|
|
"raw": "'b'"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 114,
|
|
"end": 133,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 114,
|
|
"end": 133,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k2",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 116,
|
|
"end": 133,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 118,
|
|
"end": 133,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsLiteralType",
|
|
"span": {
|
|
"start": 118,
|
|
"end": 121,
|
|
"ctxt": 0
|
|
},
|
|
"literal": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 118,
|
|
"end": 121,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"raw": "'a'"
|
|
}
|
|
},
|
|
{
|
|
"type": "TsLiteralType",
|
|
"span": {
|
|
"start": 124,
|
|
"end": 127,
|
|
"ctxt": 0
|
|
},
|
|
"literal": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 124,
|
|
"end": 127,
|
|
"ctxt": 0
|
|
},
|
|
"value": "b",
|
|
"raw": "'b'"
|
|
}
|
|
},
|
|
{
|
|
"type": "TsLiteralType",
|
|
"span": {
|
|
"start": 130,
|
|
"end": 133,
|
|
"ctxt": 0
|
|
},
|
|
"literal": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 130,
|
|
"end": 133,
|
|
"ctxt": 0
|
|
},
|
|
"value": "c",
|
|
"raw": "'c'"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 37,
|
|
"end": 363,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 135,
|
|
"end": 363,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 141,
|
|
"end": 153,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 141,
|
|
"end": 152,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 141,
|
|
"end": 148,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 141,
|
|
"end": 144,
|
|
"ctxt": 0
|
|
},
|
|
"value": "obj",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 144,
|
|
"end": 148,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 145,
|
|
"end": 147,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k0",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 151,
|
|
"end": 152,
|
|
"ctxt": 0
|
|
},
|
|
"value": 1.0
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 158,
|
|
"end": 170,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 158,
|
|
"end": 169,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 158,
|
|
"end": 165,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 158,
|
|
"end": 161,
|
|
"ctxt": 0
|
|
},
|
|
"value": "obj",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 161,
|
|
"end": 165,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 162,
|
|
"end": 164,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k0",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 168,
|
|
"end": 169,
|
|
"ctxt": 0
|
|
},
|
|
"value": 2.0
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 175,
|
|
"end": 189,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 175,
|
|
"end": 188,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 175,
|
|
"end": 182,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 175,
|
|
"end": 178,
|
|
"ctxt": 0
|
|
},
|
|
"value": "obj",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 178,
|
|
"end": 182,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 179,
|
|
"end": 181,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k0",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 185,
|
|
"end": 188,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"raw": "'x'"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 204,
|
|
"end": 216,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 204,
|
|
"end": 215,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 204,
|
|
"end": 211,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 204,
|
|
"end": 207,
|
|
"ctxt": 0
|
|
},
|
|
"value": "obj",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 207,
|
|
"end": 211,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 208,
|
|
"end": 210,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k1",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 214,
|
|
"end": 215,
|
|
"ctxt": 0
|
|
},
|
|
"value": 1.0
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 221,
|
|
"end": 233,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 221,
|
|
"end": 232,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 221,
|
|
"end": 228,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 221,
|
|
"end": 224,
|
|
"ctxt": 0
|
|
},
|
|
"value": "obj",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 224,
|
|
"end": 228,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 225,
|
|
"end": 227,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k1",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 231,
|
|
"end": 232,
|
|
"ctxt": 0
|
|
},
|
|
"value": 2.0
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 250,
|
|
"end": 264,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 250,
|
|
"end": 263,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 250,
|
|
"end": 257,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 250,
|
|
"end": 253,
|
|
"ctxt": 0
|
|
},
|
|
"value": "obj",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 253,
|
|
"end": 257,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 254,
|
|
"end": 256,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k1",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 260,
|
|
"end": 263,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"raw": "'x'"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 279,
|
|
"end": 291,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 279,
|
|
"end": 290,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 279,
|
|
"end": 286,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 279,
|
|
"end": 282,
|
|
"ctxt": 0
|
|
},
|
|
"value": "obj",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 282,
|
|
"end": 286,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 283,
|
|
"end": 285,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k2",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 289,
|
|
"end": 290,
|
|
"ctxt": 0
|
|
},
|
|
"value": 1.0
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 308,
|
|
"end": 320,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 308,
|
|
"end": 319,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 308,
|
|
"end": 315,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 308,
|
|
"end": 311,
|
|
"ctxt": 0
|
|
},
|
|
"value": "obj",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 311,
|
|
"end": 315,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 312,
|
|
"end": 314,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k2",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 318,
|
|
"end": 319,
|
|
"ctxt": 0
|
|
},
|
|
"value": 2.0
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 337,
|
|
"end": 351,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 337,
|
|
"end": 350,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 337,
|
|
"end": 344,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 337,
|
|
"end": 340,
|
|
"ctxt": 0
|
|
},
|
|
"value": "obj",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 340,
|
|
"end": 344,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 341,
|
|
"end": 343,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k2",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 347,
|
|
"end": 350,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"raw": "'x'"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": null,
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 374,
|
|
"end": 376,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f2",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 414,
|
|
"end": 441,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 414,
|
|
"end": 441,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 415,
|
|
"end": 441,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 417,
|
|
"end": 441,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 419,
|
|
"end": 429,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 419,
|
|
"end": 420,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 420,
|
|
"end": 428,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 422,
|
|
"end": 428,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 430,
|
|
"end": 439,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 430,
|
|
"end": 431,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 431,
|
|
"end": 439,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 433,
|
|
"end": 439,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 443,
|
|
"end": 471,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 443,
|
|
"end": 471,
|
|
"ctxt": 0
|
|
},
|
|
"value": "b",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 444,
|
|
"end": 471,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 446,
|
|
"end": 471,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsIndexSignature",
|
|
"params": [
|
|
{
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 449,
|
|
"end": 460,
|
|
"ctxt": 0
|
|
},
|
|
"value": "key",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 452,
|
|
"end": 460,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 454,
|
|
"end": 460,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 461,
|
|
"end": 469,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 463,
|
|
"end": 469,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
},
|
|
"readonly": false,
|
|
"static": false,
|
|
"span": {
|
|
"start": 448,
|
|
"end": 469,
|
|
"ctxt": 0
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 473,
|
|
"end": 477,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 473,
|
|
"end": 477,
|
|
"ctxt": 0
|
|
},
|
|
"value": "c",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 474,
|
|
"end": 477,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 476,
|
|
"end": 477,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 476,
|
|
"end": 477,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 479,
|
|
"end": 489,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 479,
|
|
"end": 489,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 480,
|
|
"end": 489,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeOperator",
|
|
"span": {
|
|
"start": 482,
|
|
"end": 489,
|
|
"ctxt": 0
|
|
},
|
|
"op": "keyof",
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 488,
|
|
"end": 489,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 488,
|
|
"end": 489,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 365,
|
|
"end": 1071,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 491,
|
|
"end": 1071,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 497,
|
|
"end": 503,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 497,
|
|
"end": 502,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 497,
|
|
"end": 498,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 501,
|
|
"end": 502,
|
|
"ctxt": 0
|
|
},
|
|
"value": "b",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 582,
|
|
"end": 588,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 582,
|
|
"end": 587,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 582,
|
|
"end": 583,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 586,
|
|
"end": 587,
|
|
"ctxt": 0
|
|
},
|
|
"value": "c",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 667,
|
|
"end": 673,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 667,
|
|
"end": 672,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 667,
|
|
"end": 668,
|
|
"ctxt": 0
|
|
},
|
|
"value": "b",
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 671,
|
|
"end": 672,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 678,
|
|
"end": 684,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 678,
|
|
"end": 683,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 678,
|
|
"end": 679,
|
|
"ctxt": 0
|
|
},
|
|
"value": "b",
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 682,
|
|
"end": 683,
|
|
"ctxt": 0
|
|
},
|
|
"value": "c",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 689,
|
|
"end": 695,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 689,
|
|
"end": 694,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 689,
|
|
"end": 690,
|
|
"ctxt": 0
|
|
},
|
|
"value": "c",
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 693,
|
|
"end": 694,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 775,
|
|
"end": 781,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 775,
|
|
"end": 780,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 775,
|
|
"end": 776,
|
|
"ctxt": 0
|
|
},
|
|
"value": "c",
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 779,
|
|
"end": 780,
|
|
"ctxt": 0
|
|
},
|
|
"value": "b",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 861,
|
|
"end": 865,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 861,
|
|
"end": 864,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 861,
|
|
"end": 862,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 863,
|
|
"end": 864,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 870,
|
|
"end": 874,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 870,
|
|
"end": 873,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 870,
|
|
"end": 871,
|
|
"ctxt": 0
|
|
},
|
|
"value": "b",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 872,
|
|
"end": 873,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 879,
|
|
"end": 883,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 879,
|
|
"end": 882,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 879,
|
|
"end": 880,
|
|
"ctxt": 0
|
|
},
|
|
"value": "c",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 881,
|
|
"end": 882,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 888,
|
|
"end": 893,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 888,
|
|
"end": 892,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 888,
|
|
"end": 889,
|
|
"ctxt": 0
|
|
},
|
|
"value": "c",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 889,
|
|
"end": 892,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 890,
|
|
"end": 891,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 898,
|
|
"end": 906,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 898,
|
|
"end": 905,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 898,
|
|
"end": 901,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 898,
|
|
"end": 899,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 900,
|
|
"end": 901,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 904,
|
|
"end": 905,
|
|
"ctxt": 0
|
|
},
|
|
"value": 1.0
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 911,
|
|
"end": 919,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 911,
|
|
"end": 918,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 911,
|
|
"end": 914,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 911,
|
|
"end": 912,
|
|
"ctxt": 0
|
|
},
|
|
"value": "b",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 913,
|
|
"end": 914,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 917,
|
|
"end": 918,
|
|
"ctxt": 0
|
|
},
|
|
"value": 1.0
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 924,
|
|
"end": 932,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 924,
|
|
"end": 931,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 924,
|
|
"end": 927,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 924,
|
|
"end": 925,
|
|
"ctxt": 0
|
|
},
|
|
"value": "c",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 926,
|
|
"end": 927,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 930,
|
|
"end": 931,
|
|
"ctxt": 0
|
|
},
|
|
"value": 1.0
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 999,
|
|
"end": 1008,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 999,
|
|
"end": 1007,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 999,
|
|
"end": 1003,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 999,
|
|
"end": 1000,
|
|
"ctxt": 0
|
|
},
|
|
"value": "c",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 1000,
|
|
"end": 1003,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1001,
|
|
"end": 1002,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 1006,
|
|
"end": 1007,
|
|
"ctxt": 0
|
|
},
|
|
"value": 1.0
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": {
|
|
"type": "TsTypeParameterDeclaration",
|
|
"span": {
|
|
"start": 376,
|
|
"end": 413,
|
|
"ctxt": 0
|
|
},
|
|
"parameters": [
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 377,
|
|
"end": 412,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 377,
|
|
"end": 378,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 387,
|
|
"end": 412,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsIndexSignature",
|
|
"params": [
|
|
{
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 390,
|
|
"end": 401,
|
|
"ctxt": 0
|
|
},
|
|
"value": "key",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 393,
|
|
"end": 401,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 395,
|
|
"end": 401,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 402,
|
|
"end": 410,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 404,
|
|
"end": 410,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
},
|
|
"readonly": false,
|
|
"static": false,
|
|
"span": {
|
|
"start": 389,
|
|
"end": 410,
|
|
"ctxt": 0
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"default": null
|
|
}
|
|
]
|
|
},
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1082,
|
|
"end": 1084,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f3",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 1103,
|
|
"end": 1126,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1103,
|
|
"end": 1126,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1104,
|
|
"end": 1126,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsMappedType",
|
|
"span": {
|
|
"start": 1106,
|
|
"end": 1126,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": null,
|
|
"typeParam": {
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 1109,
|
|
"end": 1115,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1109,
|
|
"end": 1110,
|
|
"ctxt": 0
|
|
},
|
|
"value": "P",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 1114,
|
|
"end": 1115,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1114,
|
|
"end": 1115,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
"default": null
|
|
},
|
|
"nameType": null,
|
|
"optional": null,
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 1118,
|
|
"end": 1124,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 1128,
|
|
"end": 1156,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1128,
|
|
"end": 1156,
|
|
"ctxt": 0
|
|
},
|
|
"value": "b",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1129,
|
|
"end": 1156,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 1131,
|
|
"end": 1156,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsIndexSignature",
|
|
"params": [
|
|
{
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1134,
|
|
"end": 1145,
|
|
"ctxt": 0
|
|
},
|
|
"value": "key",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1137,
|
|
"end": 1145,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 1139,
|
|
"end": 1145,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1146,
|
|
"end": 1154,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 1148,
|
|
"end": 1154,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
},
|
|
"readonly": false,
|
|
"static": false,
|
|
"span": {
|
|
"start": 1133,
|
|
"end": 1154,
|
|
"ctxt": 0
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 1158,
|
|
"end": 1162,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1158,
|
|
"end": 1162,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1159,
|
|
"end": 1162,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 1161,
|
|
"end": 1162,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1161,
|
|
"end": 1162,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 1073,
|
|
"end": 1277,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 1164,
|
|
"end": 1277,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1170,
|
|
"end": 1176,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 1170,
|
|
"end": 1175,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1170,
|
|
"end": 1171,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1174,
|
|
"end": 1175,
|
|
"ctxt": 0
|
|
},
|
|
"value": "b",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1245,
|
|
"end": 1251,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 1245,
|
|
"end": 1250,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1245,
|
|
"end": 1246,
|
|
"ctxt": 0
|
|
},
|
|
"value": "b",
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1249,
|
|
"end": 1250,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1256,
|
|
"end": 1261,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1256,
|
|
"end": 1260,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1256,
|
|
"end": 1257,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 1257,
|
|
"end": 1260,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1258,
|
|
"end": 1259,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1266,
|
|
"end": 1275,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 1266,
|
|
"end": 1274,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1266,
|
|
"end": 1270,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1266,
|
|
"end": 1267,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 1267,
|
|
"end": 1270,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1268,
|
|
"end": 1269,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 1273,
|
|
"end": 1274,
|
|
"ctxt": 0
|
|
},
|
|
"value": 1.0
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": {
|
|
"type": "TsTypeParameterDeclaration",
|
|
"span": {
|
|
"start": 1084,
|
|
"end": 1102,
|
|
"ctxt": 0
|
|
},
|
|
"parameters": [
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 1085,
|
|
"end": 1101,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1085,
|
|
"end": 1086,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 1095,
|
|
"end": 1101,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
},
|
|
"default": null
|
|
}
|
|
]
|
|
},
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1288,
|
|
"end": 1291,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f3b",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 1310,
|
|
"end": 1333,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1310,
|
|
"end": 1333,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1311,
|
|
"end": 1333,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsMappedType",
|
|
"span": {
|
|
"start": 1313,
|
|
"end": 1333,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": null,
|
|
"typeParam": {
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 1316,
|
|
"end": 1322,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1316,
|
|
"end": 1317,
|
|
"ctxt": 0
|
|
},
|
|
"value": "P",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 1321,
|
|
"end": 1322,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1321,
|
|
"end": 1322,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
"default": null
|
|
},
|
|
"nameType": null,
|
|
"optional": null,
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 1325,
|
|
"end": 1331,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 1335,
|
|
"end": 1363,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1335,
|
|
"end": 1363,
|
|
"ctxt": 0
|
|
},
|
|
"value": "b",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1336,
|
|
"end": 1363,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsMappedType",
|
|
"span": {
|
|
"start": 1338,
|
|
"end": 1363,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": null,
|
|
"typeParam": {
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 1341,
|
|
"end": 1352,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1341,
|
|
"end": 1342,
|
|
"ctxt": 0
|
|
},
|
|
"value": "P",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 1346,
|
|
"end": 1352,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
},
|
|
"default": null
|
|
},
|
|
"nameType": null,
|
|
"optional": null,
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 1355,
|
|
"end": 1361,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 1365,
|
|
"end": 1369,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1365,
|
|
"end": 1369,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1366,
|
|
"end": 1369,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 1368,
|
|
"end": 1369,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1368,
|
|
"end": 1369,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 1279,
|
|
"end": 1460,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 1371,
|
|
"end": 1460,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1377,
|
|
"end": 1383,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 1377,
|
|
"end": 1382,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1377,
|
|
"end": 1378,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1381,
|
|
"end": 1382,
|
|
"ctxt": 0
|
|
},
|
|
"value": "b",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1452,
|
|
"end": 1458,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 1452,
|
|
"end": 1457,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1452,
|
|
"end": 1453,
|
|
"ctxt": 0
|
|
},
|
|
"value": "b",
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1456,
|
|
"end": 1457,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": {
|
|
"type": "TsTypeParameterDeclaration",
|
|
"span": {
|
|
"start": 1291,
|
|
"end": 1309,
|
|
"ctxt": 0
|
|
},
|
|
"parameters": [
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 1292,
|
|
"end": 1308,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1292,
|
|
"end": 1293,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 1302,
|
|
"end": 1308,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
},
|
|
"default": null
|
|
}
|
|
]
|
|
},
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1471,
|
|
"end": 1473,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f4",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 1492,
|
|
"end": 1523,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1492,
|
|
"end": 1523,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1493,
|
|
"end": 1523,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsIndexedAccessType",
|
|
"span": {
|
|
"start": 1495,
|
|
"end": 1523,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"objectType": {
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 1495,
|
|
"end": 1520,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsIndexSignature",
|
|
"params": [
|
|
{
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1498,
|
|
"end": 1509,
|
|
"ctxt": 0
|
|
},
|
|
"value": "key",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1501,
|
|
"end": 1509,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 1503,
|
|
"end": 1509,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1510,
|
|
"end": 1518,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 1512,
|
|
"end": 1518,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
},
|
|
"readonly": false,
|
|
"static": false,
|
|
"span": {
|
|
"start": 1497,
|
|
"end": 1518,
|
|
"ctxt": 0
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"indexType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 1521,
|
|
"end": 1522,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1521,
|
|
"end": 1522,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 1525,
|
|
"end": 1534,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1525,
|
|
"end": 1534,
|
|
"ctxt": 0
|
|
},
|
|
"value": "b",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1526,
|
|
"end": 1534,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 1528,
|
|
"end": 1534,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 1462,
|
|
"end": 1557,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 1536,
|
|
"end": 1557,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1540,
|
|
"end": 1546,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 1540,
|
|
"end": 1545,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1540,
|
|
"end": 1541,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1544,
|
|
"end": 1545,
|
|
"ctxt": 0
|
|
},
|
|
"value": "b",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1549,
|
|
"end": 1555,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 1549,
|
|
"end": 1554,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1549,
|
|
"end": 1550,
|
|
"ctxt": 0
|
|
},
|
|
"value": "b",
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1553,
|
|
"end": 1554,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": {
|
|
"type": "TsTypeParameterDeclaration",
|
|
"span": {
|
|
"start": 1473,
|
|
"end": 1491,
|
|
"ctxt": 0
|
|
},
|
|
"parameters": [
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 1474,
|
|
"end": 1490,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1474,
|
|
"end": 1475,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 1484,
|
|
"end": 1490,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
},
|
|
"default": null
|
|
}
|
|
]
|
|
},
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "TsTypeAliasDeclaration",
|
|
"span": {
|
|
"start": 1559,
|
|
"end": 1596,
|
|
"ctxt": 0
|
|
},
|
|
"declare": false,
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1564,
|
|
"end": 1568,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Item",
|
|
"optional": false
|
|
},
|
|
"typeParams": null,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 1571,
|
|
"end": 1595,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 1573,
|
|
"end": 1583,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1573,
|
|
"end": 1574,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1574,
|
|
"end": 1582,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 1576,
|
|
"end": 1582,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
}
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 1584,
|
|
"end": 1593,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1584,
|
|
"end": 1585,
|
|
"ctxt": 0
|
|
},
|
|
"value": "b",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1585,
|
|
"end": 1593,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 1587,
|
|
"end": 1593,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1607,
|
|
"end": 1610,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f10",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 1646,
|
|
"end": 1652,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1646,
|
|
"end": 1652,
|
|
"ctxt": 0
|
|
},
|
|
"value": "obj",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1649,
|
|
"end": 1652,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 1651,
|
|
"end": 1652,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1651,
|
|
"end": 1652,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 1654,
|
|
"end": 1664,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1654,
|
|
"end": 1664,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k1",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1656,
|
|
"end": 1664,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 1658,
|
|
"end": 1664,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 1666,
|
|
"end": 1680,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1666,
|
|
"end": 1680,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k2",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1668,
|
|
"end": 1680,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeOperator",
|
|
"span": {
|
|
"start": 1670,
|
|
"end": 1680,
|
|
"ctxt": 0
|
|
},
|
|
"op": "keyof",
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 1676,
|
|
"end": 1680,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1676,
|
|
"end": 1680,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Item",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 1682,
|
|
"end": 1693,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1682,
|
|
"end": 1693,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k3",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1684,
|
|
"end": 1693,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeOperator",
|
|
"span": {
|
|
"start": 1686,
|
|
"end": 1693,
|
|
"ctxt": 0
|
|
},
|
|
"op": "keyof",
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 1692,
|
|
"end": 1693,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1692,
|
|
"end": 1693,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 1695,
|
|
"end": 1700,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1695,
|
|
"end": 1700,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k4",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1697,
|
|
"end": 1700,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 1699,
|
|
"end": 1700,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1699,
|
|
"end": 1700,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 1598,
|
|
"end": 1813,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 1702,
|
|
"end": 1813,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1706,
|
|
"end": 1720,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 1706,
|
|
"end": 1719,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1706,
|
|
"end": 1713,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1706,
|
|
"end": 1709,
|
|
"ctxt": 0
|
|
},
|
|
"value": "obj",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 1709,
|
|
"end": 1713,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1710,
|
|
"end": 1712,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k1",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 1716,
|
|
"end": 1719,
|
|
"ctxt": 0
|
|
},
|
|
"value": 123.0
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1733,
|
|
"end": 1747,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 1733,
|
|
"end": 1746,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1733,
|
|
"end": 1740,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1733,
|
|
"end": 1736,
|
|
"ctxt": 0
|
|
},
|
|
"value": "obj",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 1736,
|
|
"end": 1740,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1737,
|
|
"end": 1739,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k2",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 1743,
|
|
"end": 1746,
|
|
"ctxt": 0
|
|
},
|
|
"value": 123.0
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1760,
|
|
"end": 1774,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 1760,
|
|
"end": 1773,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1760,
|
|
"end": 1767,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1760,
|
|
"end": 1763,
|
|
"ctxt": 0
|
|
},
|
|
"value": "obj",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 1763,
|
|
"end": 1767,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1764,
|
|
"end": 1766,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k3",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 1770,
|
|
"end": 1773,
|
|
"ctxt": 0
|
|
},
|
|
"value": 123.0
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1787,
|
|
"end": 1801,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 1787,
|
|
"end": 1800,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1787,
|
|
"end": 1794,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1787,
|
|
"end": 1790,
|
|
"ctxt": 0
|
|
},
|
|
"value": "obj",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 1790,
|
|
"end": 1794,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1791,
|
|
"end": 1793,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k4",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 1797,
|
|
"end": 1800,
|
|
"ctxt": 0
|
|
},
|
|
"value": 123.0
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": {
|
|
"type": "TsTypeParameterDeclaration",
|
|
"span": {
|
|
"start": 1610,
|
|
"end": 1645,
|
|
"ctxt": 0
|
|
},
|
|
"parameters": [
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 1611,
|
|
"end": 1625,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1611,
|
|
"end": 1612,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 1621,
|
|
"end": 1625,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1621,
|
|
"end": 1625,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Item",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
"default": null
|
|
},
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 1627,
|
|
"end": 1644,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1627,
|
|
"end": 1628,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsTypeOperator",
|
|
"span": {
|
|
"start": 1637,
|
|
"end": 1644,
|
|
"ctxt": 0
|
|
},
|
|
"op": "keyof",
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 1643,
|
|
"end": 1644,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1643,
|
|
"end": 1644,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
},
|
|
"default": null
|
|
}
|
|
]
|
|
},
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "TsTypeAliasDeclaration",
|
|
"span": {
|
|
"start": 1815,
|
|
"end": 1850,
|
|
"ctxt": 0
|
|
},
|
|
"declare": false,
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1820,
|
|
"end": 1824,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Dict",
|
|
"optional": false
|
|
},
|
|
"typeParams": null,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 1827,
|
|
"end": 1849,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1827,
|
|
"end": 1833,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Record",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterInstantiation",
|
|
"span": {
|
|
"start": 1833,
|
|
"end": 1849,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 1834,
|
|
"end": 1840,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 1842,
|
|
"end": 1848,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1861,
|
|
"end": 1864,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f11",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 1887,
|
|
"end": 1896,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1887,
|
|
"end": 1896,
|
|
"ctxt": 0
|
|
},
|
|
"value": "obj",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1890,
|
|
"end": 1896,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 1892,
|
|
"end": 1896,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1892,
|
|
"end": 1896,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Dict",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 1898,
|
|
"end": 1912,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1898,
|
|
"end": 1912,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k1",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1900,
|
|
"end": 1912,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeOperator",
|
|
"span": {
|
|
"start": 1902,
|
|
"end": 1912,
|
|
"ctxt": 0
|
|
},
|
|
"op": "keyof",
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 1908,
|
|
"end": 1912,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1908,
|
|
"end": 1912,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Dict",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 1914,
|
|
"end": 1919,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1914,
|
|
"end": 1919,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k2",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1916,
|
|
"end": 1919,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 1918,
|
|
"end": 1919,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1918,
|
|
"end": 1919,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 1852,
|
|
"end": 1975,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 1921,
|
|
"end": 1975,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1925,
|
|
"end": 1939,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 1925,
|
|
"end": 1938,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1925,
|
|
"end": 1932,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1925,
|
|
"end": 1928,
|
|
"ctxt": 0
|
|
},
|
|
"value": "obj",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1929,
|
|
"end": 1932,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 1935,
|
|
"end": 1938,
|
|
"ctxt": 0
|
|
},
|
|
"value": 123.0
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1942,
|
|
"end": 1956,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 1942,
|
|
"end": 1955,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1942,
|
|
"end": 1949,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1942,
|
|
"end": 1945,
|
|
"ctxt": 0
|
|
},
|
|
"value": "obj",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 1945,
|
|
"end": 1949,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1946,
|
|
"end": 1948,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k1",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 1952,
|
|
"end": 1955,
|
|
"ctxt": 0
|
|
},
|
|
"value": 123.0
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1959,
|
|
"end": 1973,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 1959,
|
|
"end": 1972,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1959,
|
|
"end": 1966,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1959,
|
|
"end": 1962,
|
|
"ctxt": 0
|
|
},
|
|
"value": "obj",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 1962,
|
|
"end": 1966,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1963,
|
|
"end": 1965,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k2",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 1969,
|
|
"end": 1972,
|
|
"ctxt": 0
|
|
},
|
|
"value": 123.0
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": {
|
|
"type": "TsTypeParameterDeclaration",
|
|
"span": {
|
|
"start": 1864,
|
|
"end": 1886,
|
|
"ctxt": 0
|
|
},
|
|
"parameters": [
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 1865,
|
|
"end": 1885,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1865,
|
|
"end": 1866,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsTypeOperator",
|
|
"span": {
|
|
"start": 1875,
|
|
"end": 1885,
|
|
"ctxt": 0
|
|
},
|
|
"op": "keyof",
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 1881,
|
|
"end": 1885,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1881,
|
|
"end": 1885,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Dict",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
},
|
|
"default": null
|
|
}
|
|
]
|
|
},
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1986,
|
|
"end": 1989,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f12",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 2035,
|
|
"end": 2041,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2035,
|
|
"end": 2041,
|
|
"ctxt": 0
|
|
},
|
|
"value": "obj",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2038,
|
|
"end": 2041,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2040,
|
|
"end": 2041,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2040,
|
|
"end": 2041,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 2043,
|
|
"end": 2057,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2043,
|
|
"end": 2057,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k1",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2045,
|
|
"end": 2057,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeOperator",
|
|
"span": {
|
|
"start": 2047,
|
|
"end": 2057,
|
|
"ctxt": 0
|
|
},
|
|
"op": "keyof",
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2053,
|
|
"end": 2057,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2053,
|
|
"end": 2057,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Dict",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 2059,
|
|
"end": 2070,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2059,
|
|
"end": 2070,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k2",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2061,
|
|
"end": 2070,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeOperator",
|
|
"span": {
|
|
"start": 2063,
|
|
"end": 2070,
|
|
"ctxt": 0
|
|
},
|
|
"op": "keyof",
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2069,
|
|
"end": 2070,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2069,
|
|
"end": 2070,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 2072,
|
|
"end": 2077,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2072,
|
|
"end": 2077,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k3",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2074,
|
|
"end": 2077,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2076,
|
|
"end": 2077,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2076,
|
|
"end": 2077,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 1977,
|
|
"end": 2190,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 2079,
|
|
"end": 2190,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 2083,
|
|
"end": 2097,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 2083,
|
|
"end": 2096,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 2083,
|
|
"end": 2090,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2083,
|
|
"end": 2086,
|
|
"ctxt": 0
|
|
},
|
|
"value": "obj",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2087,
|
|
"end": 2090,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 2093,
|
|
"end": 2096,
|
|
"ctxt": 0
|
|
},
|
|
"value": 123.0
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 2110,
|
|
"end": 2124,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 2110,
|
|
"end": 2123,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 2110,
|
|
"end": 2117,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2110,
|
|
"end": 2113,
|
|
"ctxt": 0
|
|
},
|
|
"value": "obj",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 2113,
|
|
"end": 2117,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2114,
|
|
"end": 2116,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k1",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 2120,
|
|
"end": 2123,
|
|
"ctxt": 0
|
|
},
|
|
"value": 123.0
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 2137,
|
|
"end": 2151,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 2137,
|
|
"end": 2150,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 2137,
|
|
"end": 2144,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2137,
|
|
"end": 2140,
|
|
"ctxt": 0
|
|
},
|
|
"value": "obj",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 2140,
|
|
"end": 2144,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2141,
|
|
"end": 2143,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k2",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 2147,
|
|
"end": 2150,
|
|
"ctxt": 0
|
|
},
|
|
"value": 123.0
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 2164,
|
|
"end": 2178,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 2164,
|
|
"end": 2177,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 2164,
|
|
"end": 2171,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2164,
|
|
"end": 2167,
|
|
"ctxt": 0
|
|
},
|
|
"value": "obj",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 2167,
|
|
"end": 2171,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2168,
|
|
"end": 2170,
|
|
"ctxt": 0
|
|
},
|
|
"value": "k3",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 2174,
|
|
"end": 2177,
|
|
"ctxt": 0
|
|
},
|
|
"value": 123.0
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": {
|
|
"type": "TsTypeParameterDeclaration",
|
|
"span": {
|
|
"start": 1989,
|
|
"end": 2034,
|
|
"ctxt": 0
|
|
},
|
|
"parameters": [
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 1990,
|
|
"end": 2014,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1990,
|
|
"end": 1991,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2000,
|
|
"end": 2014,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2000,
|
|
"end": 2008,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Readonly",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterInstantiation",
|
|
"span": {
|
|
"start": 2008,
|
|
"end": 2014,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2009,
|
|
"end": 2013,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2009,
|
|
"end": 2013,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Dict",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"default": null
|
|
},
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 2016,
|
|
"end": 2033,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2016,
|
|
"end": 2017,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsTypeOperator",
|
|
"span": {
|
|
"start": 2026,
|
|
"end": 2033,
|
|
"ctxt": 0
|
|
},
|
|
"op": "keyof",
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2032,
|
|
"end": 2033,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2032,
|
|
"end": 2033,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
},
|
|
"default": null
|
|
}
|
|
]
|
|
},
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "ExportDeclaration",
|
|
"span": {
|
|
"start": 2214,
|
|
"end": 2266,
|
|
"ctxt": 0
|
|
},
|
|
"declaration": {
|
|
"type": "TsInterfaceDeclaration",
|
|
"span": {
|
|
"start": 2221,
|
|
"end": 2266,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2231,
|
|
"end": 2237,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Entity",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"typeParams": null,
|
|
"extends": [],
|
|
"body": {
|
|
"type": "TsInterfaceBody",
|
|
"span": {
|
|
"start": 2238,
|
|
"end": 2266,
|
|
"ctxt": 0
|
|
},
|
|
"body": [
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 2244,
|
|
"end": 2264,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2244,
|
|
"end": 2246,
|
|
"ctxt": 0
|
|
},
|
|
"value": "id",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2246,
|
|
"end": 2263,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 2248,
|
|
"end": 2263,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 2248,
|
|
"end": 2254,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 2257,
|
|
"end": 2263,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExportDeclaration",
|
|
"span": {
|
|
"start": 2268,
|
|
"end": 2313,
|
|
"ctxt": 0
|
|
},
|
|
"declaration": {
|
|
"type": "TsTypeAliasDeclaration",
|
|
"span": {
|
|
"start": 2275,
|
|
"end": 2313,
|
|
"ctxt": 0
|
|
},
|
|
"declare": false,
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2280,
|
|
"end": 2284,
|
|
"ctxt": 0
|
|
},
|
|
"value": "IdOf",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterDeclaration",
|
|
"span": {
|
|
"start": 2284,
|
|
"end": 2302,
|
|
"ctxt": 0
|
|
},
|
|
"parameters": [
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 2285,
|
|
"end": 2301,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2285,
|
|
"end": 2286,
|
|
"ctxt": 0
|
|
},
|
|
"value": "E",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2295,
|
|
"end": 2301,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2295,
|
|
"end": 2301,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Entity",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
"default": null
|
|
}
|
|
]
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsIndexedAccessType",
|
|
"span": {
|
|
"start": 2305,
|
|
"end": 2312,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"objectType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2305,
|
|
"end": 2306,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2305,
|
|
"end": 2306,
|
|
"ctxt": 0
|
|
},
|
|
"value": "E",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
"indexType": {
|
|
"type": "TsLiteralType",
|
|
"span": {
|
|
"start": 2307,
|
|
"end": 2311,
|
|
"ctxt": 0
|
|
},
|
|
"literal": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 2307,
|
|
"end": 2311,
|
|
"ctxt": 0
|
|
},
|
|
"value": "id",
|
|
"raw": "'id'"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExportDeclaration",
|
|
"span": {
|
|
"start": 2315,
|
|
"end": 2439,
|
|
"ctxt": 0
|
|
},
|
|
"declaration": {
|
|
"type": "TsInterfaceDeclaration",
|
|
"span": {
|
|
"start": 2322,
|
|
"end": 2439,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2332,
|
|
"end": 2343,
|
|
"ctxt": 0
|
|
},
|
|
"value": "EntityState",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"typeParams": {
|
|
"type": "TsTypeParameterDeclaration",
|
|
"span": {
|
|
"start": 2343,
|
|
"end": 2361,
|
|
"ctxt": 0
|
|
},
|
|
"parameters": [
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 2344,
|
|
"end": 2360,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2344,
|
|
"end": 2345,
|
|
"ctxt": 0
|
|
},
|
|
"value": "E",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2354,
|
|
"end": 2360,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2354,
|
|
"end": 2360,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Entity",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
"default": null
|
|
}
|
|
]
|
|
},
|
|
"extends": [],
|
|
"body": {
|
|
"type": "TsInterfaceBody",
|
|
"span": {
|
|
"start": 2362,
|
|
"end": 2439,
|
|
"ctxt": 0
|
|
},
|
|
"body": [
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 2368,
|
|
"end": 2383,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2368,
|
|
"end": 2371,
|
|
"ctxt": 0
|
|
},
|
|
"value": "ids",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2371,
|
|
"end": 2382,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsArrayType",
|
|
"span": {
|
|
"start": 2373,
|
|
"end": 2382,
|
|
"ctxt": 0
|
|
},
|
|
"elemType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2373,
|
|
"end": 2380,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2373,
|
|
"end": 2377,
|
|
"ctxt": 0
|
|
},
|
|
"value": "IdOf",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterInstantiation",
|
|
"span": {
|
|
"start": 2377,
|
|
"end": 2380,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2378,
|
|
"end": 2379,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2378,
|
|
"end": 2379,
|
|
"ctxt": 0
|
|
},
|
|
"value": "E",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 2388,
|
|
"end": 2437,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2388,
|
|
"end": 2396,
|
|
"ctxt": 0
|
|
},
|
|
"value": "entities",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2396,
|
|
"end": 2436,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 2398,
|
|
"end": 2436,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsIndexSignature",
|
|
"params": [
|
|
{
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2401,
|
|
"end": 2412,
|
|
"ctxt": 0
|
|
},
|
|
"value": "key",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2404,
|
|
"end": 2412,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 2406,
|
|
"end": 2412,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2413,
|
|
"end": 2416,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2415,
|
|
"end": 2416,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2415,
|
|
"end": 2416,
|
|
"ctxt": 0
|
|
},
|
|
"value": "E",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
},
|
|
"readonly": false,
|
|
"static": false,
|
|
"span": {
|
|
"start": 2400,
|
|
"end": 2417,
|
|
"ctxt": 0
|
|
}
|
|
},
|
|
{
|
|
"type": "TsIndexSignature",
|
|
"params": [
|
|
{
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2419,
|
|
"end": 2430,
|
|
"ctxt": 0
|
|
},
|
|
"value": "key",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2422,
|
|
"end": 2430,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 2424,
|
|
"end": 2430,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2431,
|
|
"end": 2434,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2433,
|
|
"end": 2434,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2433,
|
|
"end": 2434,
|
|
"ctxt": 0
|
|
},
|
|
"value": "E",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
},
|
|
"readonly": false,
|
|
"static": false,
|
|
"span": {
|
|
"start": 2418,
|
|
"end": 2434,
|
|
"ctxt": 0
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExportDeclaration",
|
|
"span": {
|
|
"start": 2442,
|
|
"end": 2599,
|
|
"ctxt": 0
|
|
},
|
|
"declaration": {
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2458,
|
|
"end": 2472,
|
|
"ctxt": 0
|
|
},
|
|
"value": "getAllEntities",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 2491,
|
|
"end": 2512,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2491,
|
|
"end": 2512,
|
|
"ctxt": 0
|
|
},
|
|
"value": "state",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2496,
|
|
"end": 2512,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2498,
|
|
"end": 2512,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2498,
|
|
"end": 2509,
|
|
"ctxt": 0
|
|
},
|
|
"value": "EntityState",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterInstantiation",
|
|
"span": {
|
|
"start": 2509,
|
|
"end": 2512,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2510,
|
|
"end": 2511,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2510,
|
|
"end": 2511,
|
|
"ctxt": 0
|
|
},
|
|
"value": "E",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 2449,
|
|
"end": 2599,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 2519,
|
|
"end": 2599,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "VariableDeclaration",
|
|
"span": {
|
|
"start": 2525,
|
|
"end": 2557,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "const",
|
|
"declare": false,
|
|
"declarations": [
|
|
{
|
|
"type": "VariableDeclarator",
|
|
"span": {
|
|
"start": 2531,
|
|
"end": 2556,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "ObjectPattern",
|
|
"span": {
|
|
"start": 2531,
|
|
"end": 2548,
|
|
"ctxt": 0
|
|
},
|
|
"properties": [
|
|
{
|
|
"type": "AssignmentPatternProperty",
|
|
"span": {
|
|
"start": 2533,
|
|
"end": 2536,
|
|
"ctxt": 0
|
|
},
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2533,
|
|
"end": 2536,
|
|
"ctxt": 0
|
|
},
|
|
"value": "ids",
|
|
"optional": false
|
|
},
|
|
"value": null
|
|
},
|
|
{
|
|
"type": "AssignmentPatternProperty",
|
|
"span": {
|
|
"start": 2538,
|
|
"end": 2546,
|
|
"ctxt": 0
|
|
},
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2538,
|
|
"end": 2546,
|
|
"ctxt": 0
|
|
},
|
|
"value": "entities",
|
|
"optional": false
|
|
},
|
|
"value": null
|
|
}
|
|
],
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
},
|
|
"init": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2551,
|
|
"end": 2556,
|
|
"ctxt": 0
|
|
},
|
|
"value": "state",
|
|
"optional": false
|
|
},
|
|
"definite": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "ReturnStatement",
|
|
"span": {
|
|
"start": 2562,
|
|
"end": 2597,
|
|
"ctxt": 0
|
|
},
|
|
"argument": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 2569,
|
|
"end": 2596,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 2569,
|
|
"end": 2576,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2569,
|
|
"end": 2572,
|
|
"ctxt": 0
|
|
},
|
|
"value": "ids",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2573,
|
|
"end": 2576,
|
|
"ctxt": 0
|
|
},
|
|
"value": "map",
|
|
"optional": false
|
|
}
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "ArrowFunctionExpression",
|
|
"span": {
|
|
"start": 2577,
|
|
"end": 2595,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2577,
|
|
"end": 2579,
|
|
"ctxt": 0
|
|
},
|
|
"value": "id",
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
}
|
|
],
|
|
"body": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 2583,
|
|
"end": 2595,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2583,
|
|
"end": 2591,
|
|
"ctxt": 0
|
|
},
|
|
"value": "entities",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 2591,
|
|
"end": 2595,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2592,
|
|
"end": 2594,
|
|
"ctxt": 0
|
|
},
|
|
"value": "id",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"async": false,
|
|
"generator": false,
|
|
"typeParameters": null,
|
|
"returnType": null
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": {
|
|
"type": "TsTypeParameterDeclaration",
|
|
"span": {
|
|
"start": 2472,
|
|
"end": 2490,
|
|
"ctxt": 0
|
|
},
|
|
"parameters": [
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 2473,
|
|
"end": 2489,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2473,
|
|
"end": 2474,
|
|
"ctxt": 0
|
|
},
|
|
"value": "E",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2483,
|
|
"end": 2489,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2483,
|
|
"end": 2489,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Entity",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
"default": null
|
|
}
|
|
]
|
|
},
|
|
"returnType": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2513,
|
|
"end": 2518,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsArrayType",
|
|
"span": {
|
|
"start": 2515,
|
|
"end": 2518,
|
|
"ctxt": 0
|
|
},
|
|
"elemType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2515,
|
|
"end": 2516,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2515,
|
|
"end": 2516,
|
|
"ctxt": 0
|
|
},
|
|
"value": "E",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExportDeclaration",
|
|
"span": {
|
|
"start": 2601,
|
|
"end": 2824,
|
|
"ctxt": 0
|
|
},
|
|
"declaration": {
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2617,
|
|
"end": 2626,
|
|
"ctxt": 0
|
|
},
|
|
"value": "getEntity",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 2645,
|
|
"end": 2656,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2645,
|
|
"end": 2656,
|
|
"ctxt": 0
|
|
},
|
|
"value": "id",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2647,
|
|
"end": 2656,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2649,
|
|
"end": 2656,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2649,
|
|
"end": 2653,
|
|
"ctxt": 0
|
|
},
|
|
"value": "IdOf",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterInstantiation",
|
|
"span": {
|
|
"start": 2653,
|
|
"end": 2656,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2654,
|
|
"end": 2655,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2654,
|
|
"end": 2655,
|
|
"ctxt": 0
|
|
},
|
|
"value": "E",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 2658,
|
|
"end": 2679,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2658,
|
|
"end": 2679,
|
|
"ctxt": 0
|
|
},
|
|
"value": "state",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2663,
|
|
"end": 2679,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2665,
|
|
"end": 2679,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2665,
|
|
"end": 2676,
|
|
"ctxt": 0
|
|
},
|
|
"value": "EntityState",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterInstantiation",
|
|
"span": {
|
|
"start": 2676,
|
|
"end": 2679,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2677,
|
|
"end": 2678,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2677,
|
|
"end": 2678,
|
|
"ctxt": 0
|
|
},
|
|
"value": "E",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 2608,
|
|
"end": 2824,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 2696,
|
|
"end": 2824,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "VariableDeclaration",
|
|
"span": {
|
|
"start": 2702,
|
|
"end": 2734,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "const",
|
|
"declare": false,
|
|
"declarations": [
|
|
{
|
|
"type": "VariableDeclarator",
|
|
"span": {
|
|
"start": 2708,
|
|
"end": 2733,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "ObjectPattern",
|
|
"span": {
|
|
"start": 2708,
|
|
"end": 2725,
|
|
"ctxt": 0
|
|
},
|
|
"properties": [
|
|
{
|
|
"type": "AssignmentPatternProperty",
|
|
"span": {
|
|
"start": 2710,
|
|
"end": 2713,
|
|
"ctxt": 0
|
|
},
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2710,
|
|
"end": 2713,
|
|
"ctxt": 0
|
|
},
|
|
"value": "ids",
|
|
"optional": false
|
|
},
|
|
"value": null
|
|
},
|
|
{
|
|
"type": "AssignmentPatternProperty",
|
|
"span": {
|
|
"start": 2715,
|
|
"end": 2723,
|
|
"ctxt": 0
|
|
},
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2715,
|
|
"end": 2723,
|
|
"ctxt": 0
|
|
},
|
|
"value": "entities",
|
|
"optional": false
|
|
},
|
|
"value": null
|
|
}
|
|
],
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
},
|
|
"init": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2728,
|
|
"end": 2733,
|
|
"ctxt": 0
|
|
},
|
|
"value": "state",
|
|
"optional": false
|
|
},
|
|
"definite": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 2740,
|
|
"end": 2796,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 2744,
|
|
"end": 2761,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!",
|
|
"argument": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 2745,
|
|
"end": 2761,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 2745,
|
|
"end": 2757,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2745,
|
|
"end": 2748,
|
|
"ctxt": 0
|
|
},
|
|
"value": "ids",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2749,
|
|
"end": 2757,
|
|
"ctxt": 0
|
|
},
|
|
"value": "includes",
|
|
"optional": false
|
|
}
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2758,
|
|
"end": 2760,
|
|
"ctxt": 0
|
|
},
|
|
"value": "id",
|
|
"optional": false
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 2763,
|
|
"end": 2796,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ReturnStatement",
|
|
"span": {
|
|
"start": 2773,
|
|
"end": 2790,
|
|
"ctxt": 0
|
|
},
|
|
"argument": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2780,
|
|
"end": 2789,
|
|
"ctxt": 0
|
|
},
|
|
"value": "undefined",
|
|
"optional": false
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "ReturnStatement",
|
|
"span": {
|
|
"start": 2802,
|
|
"end": 2822,
|
|
"ctxt": 0
|
|
},
|
|
"argument": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 2809,
|
|
"end": 2821,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2809,
|
|
"end": 2817,
|
|
"ctxt": 0
|
|
},
|
|
"value": "entities",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 2817,
|
|
"end": 2821,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2818,
|
|
"end": 2820,
|
|
"ctxt": 0
|
|
},
|
|
"value": "id",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": {
|
|
"type": "TsTypeParameterDeclaration",
|
|
"span": {
|
|
"start": 2626,
|
|
"end": 2644,
|
|
"ctxt": 0
|
|
},
|
|
"parameters": [
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 2627,
|
|
"end": 2643,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2627,
|
|
"end": 2628,
|
|
"ctxt": 0
|
|
},
|
|
"value": "E",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2637,
|
|
"end": 2643,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2637,
|
|
"end": 2643,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Entity",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
"default": null
|
|
}
|
|
]
|
|
},
|
|
"returnType": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2680,
|
|
"end": 2695,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 2682,
|
|
"end": 2695,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2682,
|
|
"end": 2683,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2682,
|
|
"end": 2683,
|
|
"ctxt": 0
|
|
},
|
|
"value": "E",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 2686,
|
|
"end": 2695,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "undefined"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "TsInterfaceDeclaration",
|
|
"span": {
|
|
"start": 2848,
|
|
"end": 2900,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2858,
|
|
"end": 2862,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Type",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"typeParams": null,
|
|
"extends": [],
|
|
"body": {
|
|
"type": "TsInterfaceBody",
|
|
"span": {
|
|
"start": 2863,
|
|
"end": 2900,
|
|
"ctxt": 0
|
|
},
|
|
"body": [
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 2869,
|
|
"end": 2876,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2869,
|
|
"end": 2870,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2870,
|
|
"end": 2875,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsLiteralType",
|
|
"span": {
|
|
"start": 2872,
|
|
"end": 2875,
|
|
"ctxt": 0
|
|
},
|
|
"literal": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 2872,
|
|
"end": 2875,
|
|
"ctxt": 0
|
|
},
|
|
"value": 123.0
|
|
}
|
|
}
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 2881,
|
|
"end": 2898,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2881,
|
|
"end": 2882,
|
|
"ctxt": 0
|
|
},
|
|
"value": "b",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2882,
|
|
"end": 2897,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsLiteralType",
|
|
"span": {
|
|
"start": 2884,
|
|
"end": 2897,
|
|
"ctxt": 0
|
|
},
|
|
"literal": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 2884,
|
|
"end": 2897,
|
|
"ctxt": 0
|
|
},
|
|
"value": "some string",
|
|
"raw": "\"some string\""
|
|
}
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2911,
|
|
"end": 2917,
|
|
"ctxt": 0
|
|
},
|
|
"value": "get123",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 2902,
|
|
"end": 2980,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 2951,
|
|
"end": 2980,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ReturnStatement",
|
|
"span": {
|
|
"start": 2957,
|
|
"end": 2968,
|
|
"ctxt": 0
|
|
},
|
|
"argument": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 2964,
|
|
"end": 2967,
|
|
"ctxt": 0
|
|
},
|
|
"value": 123.0
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": {
|
|
"type": "TsTypeParameterDeclaration",
|
|
"span": {
|
|
"start": 2917,
|
|
"end": 2939,
|
|
"ctxt": 0
|
|
},
|
|
"parameters": [
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 2918,
|
|
"end": 2938,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2918,
|
|
"end": 2919,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsTypeOperator",
|
|
"span": {
|
|
"start": 2928,
|
|
"end": 2938,
|
|
"ctxt": 0
|
|
},
|
|
"op": "keyof",
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2934,
|
|
"end": 2938,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2934,
|
|
"end": 2938,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Type",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
},
|
|
"default": null
|
|
}
|
|
]
|
|
},
|
|
"returnType": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2941,
|
|
"end": 2950,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsIndexedAccessType",
|
|
"span": {
|
|
"start": 2943,
|
|
"end": 2950,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"objectType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2943,
|
|
"end": 2947,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2943,
|
|
"end": 2947,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Type",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
"indexType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2948,
|
|
"end": 2949,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2948,
|
|
"end": 2949,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "TsTypeAliasDeclaration",
|
|
"span": {
|
|
"start": 3004,
|
|
"end": 3077,
|
|
"ctxt": 0
|
|
},
|
|
"declare": false,
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3009,
|
|
"end": 3022,
|
|
"ctxt": 0
|
|
},
|
|
"value": "StrictExtract",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterDeclaration",
|
|
"span": {
|
|
"start": 3022,
|
|
"end": 3028,
|
|
"ctxt": 0
|
|
},
|
|
"parameters": [
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 3023,
|
|
"end": 3024,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3023,
|
|
"end": 3024,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"constraint": null,
|
|
"default": null
|
|
},
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 3026,
|
|
"end": 3027,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3026,
|
|
"end": 3027,
|
|
"ctxt": 0
|
|
},
|
|
"value": "U",
|
|
"optional": false
|
|
},
|
|
"constraint": null,
|
|
"default": null
|
|
}
|
|
]
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsConditionalType",
|
|
"span": {
|
|
"start": 3031,
|
|
"end": 3076,
|
|
"ctxt": 0
|
|
},
|
|
"checkType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3031,
|
|
"end": 3032,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3031,
|
|
"end": 3032,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
"extendsType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3041,
|
|
"end": 3042,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3041,
|
|
"end": 3042,
|
|
"ctxt": 0
|
|
},
|
|
"value": "U",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
"trueType": {
|
|
"type": "TsConditionalType",
|
|
"span": {
|
|
"start": 3045,
|
|
"end": 3068,
|
|
"ctxt": 0
|
|
},
|
|
"checkType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3045,
|
|
"end": 3046,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3045,
|
|
"end": 3046,
|
|
"ctxt": 0
|
|
},
|
|
"value": "U",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
"extendsType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3055,
|
|
"end": 3056,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3055,
|
|
"end": 3056,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
"trueType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3059,
|
|
"end": 3060,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3059,
|
|
"end": 3060,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
"falseType": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 3063,
|
|
"end": 3068,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "never"
|
|
}
|
|
},
|
|
"falseType": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 3071,
|
|
"end": 3076,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "never"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "TsTypeAliasDeclaration",
|
|
"span": {
|
|
"start": 3078,
|
|
"end": 3147,
|
|
"ctxt": 0
|
|
},
|
|
"declare": false,
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3083,
|
|
"end": 3096,
|
|
"ctxt": 0
|
|
},
|
|
"value": "StrictExclude",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterDeclaration",
|
|
"span": {
|
|
"start": 3096,
|
|
"end": 3102,
|
|
"ctxt": 0
|
|
},
|
|
"parameters": [
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 3097,
|
|
"end": 3098,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3097,
|
|
"end": 3098,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"constraint": null,
|
|
"default": null
|
|
},
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 3100,
|
|
"end": 3101,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3100,
|
|
"end": 3101,
|
|
"ctxt": 0
|
|
},
|
|
"value": "U",
|
|
"optional": false
|
|
},
|
|
"constraint": null,
|
|
"default": null
|
|
}
|
|
]
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsConditionalType",
|
|
"span": {
|
|
"start": 3105,
|
|
"end": 3146,
|
|
"ctxt": 0
|
|
},
|
|
"checkType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3105,
|
|
"end": 3106,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3105,
|
|
"end": 3106,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
"extendsType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3115,
|
|
"end": 3134,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3115,
|
|
"end": 3128,
|
|
"ctxt": 0
|
|
},
|
|
"value": "StrictExtract",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterInstantiation",
|
|
"span": {
|
|
"start": 3128,
|
|
"end": 3134,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3129,
|
|
"end": 3130,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3129,
|
|
"end": 3130,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3132,
|
|
"end": 3133,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3132,
|
|
"end": 3133,
|
|
"ctxt": 0
|
|
},
|
|
"value": "U",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"trueType": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 3137,
|
|
"end": 3142,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "never"
|
|
},
|
|
"falseType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3145,
|
|
"end": 3146,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3145,
|
|
"end": 3146,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "TsTypeAliasDeclaration",
|
|
"span": {
|
|
"start": 3148,
|
|
"end": 3210,
|
|
"ctxt": 0
|
|
},
|
|
"declare": false,
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3153,
|
|
"end": 3154,
|
|
"ctxt": 0
|
|
},
|
|
"value": "A",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterDeclaration",
|
|
"span": {
|
|
"start": 3154,
|
|
"end": 3157,
|
|
"ctxt": 0
|
|
},
|
|
"parameters": [
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 3155,
|
|
"end": 3156,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3155,
|
|
"end": 3156,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"constraint": null,
|
|
"default": null
|
|
}
|
|
]
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsMappedType",
|
|
"span": {
|
|
"start": 3160,
|
|
"end": 3209,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": null,
|
|
"typeParam": {
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 3163,
|
|
"end": 3199,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3163,
|
|
"end": 3164,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Q",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsIndexedAccessType",
|
|
"span": {
|
|
"start": 3168,
|
|
"end": 3199,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"objectType": {
|
|
"type": "TsMappedType",
|
|
"span": {
|
|
"start": 3168,
|
|
"end": 3190,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": null,
|
|
"typeParam": {
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 3171,
|
|
"end": 3183,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3171,
|
|
"end": 3172,
|
|
"ctxt": 0
|
|
},
|
|
"value": "P",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsTypeOperator",
|
|
"span": {
|
|
"start": 3176,
|
|
"end": 3183,
|
|
"ctxt": 0
|
|
},
|
|
"op": "keyof",
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3182,
|
|
"end": 3183,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3182,
|
|
"end": 3183,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
},
|
|
"default": null
|
|
},
|
|
"nameType": null,
|
|
"optional": null,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3186,
|
|
"end": 3187,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3186,
|
|
"end": 3187,
|
|
"ctxt": 0
|
|
},
|
|
"value": "P",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
},
|
|
"indexType": {
|
|
"type": "TsTypeOperator",
|
|
"span": {
|
|
"start": 3191,
|
|
"end": 3198,
|
|
"ctxt": 0
|
|
},
|
|
"op": "keyof",
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3197,
|
|
"end": 3198,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3197,
|
|
"end": 3198,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
},
|
|
"default": null
|
|
},
|
|
"nameType": null,
|
|
"optional": null,
|
|
"typeAnnotation": {
|
|
"type": "TsIndexedAccessType",
|
|
"span": {
|
|
"start": 3202,
|
|
"end": 3206,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"objectType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3202,
|
|
"end": 3203,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3202,
|
|
"end": 3203,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
"indexType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3204,
|
|
"end": 3205,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3204,
|
|
"end": 3205,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Q",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "TsTypeAliasDeclaration",
|
|
"span": {
|
|
"start": 3211,
|
|
"end": 3280,
|
|
"ctxt": 0
|
|
},
|
|
"declare": false,
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3216,
|
|
"end": 3217,
|
|
"ctxt": 0
|
|
},
|
|
"value": "B",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterDeclaration",
|
|
"span": {
|
|
"start": 3217,
|
|
"end": 3223,
|
|
"ctxt": 0
|
|
},
|
|
"parameters": [
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 3218,
|
|
"end": 3219,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3218,
|
|
"end": 3219,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"constraint": null,
|
|
"default": null
|
|
},
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 3221,
|
|
"end": 3222,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3221,
|
|
"end": 3222,
|
|
"ctxt": 0
|
|
},
|
|
"value": "V",
|
|
"optional": false
|
|
},
|
|
"constraint": null,
|
|
"default": null
|
|
}
|
|
]
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3226,
|
|
"end": 3279,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3226,
|
|
"end": 3227,
|
|
"ctxt": 0
|
|
},
|
|
"value": "A",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterInstantiation",
|
|
"span": {
|
|
"start": 3227,
|
|
"end": 3279,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "TsMappedType",
|
|
"span": {
|
|
"start": 3228,
|
|
"end": 3278,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": null,
|
|
"typeParam": {
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 3231,
|
|
"end": 3243,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3231,
|
|
"end": 3232,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Q",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsTypeOperator",
|
|
"span": {
|
|
"start": 3236,
|
|
"end": 3243,
|
|
"ctxt": 0
|
|
},
|
|
"op": "keyof",
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3242,
|
|
"end": 3243,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3242,
|
|
"end": 3243,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
},
|
|
"default": null
|
|
},
|
|
"nameType": null,
|
|
"optional": null,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3246,
|
|
"end": 3275,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3246,
|
|
"end": 3259,
|
|
"ctxt": 0
|
|
},
|
|
"value": "StrictExclude",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterInstantiation",
|
|
"span": {
|
|
"start": 3259,
|
|
"end": 3275,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3260,
|
|
"end": 3270,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3260,
|
|
"end": 3261,
|
|
"ctxt": 0
|
|
},
|
|
"value": "B",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterInstantiation",
|
|
"span": {
|
|
"start": 3261,
|
|
"end": 3270,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "TsIndexedAccessType",
|
|
"span": {
|
|
"start": 3262,
|
|
"end": 3266,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"objectType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3262,
|
|
"end": 3263,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3262,
|
|
"end": 3263,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
"indexType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3264,
|
|
"end": 3265,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3264,
|
|
"end": 3265,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Q",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
},
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3268,
|
|
"end": 3269,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3268,
|
|
"end": 3269,
|
|
"ctxt": 0
|
|
},
|
|
"value": "V",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 3272,
|
|
"end": 3274,
|
|
"ctxt": 0
|
|
},
|
|
"members": []
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3314,
|
|
"end": 3316,
|
|
"ctxt": 0
|
|
},
|
|
"value": "fn",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 3382,
|
|
"end": 3390,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3382,
|
|
"end": 3390,
|
|
"ctxt": 0
|
|
},
|
|
"value": "param",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 3387,
|
|
"end": 3390,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3389,
|
|
"end": 3390,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3389,
|
|
"end": 3390,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 3392,
|
|
"end": 3436,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3392,
|
|
"end": 3436,
|
|
"ctxt": 0
|
|
},
|
|
"value": "cb",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 3394,
|
|
"end": 3436,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsFunctionType",
|
|
"span": {
|
|
"start": 3396,
|
|
"end": 3436,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3397,
|
|
"end": 3427,
|
|
"ctxt": 0
|
|
},
|
|
"value": "element",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 3404,
|
|
"end": 3427,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsIndexedAccessType",
|
|
"span": {
|
|
"start": 3406,
|
|
"end": 3427,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"objectType": {
|
|
"type": "TsIndexedAccessType",
|
|
"span": {
|
|
"start": 3406,
|
|
"end": 3419,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"objectType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3406,
|
|
"end": 3407,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3406,
|
|
"end": 3407,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
"indexType": {
|
|
"type": "TsLiteralType",
|
|
"span": {
|
|
"start": 3408,
|
|
"end": 3418,
|
|
"ctxt": 0
|
|
},
|
|
"literal": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 3408,
|
|
"end": 3418,
|
|
"ctxt": 0
|
|
},
|
|
"value": "elements",
|
|
"raw": "'elements'"
|
|
}
|
|
}
|
|
},
|
|
"indexType": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 3420,
|
|
"end": 3426,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeParams": null,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 3429,
|
|
"end": 3436,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 3432,
|
|
"end": 3436,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "void"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 3305,
|
|
"end": 3468,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 3438,
|
|
"end": 3468,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 3444,
|
|
"end": 3466,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 3444,
|
|
"end": 3465,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3444,
|
|
"end": 3446,
|
|
"ctxt": 0
|
|
},
|
|
"value": "cb",
|
|
"optional": false
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3447,
|
|
"end": 3464,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3447,
|
|
"end": 3461,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3447,
|
|
"end": 3452,
|
|
"ctxt": 0
|
|
},
|
|
"value": "param",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3453,
|
|
"end": 3461,
|
|
"ctxt": 0
|
|
},
|
|
"value": "elements",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 3461,
|
|
"end": 3464,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 3462,
|
|
"end": 3463,
|
|
"ctxt": 0
|
|
},
|
|
"value": 0.0
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": {
|
|
"type": "TsTypeParameterDeclaration",
|
|
"span": {
|
|
"start": 3316,
|
|
"end": 3381,
|
|
"ctxt": 0
|
|
},
|
|
"parameters": [
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 3317,
|
|
"end": 3380,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3317,
|
|
"end": 3318,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 3327,
|
|
"end": 3380,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 3327,
|
|
"end": 3352,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 3328,
|
|
"end": 3351,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3328,
|
|
"end": 3336,
|
|
"ctxt": 0
|
|
},
|
|
"value": "elements",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 3336,
|
|
"end": 3351,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3338,
|
|
"end": 3351,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3338,
|
|
"end": 3343,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Array",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterInstantiation",
|
|
"span": {
|
|
"start": 3343,
|
|
"end": 3351,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 3344,
|
|
"end": 3350,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 3355,
|
|
"end": 3380,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 3356,
|
|
"end": 3379,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3356,
|
|
"end": 3364,
|
|
"ctxt": 0
|
|
},
|
|
"value": "elements",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 3364,
|
|
"end": 3379,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3366,
|
|
"end": 3379,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3366,
|
|
"end": 3371,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Array",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterInstantiation",
|
|
"span": {
|
|
"start": 3371,
|
|
"end": 3379,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 3372,
|
|
"end": 3378,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"default": null
|
|
}
|
|
]
|
|
},
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3479,
|
|
"end": 3482,
|
|
"ctxt": 0
|
|
},
|
|
"value": "fn2",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 3508,
|
|
"end": 3516,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3508,
|
|
"end": 3516,
|
|
"ctxt": 0
|
|
},
|
|
"value": "param",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 3513,
|
|
"end": 3516,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3515,
|
|
"end": 3516,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3515,
|
|
"end": 3516,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 3518,
|
|
"end": 3550,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3518,
|
|
"end": 3550,
|
|
"ctxt": 0
|
|
},
|
|
"value": "cb",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 3520,
|
|
"end": 3550,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsFunctionType",
|
|
"span": {
|
|
"start": 3522,
|
|
"end": 3550,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3523,
|
|
"end": 3541,
|
|
"ctxt": 0
|
|
},
|
|
"value": "element",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 3530,
|
|
"end": 3541,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsIndexedAccessType",
|
|
"span": {
|
|
"start": 3532,
|
|
"end": 3541,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"objectType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3532,
|
|
"end": 3533,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3532,
|
|
"end": 3533,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
"indexType": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 3534,
|
|
"end": 3540,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeParams": null,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 3543,
|
|
"end": 3550,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 3546,
|
|
"end": 3550,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "void"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 3470,
|
|
"end": 3573,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 3552,
|
|
"end": 3573,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 3558,
|
|
"end": 3571,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 3558,
|
|
"end": 3570,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3558,
|
|
"end": 3560,
|
|
"ctxt": 0
|
|
},
|
|
"value": "cb",
|
|
"optional": false
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3561,
|
|
"end": 3569,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3561,
|
|
"end": 3566,
|
|
"ctxt": 0
|
|
},
|
|
"value": "param",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 3566,
|
|
"end": 3569,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 3567,
|
|
"end": 3568,
|
|
"ctxt": 0
|
|
},
|
|
"value": 0.0
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": {
|
|
"type": "TsTypeParameterDeclaration",
|
|
"span": {
|
|
"start": 3482,
|
|
"end": 3507,
|
|
"ctxt": 0
|
|
},
|
|
"parameters": [
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 3483,
|
|
"end": 3506,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3483,
|
|
"end": 3484,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3493,
|
|
"end": 3506,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3493,
|
|
"end": 3498,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Array",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterInstantiation",
|
|
"span": {
|
|
"start": 3498,
|
|
"end": 3506,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 3499,
|
|
"end": 3505,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"default": null
|
|
}
|
|
]
|
|
},
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3606,
|
|
"end": 3609,
|
|
"ctxt": 0
|
|
},
|
|
"value": "fn3",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 3643,
|
|
"end": 3651,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3643,
|
|
"end": 3651,
|
|
"ctxt": 0
|
|
},
|
|
"value": "param",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 3648,
|
|
"end": 3651,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3650,
|
|
"end": 3651,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3650,
|
|
"end": 3651,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 3653,
|
|
"end": 3685,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3653,
|
|
"end": 3685,
|
|
"ctxt": 0
|
|
},
|
|
"value": "cb",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 3655,
|
|
"end": 3685,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsFunctionType",
|
|
"span": {
|
|
"start": 3657,
|
|
"end": 3685,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3658,
|
|
"end": 3676,
|
|
"ctxt": 0
|
|
},
|
|
"value": "element",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 3665,
|
|
"end": 3676,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsIndexedAccessType",
|
|
"span": {
|
|
"start": 3667,
|
|
"end": 3676,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"objectType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3667,
|
|
"end": 3668,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3667,
|
|
"end": 3668,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
"indexType": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 3669,
|
|
"end": 3675,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeParams": null,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 3678,
|
|
"end": 3685,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 3681,
|
|
"end": 3685,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "void"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 3597,
|
|
"end": 3708,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 3687,
|
|
"end": 3708,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 3693,
|
|
"end": 3706,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 3693,
|
|
"end": 3705,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3693,
|
|
"end": 3695,
|
|
"ctxt": 0
|
|
},
|
|
"value": "cb",
|
|
"optional": false
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3696,
|
|
"end": 3704,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3696,
|
|
"end": 3701,
|
|
"ctxt": 0
|
|
},
|
|
"value": "param",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 3701,
|
|
"end": 3704,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 3702,
|
|
"end": 3703,
|
|
"ctxt": 0
|
|
},
|
|
"value": 0.0
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": {
|
|
"type": "TsTypeParameterDeclaration",
|
|
"span": {
|
|
"start": 3609,
|
|
"end": 3642,
|
|
"ctxt": 0
|
|
},
|
|
"parameters": [
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 3610,
|
|
"end": 3641,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3610,
|
|
"end": 3611,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3620,
|
|
"end": 3641,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3620,
|
|
"end": 3633,
|
|
"ctxt": 0
|
|
},
|
|
"value": "ReadonlyArray",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterInstantiation",
|
|
"span": {
|
|
"start": 3633,
|
|
"end": 3641,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 3634,
|
|
"end": 3640,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"default": null
|
|
}
|
|
]
|
|
},
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3719,
|
|
"end": 3722,
|
|
"ctxt": 0
|
|
},
|
|
"value": "fn4",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 3710,
|
|
"end": 3828,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 3743,
|
|
"end": 3828,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "VariableDeclaration",
|
|
"span": {
|
|
"start": 3749,
|
|
"end": 3781,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "let",
|
|
"declare": false,
|
|
"declarations": [
|
|
{
|
|
"type": "VariableDeclarator",
|
|
"span": {
|
|
"start": 3753,
|
|
"end": 3780,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3753,
|
|
"end": 3754,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 3754,
|
|
"end": 3772,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsIndexedAccessType",
|
|
"span": {
|
|
"start": 3756,
|
|
"end": 3772,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"objectType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3756,
|
|
"end": 3769,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3756,
|
|
"end": 3761,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Array",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterInstantiation",
|
|
"span": {
|
|
"start": 3761,
|
|
"end": 3769,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 3762,
|
|
"end": 3768,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"indexType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3770,
|
|
"end": 3771,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3770,
|
|
"end": 3771,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"init": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 3775,
|
|
"end": 3780,
|
|
"ctxt": 0
|
|
},
|
|
"value": "abc",
|
|
"raw": "'abc'"
|
|
},
|
|
"definite": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "VariableDeclaration",
|
|
"span": {
|
|
"start": 3786,
|
|
"end": 3826,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "let",
|
|
"declare": false,
|
|
"declarations": [
|
|
{
|
|
"type": "VariableDeclarator",
|
|
"span": {
|
|
"start": 3790,
|
|
"end": 3825,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3790,
|
|
"end": 3791,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 3791,
|
|
"end": 3817,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsIndexedAccessType",
|
|
"span": {
|
|
"start": 3793,
|
|
"end": 3817,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"objectType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3793,
|
|
"end": 3814,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3793,
|
|
"end": 3806,
|
|
"ctxt": 0
|
|
},
|
|
"value": "ReadonlyArray",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterInstantiation",
|
|
"span": {
|
|
"start": 3806,
|
|
"end": 3814,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 3807,
|
|
"end": 3813,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"indexType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3815,
|
|
"end": 3816,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3815,
|
|
"end": 3816,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"init": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 3820,
|
|
"end": 3825,
|
|
"ctxt": 0
|
|
},
|
|
"value": "abc",
|
|
"raw": "'abc'"
|
|
},
|
|
"definite": false
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": {
|
|
"type": "TsTypeParameterDeclaration",
|
|
"span": {
|
|
"start": 3722,
|
|
"end": 3740,
|
|
"ctxt": 0
|
|
},
|
|
"parameters": [
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 3723,
|
|
"end": 3739,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3723,
|
|
"end": 3724,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 3733,
|
|
"end": 3739,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
},
|
|
"default": null
|
|
}
|
|
]
|
|
},
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "ExportDeclaration",
|
|
"span": {
|
|
"start": 3863,
|
|
"end": 3965,
|
|
"ctxt": 0
|
|
},
|
|
"declaration": {
|
|
"type": "ClassDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3876,
|
|
"end": 3877,
|
|
"ctxt": 0
|
|
},
|
|
"value": "c",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"span": {
|
|
"start": 3870,
|
|
"end": 3965,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"body": [
|
|
{
|
|
"type": "TsIndexSignature",
|
|
"params": [
|
|
{
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3883,
|
|
"end": 3892,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 3884,
|
|
"end": 3892,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 3886,
|
|
"end": 3892,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 3893,
|
|
"end": 3901,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 3895,
|
|
"end": 3901,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
}
|
|
},
|
|
"readonly": false,
|
|
"static": false,
|
|
"span": {
|
|
"start": 3882,
|
|
"end": 3902,
|
|
"ctxt": 0
|
|
}
|
|
},
|
|
{
|
|
"type": "Constructor",
|
|
"span": {
|
|
"start": 3905,
|
|
"end": 3963,
|
|
"ctxt": 0
|
|
},
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3905,
|
|
"end": 3916,
|
|
"ctxt": 0
|
|
},
|
|
"value": "constructor",
|
|
"optional": false
|
|
},
|
|
"params": [],
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 3919,
|
|
"end": 3963,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 3925,
|
|
"end": 3938,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 3925,
|
|
"end": 3937,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3925,
|
|
"end": 3931,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "ThisExpression",
|
|
"span": {
|
|
"start": 3925,
|
|
"end": 3929,
|
|
"ctxt": 0
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3930,
|
|
"end": 3931,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"optional": false
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 3934,
|
|
"end": 3937,
|
|
"ctxt": 0
|
|
},
|
|
"value": "b",
|
|
"raw": "\"b\""
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 3943,
|
|
"end": 3959,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 3943,
|
|
"end": 3958,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3943,
|
|
"end": 3952,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "ThisExpression",
|
|
"span": {
|
|
"start": 3943,
|
|
"end": 3947,
|
|
"ctxt": 0
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 3947,
|
|
"end": 3952,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 3948,
|
|
"end": 3951,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"raw": "\"a\""
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 3955,
|
|
"end": 3958,
|
|
"ctxt": 0
|
|
},
|
|
"value": "b",
|
|
"raw": "\"b\""
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"accessibility": null,
|
|
"isOptional": false
|
|
}
|
|
],
|
|
"superClass": null,
|
|
"isAbstract": false,
|
|
"typeParams": null,
|
|
"superTypeParams": null,
|
|
"implements": []
|
|
}
|
|
},
|
|
{
|
|
"type": "TsTypeAliasDeclaration",
|
|
"span": {
|
|
"start": 3989,
|
|
"end": 4053,
|
|
"ctxt": 0
|
|
},
|
|
"declare": false,
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3994,
|
|
"end": 3997,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Foo",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterDeclaration",
|
|
"span": {
|
|
"start": 3997,
|
|
"end": 4000,
|
|
"ctxt": 0
|
|
},
|
|
"parameters": [
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 3998,
|
|
"end": 3999,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3998,
|
|
"end": 3999,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"constraint": null,
|
|
"default": null
|
|
}
|
|
]
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 4003,
|
|
"end": 4052,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsIndexSignature",
|
|
"params": [
|
|
{
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4006,
|
|
"end": 4017,
|
|
"ctxt": 0
|
|
},
|
|
"value": "key",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 4009,
|
|
"end": 4017,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 4011,
|
|
"end": 4017,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 4018,
|
|
"end": 4050,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsIndexedAccessType",
|
|
"span": {
|
|
"start": 4020,
|
|
"end": 4050,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"objectType": {
|
|
"type": "TsMappedType",
|
|
"span": {
|
|
"start": 4020,
|
|
"end": 4041,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": null,
|
|
"typeParam": {
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 4023,
|
|
"end": 4035,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4023,
|
|
"end": 4024,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsTypeOperator",
|
|
"span": {
|
|
"start": 4028,
|
|
"end": 4035,
|
|
"ctxt": 0
|
|
},
|
|
"op": "keyof",
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 4034,
|
|
"end": 4035,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4034,
|
|
"end": 4035,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
},
|
|
"default": null
|
|
},
|
|
"nameType": null,
|
|
"optional": null,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 4038,
|
|
"end": 4039,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4038,
|
|
"end": 4039,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
},
|
|
"indexType": {
|
|
"type": "TsTypeOperator",
|
|
"span": {
|
|
"start": 4042,
|
|
"end": 4049,
|
|
"ctxt": 0
|
|
},
|
|
"op": "keyof",
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 4048,
|
|
"end": 4049,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4048,
|
|
"end": 4049,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"readonly": false,
|
|
"static": false,
|
|
"span": {
|
|
"start": 4005,
|
|
"end": 4050,
|
|
"ctxt": 0
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "TsTypeAliasDeclaration",
|
|
"span": {
|
|
"start": 4055,
|
|
"end": 4121,
|
|
"ctxt": 0
|
|
},
|
|
"declare": false,
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4060,
|
|
"end": 4063,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Bar",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterDeclaration",
|
|
"span": {
|
|
"start": 4063,
|
|
"end": 4066,
|
|
"ctxt": 0
|
|
},
|
|
"parameters": [
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 4064,
|
|
"end": 4065,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4064,
|
|
"end": 4065,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"constraint": null,
|
|
"default": null
|
|
}
|
|
]
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 4069,
|
|
"end": 4120,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsIndexSignature",
|
|
"params": [
|
|
{
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4072,
|
|
"end": 4083,
|
|
"ctxt": 0
|
|
},
|
|
"value": "key",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 4075,
|
|
"end": 4083,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 4077,
|
|
"end": 4083,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 4084,
|
|
"end": 4118,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsIndexedAccessType",
|
|
"span": {
|
|
"start": 4086,
|
|
"end": 4118,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"objectType": {
|
|
"type": "TsMappedType",
|
|
"span": {
|
|
"start": 4086,
|
|
"end": 4109,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": null,
|
|
"typeParam": {
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 4089,
|
|
"end": 4101,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4089,
|
|
"end": 4090,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsTypeOperator",
|
|
"span": {
|
|
"start": 4094,
|
|
"end": 4101,
|
|
"ctxt": 0
|
|
},
|
|
"op": "keyof",
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 4100,
|
|
"end": 4101,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4100,
|
|
"end": 4101,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
},
|
|
"default": null
|
|
},
|
|
"nameType": null,
|
|
"optional": null,
|
|
"typeAnnotation": {
|
|
"type": "TsTupleType",
|
|
"span": {
|
|
"start": 4104,
|
|
"end": 4107,
|
|
"ctxt": 0
|
|
},
|
|
"elemTypes": [
|
|
{
|
|
"type": "TsTupleElement",
|
|
"span": {
|
|
"start": 4105,
|
|
"end": 4106,
|
|
"ctxt": 0
|
|
},
|
|
"label": null,
|
|
"ty": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 4105,
|
|
"end": 4106,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4105,
|
|
"end": 4106,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"indexType": {
|
|
"type": "TsTypeOperator",
|
|
"span": {
|
|
"start": 4110,
|
|
"end": 4117,
|
|
"ctxt": 0
|
|
},
|
|
"op": "keyof",
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 4116,
|
|
"end": 4117,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4116,
|
|
"end": 4117,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"readonly": false,
|
|
"static": false,
|
|
"span": {
|
|
"start": 4071,
|
|
"end": 4118,
|
|
"ctxt": 0
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "TsTypeAliasDeclaration",
|
|
"span": {
|
|
"start": 4123,
|
|
"end": 4183,
|
|
"ctxt": 0
|
|
},
|
|
"declare": false,
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4128,
|
|
"end": 4131,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Baz",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterDeclaration",
|
|
"span": {
|
|
"start": 4131,
|
|
"end": 4152,
|
|
"ctxt": 0
|
|
},
|
|
"parameters": [
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 4132,
|
|
"end": 4133,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4132,
|
|
"end": 4133,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"constraint": null,
|
|
"default": null
|
|
},
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 4135,
|
|
"end": 4151,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4135,
|
|
"end": 4136,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Q",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 4145,
|
|
"end": 4151,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4145,
|
|
"end": 4148,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Foo",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterInstantiation",
|
|
"span": {
|
|
"start": 4148,
|
|
"end": 4151,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 4149,
|
|
"end": 4150,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4149,
|
|
"end": 4150,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"default": null
|
|
}
|
|
]
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsMappedType",
|
|
"span": {
|
|
"start": 4155,
|
|
"end": 4182,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": null,
|
|
"typeParam": {
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 4158,
|
|
"end": 4170,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4158,
|
|
"end": 4159,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsTypeOperator",
|
|
"span": {
|
|
"start": 4163,
|
|
"end": 4170,
|
|
"ctxt": 0
|
|
},
|
|
"op": "keyof",
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 4169,
|
|
"end": 4170,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4169,
|
|
"end": 4170,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Q",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
},
|
|
"default": null
|
|
},
|
|
"nameType": null,
|
|
"optional": null,
|
|
"typeAnnotation": {
|
|
"type": "TsIndexedAccessType",
|
|
"span": {
|
|
"start": 4173,
|
|
"end": 4180,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"objectType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 4173,
|
|
"end": 4174,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4173,
|
|
"end": 4174,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
"indexType": {
|
|
"type": "TsIndexedAccessType",
|
|
"span": {
|
|
"start": 4175,
|
|
"end": 4179,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"objectType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 4175,
|
|
"end": 4176,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4175,
|
|
"end": 4176,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Q",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
"indexType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 4177,
|
|
"end": 4178,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4177,
|
|
"end": 4178,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "TsTypeAliasDeclaration",
|
|
"span": {
|
|
"start": 4185,
|
|
"end": 4250,
|
|
"ctxt": 0
|
|
},
|
|
"declare": false,
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4190,
|
|
"end": 4193,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Qux",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterDeclaration",
|
|
"span": {
|
|
"start": 4193,
|
|
"end": 4214,
|
|
"ctxt": 0
|
|
},
|
|
"parameters": [
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 4194,
|
|
"end": 4195,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4194,
|
|
"end": 4195,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"constraint": null,
|
|
"default": null
|
|
},
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 4197,
|
|
"end": 4213,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4197,
|
|
"end": 4198,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Q",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 4207,
|
|
"end": 4213,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4207,
|
|
"end": 4210,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Bar",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterInstantiation",
|
|
"span": {
|
|
"start": 4210,
|
|
"end": 4213,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 4211,
|
|
"end": 4212,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4211,
|
|
"end": 4212,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"default": null
|
|
}
|
|
]
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsMappedType",
|
|
"span": {
|
|
"start": 4217,
|
|
"end": 4249,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": null,
|
|
"typeParam": {
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 4220,
|
|
"end": 4232,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4220,
|
|
"end": 4221,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"constraint": {
|
|
"type": "TsTypeOperator",
|
|
"span": {
|
|
"start": 4225,
|
|
"end": 4232,
|
|
"ctxt": 0
|
|
},
|
|
"op": "keyof",
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 4231,
|
|
"end": 4232,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4231,
|
|
"end": 4232,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Q",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
},
|
|
"default": null
|
|
},
|
|
"nameType": null,
|
|
"optional": null,
|
|
"typeAnnotation": {
|
|
"type": "TsIndexedAccessType",
|
|
"span": {
|
|
"start": 4235,
|
|
"end": 4247,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"objectType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 4235,
|
|
"end": 4236,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4235,
|
|
"end": 4236,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
"indexType": {
|
|
"type": "TsIndexedAccessType",
|
|
"span": {
|
|
"start": 4237,
|
|
"end": 4246,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"objectType": {
|
|
"type": "TsIndexedAccessType",
|
|
"span": {
|
|
"start": 4237,
|
|
"end": 4241,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"objectType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 4237,
|
|
"end": 4238,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4237,
|
|
"end": 4238,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Q",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
"indexType": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 4239,
|
|
"end": 4240,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4239,
|
|
"end": 4240,
|
|
"ctxt": 0
|
|
},
|
|
"value": "K",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
},
|
|
"indexType": {
|
|
"type": "TsLiteralType",
|
|
"span": {
|
|
"start": 4242,
|
|
"end": 4245,
|
|
"ctxt": 0
|
|
},
|
|
"literal": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 4242,
|
|
"end": 4245,
|
|
"ctxt": 0
|
|
},
|
|
"value": "0",
|
|
"raw": "\"0\""
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "VariableDeclaration",
|
|
"span": {
|
|
"start": 4274,
|
|
"end": 4324,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "const",
|
|
"declare": false,
|
|
"declarations": [
|
|
{
|
|
"type": "VariableDeclarator",
|
|
"span": {
|
|
"start": 4280,
|
|
"end": 4323,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4280,
|
|
"end": 4287,
|
|
"ctxt": 0
|
|
},
|
|
"value": "actions",
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
},
|
|
"init": {
|
|
"type": "TsConstAssertion",
|
|
"span": {
|
|
"start": 4290,
|
|
"end": 4323,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "ArrayExpression",
|
|
"span": {
|
|
"start": 4290,
|
|
"end": 4314,
|
|
"ctxt": 0
|
|
},
|
|
"elements": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 4291,
|
|
"end": 4301,
|
|
"ctxt": 0
|
|
},
|
|
"value": "resizeTo",
|
|
"raw": "'resizeTo'"
|
|
}
|
|
},
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 4303,
|
|
"end": 4313,
|
|
"ctxt": 0
|
|
},
|
|
"value": "resizeBy",
|
|
"raw": "'resizeBy'"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"definite": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "ForOfStatement",
|
|
"span": {
|
|
"start": 4325,
|
|
"end": 4415,
|
|
"ctxt": 0
|
|
},
|
|
"await": null,
|
|
"left": {
|
|
"type": "VariableDeclaration",
|
|
"span": {
|
|
"start": 4330,
|
|
"end": 4342,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "const",
|
|
"declare": false,
|
|
"declarations": [
|
|
{
|
|
"type": "VariableDeclarator",
|
|
"span": {
|
|
"start": 4336,
|
|
"end": 4342,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4336,
|
|
"end": 4342,
|
|
"ctxt": 0
|
|
},
|
|
"value": "action",
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
},
|
|
"init": null,
|
|
"definite": false
|
|
}
|
|
]
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4346,
|
|
"end": 4353,
|
|
"ctxt": 0
|
|
},
|
|
"value": "actions",
|
|
"optional": false
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 4355,
|
|
"end": 4415,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 4358,
|
|
"end": 4413,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 4358,
|
|
"end": 4413,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4358,
|
|
"end": 4372,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4358,
|
|
"end": 4364,
|
|
"ctxt": 0
|
|
},
|
|
"value": "window",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 4364,
|
|
"end": 4372,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4365,
|
|
"end": 4371,
|
|
"ctxt": 0
|
|
},
|
|
"value": "action",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "ArrowFunctionExpression",
|
|
"span": {
|
|
"start": 4375,
|
|
"end": 4413,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4376,
|
|
"end": 4377,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
},
|
|
{
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4379,
|
|
"end": 4380,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
}
|
|
],
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 4385,
|
|
"end": 4413,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 4389,
|
|
"end": 4410,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 4389,
|
|
"end": 4409,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4389,
|
|
"end": 4403,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4389,
|
|
"end": 4395,
|
|
"ctxt": 0
|
|
},
|
|
"value": "window",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 4395,
|
|
"end": 4403,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4396,
|
|
"end": 4402,
|
|
"ctxt": 0
|
|
},
|
|
"value": "action",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4404,
|
|
"end": 4405,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4407,
|
|
"end": 4408,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"async": false,
|
|
"generator": false,
|
|
"typeParameters": null,
|
|
"returnType": null
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
],
|
|
"interpreter": null
|
|
}
|