{ "type": "Module", "span": { "start": 285, "end": 2096, "ctxt": 0 }, "body": [ { "type": "ExportDeclaration", "span": { "start": 285, "end": 306, "ctxt": 0 }, "declaration": { "type": "TsInterfaceDeclaration", "span": { "start": 292, "end": 306, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 302, "end": 303, "ctxt": 0 }, "value": "A", "optional": false }, "declare": false, "typeParams": null, "extends": [], "body": { "type": "TsInterfaceBody", "span": { "start": 304, "end": 306, "ctxt": 0 }, "body": [] } } }, { "type": "ExportDeclaration", "span": { "start": 308, "end": 347, "ctxt": 0 }, "declaration": { "type": "TsInterfaceDeclaration", "span": { "start": 315, "end": 347, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 325, "end": 326, "ctxt": 0 }, "value": "B", "optional": false }, "declare": false, "typeParams": null, "extends": [], "body": { "type": "TsInterfaceBody", "span": { "start": 327, "end": 347, "ctxt": 0 }, "body": [ { "type": "TsPropertySignature", "span": { "start": 333, "end": 345, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 333, "end": 336, "ctxt": 0 }, "value": "cat", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 336, "end": 344, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 338, "end": 344, "ctxt": 0 }, "kind": "string" } }, "typeParams": null } ] } } }, { "type": "ExportDeclaration", "span": { "start": 349, "end": 779, "ctxt": 0 }, "declaration": { "type": "TsInterfaceDeclaration", "span": { "start": 356, "end": 779, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 366, "end": 367, "ctxt": 0 }, "value": "C", "optional": false }, "declare": false, "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 367, "end": 373, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 368, "end": 369, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 368, "end": 369, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": null, "default": null }, { "type": "TsTypeParameter", "span": { "start": 371, "end": 372, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 371, "end": 372, "ctxt": 0 }, "value": "U", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "extends": [], "body": { "type": "TsInterfaceBody", "span": { "start": 374, "end": 779, "ctxt": 0 }, "body": [ { "type": "TsPropertySignature", "span": { "start": 380, "end": 393, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 380, "end": 385, "ctxt": 0 }, "value": "field", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 385, "end": 392, "ctxt": 0 }, "typeAnnotation": { "type": "TsIntersectionType", "span": { "start": 387, "end": 392, "ctxt": 0 }, "types": [ { "type": "TsTypeReference", "span": { "start": 387, "end": 388, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 387, "end": 388, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null }, { "type": "TsTypeReference", "span": { "start": 391, "end": 392, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 391, "end": 392, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } ] } }, "typeParams": null }, { "type": "TsPropertySignature", "span": { "start": 398, "end": 416, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 398, "end": 411, "ctxt": 0 }, "value": "optionalField", "optional": false }, "computed": false, "optional": true, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 412, "end": 415, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 414, "end": 415, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 414, "end": 415, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } }, "typeParams": null }, { "type": "TsPropertySignature", "span": { "start": 421, "end": 451, "ctxt": 0 }, "readonly": true, "key": { "type": "Identifier", "span": { "start": 430, "end": 443, "ctxt": 0 }, "value": "readonlyField", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 443, "end": 450, "ctxt": 0 }, "typeAnnotation": { "type": "TsIntersectionType", "span": { "start": 445, "end": 450, "ctxt": 0 }, "types": [ { "type": "TsTypeReference", "span": { "start": 445, "end": 446, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 445, "end": 446, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null }, { "type": "TsTypeReference", "span": { "start": 449, "end": 450, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 449, "end": 450, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } ] } }, "typeParams": null }, { "type": "TsPropertySignature", "span": { "start": 456, "end": 491, "ctxt": 0 }, "readonly": true, "key": { "type": "Identifier", "span": { "start": 465, "end": 486, "ctxt": 0 }, "value": "readonlyOptionalField", "optional": false }, "computed": false, "optional": true, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 487, "end": 490, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 489, "end": 490, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 489, "end": 490, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } }, "typeParams": null }, { "type": "TsCallSignatureDeclaration", "span": { "start": 496, "end": 507, "ctxt": 0 }, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 498, "end": 506, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 500, "end": 506, "ctxt": 0 }, "kind": "number" } }, "typeParams": null }, { "type": "TsCallSignatureDeclaration", "span": { "start": 512, "end": 522, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 513, "end": 517, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 514, "end": 517, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 516, "end": 517, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 516, "end": 517, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 518, "end": 521, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 520, "end": 521, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 520, "end": 521, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } }, "typeParams": null }, { "type": "TsCallSignatureDeclaration", "span": { "start": 527, "end": 544, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 531, "end": 535, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 532, "end": 535, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 534, "end": 535, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 534, "end": 535, "ctxt": 0 }, "value": "Q", "optional": false }, "typeParams": null } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 536, "end": 543, "ctxt": 0 }, "typeAnnotation": { "type": "TsIntersectionType", "span": { "start": 538, "end": 543, "ctxt": 0 }, "types": [ { "type": "TsTypeReference", "span": { "start": 538, "end": 539, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 538, "end": 539, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null }, { "type": "TsTypeReference", "span": { "start": 542, "end": 543, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 542, "end": 543, "ctxt": 0 }, "value": "Q", "optional": false }, "typeParams": null } ] } }, "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 527, "end": 530, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 528, "end": 529, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 528, "end": 529, "ctxt": 0 }, "value": "Q", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] } }, { "type": "TsConstructSignatureDeclaration", "span": { "start": 550, "end": 565, "ctxt": 0 }, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 556, "end": 564, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 558, "end": 564, "ctxt": 0 }, "kind": "string" } }, "typeParams": null }, { "type": "TsConstructSignatureDeclaration", "span": { "start": 570, "end": 584, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 575, "end": 579, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 576, "end": 579, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 578, "end": 579, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 578, "end": 579, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 580, "end": 583, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 582, "end": 583, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 582, "end": 583, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } }, "typeParams": null }, { "type": "TsConstructSignatureDeclaration", "span": { "start": 589, "end": 610, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 597, "end": 601, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 598, "end": 601, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 600, "end": 601, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 600, "end": 601, "ctxt": 0 }, "value": "Q", "optional": false }, "typeParams": null } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 602, "end": 609, "ctxt": 0 }, "typeAnnotation": { "type": "TsIntersectionType", "span": { "start": 604, "end": 609, "ctxt": 0 }, "types": [ { "type": "TsTypeReference", "span": { "start": 604, "end": 605, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 604, "end": 605, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null }, { "type": "TsTypeReference", "span": { "start": 608, "end": 609, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 608, "end": 609, "ctxt": 0 }, "value": "Q", "optional": false }, "typeParams": null } ] } }, "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 593, "end": 596, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 594, "end": 595, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 594, "end": 595, "ctxt": 0 }, "value": "Q", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] } }, { "type": "TsMethodSignature", "span": { "start": 616, "end": 645, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 616, "end": 622, "ctxt": 0 }, "value": "method", "optional": false }, "computed": false, "optional": false, "params": [], "typeAnn": { "type": "TsTypeAnnotation", "span": { "start": 636, "end": 644, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 638, "end": 644, "ctxt": 0 }, "kind": "number" } }, "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 622, "end": 634, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 623, "end": 633, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 623, "end": 624, "ctxt": 0 }, "value": "Q", "optional": false }, "in": false, "out": false, "constraint": null, "default": { "type": "TsKeywordType", "span": { "start": 627, "end": 633, "ctxt": 0 }, "kind": "number" } } ] } }, { "type": "TsMethodSignature", "span": { "start": 650, "end": 682, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 650, "end": 656, "ctxt": 0 }, "value": "method", "optional": false }, "computed": false, "optional": false, "params": [ { "type": "Identifier", "span": { "start": 660, "end": 668, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 661, "end": 668, "ctxt": 0 }, "typeAnnotation": { "type": "TsIntersectionType", "span": { "start": 663, "end": 668, "ctxt": 0 }, "types": [ { "type": "TsTypeReference", "span": { "start": 663, "end": 664, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 663, "end": 664, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null }, { "type": "TsTypeReference", "span": { "start": 667, "end": 668, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 667, "end": 668, "ctxt": 0 }, "value": "Q", "optional": false }, "typeParams": null } ] } } } ], "typeAnn": { "type": "TsTypeAnnotation", "span": { "start": 669, "end": 681, "ctxt": 0 }, "typeAnnotation": { "type": "TsIntersectionType", "span": { "start": 671, "end": 681, "ctxt": 0 }, "types": [ { "type": "TsTypeReference", "span": { "start": 671, "end": 672, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 671, "end": 672, "ctxt": 0 }, "value": "Q", "optional": false }, "typeParams": null }, { "type": "TsKeywordType", "span": { "start": 675, "end": 681, "ctxt": 0 }, "kind": "number" } ] } }, "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 656, "end": 659, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 657, "end": 658, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 657, "end": 658, "ctxt": 0 }, "value": "Q", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] } }, { "type": "TsMethodSignature", "span": { "start": 687, "end": 714, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 687, "end": 693, "ctxt": 0 }, "value": "method", "optional": false }, "computed": false, "optional": false, "params": [ { "type": "Identifier", "span": { "start": 694, "end": 704, "ctxt": 0 }, "value": "a", "optional": true, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 696, "end": 704, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 698, "end": 704, "ctxt": 0 }, "kind": "number" } } } ], "typeAnn": { "type": "TsTypeAnnotation", "span": { "start": 705, "end": 713, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 707, "end": 713, "ctxt": 0 }, "kind": "number" } }, "typeParams": null }, { "type": "TsMethodSignature", "span": { "start": 719, "end": 750, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 719, "end": 725, "ctxt": 0 }, "value": "method", "optional": false }, "computed": false, "optional": false, "params": [ { "type": "RestElement", "span": { "start": 726, "end": 740, "ctxt": 0 }, "rest": { "start": 726, "end": 729, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 729, "end": 733, "ctxt": 0 }, "value": "args", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 733, "end": 740, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 735, "end": 740, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 735, "end": 738, "ctxt": 0 }, "kind": "any" } } } } ], "typeAnn": { "type": "TsTypeAnnotation", "span": { "start": 741, "end": 749, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 743, "end": 749, "ctxt": 0 }, "kind": "number" } }, "typeParams": null }, { "type": "TsMethodSignature", "span": { "start": 756, "end": 777, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 756, "end": 765, "ctxt": 0 }, "value": "optMethod", "optional": false }, "computed": false, "optional": true, "params": [], "typeAnn": { "type": "TsTypeAnnotation", "span": { "start": 768, "end": 776, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 770, "end": 776, "ctxt": 0 }, "kind": "number" } }, "typeParams": null } ] } } }, { "type": "TsInterfaceDeclaration", "span": { "start": 781, "end": 795, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 791, "end": 792, "ctxt": 0 }, "value": "G", "optional": false }, "declare": false, "typeParams": null, "extends": [], "body": { "type": "TsInterfaceBody", "span": { "start": 793, "end": 795, "ctxt": 0 }, "body": [] } }, { "type": "ExportNamedDeclaration", "span": { "start": 797, "end": 810, "ctxt": 0 }, "specifiers": [ { "type": "ExportSpecifier", "span": { "start": 806, "end": 807, "ctxt": 0 }, "orig": { "type": "Identifier", "span": { "start": 806, "end": 807, "ctxt": 0 }, "value": "G", "optional": false }, "exported": null, "isTypeOnly": false } ], "source": null, "typeOnly": false, "asserts": null }, { "type": "TsInterfaceDeclaration", "span": { "start": 812, "end": 827, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 822, "end": 824, "ctxt": 0 }, "value": "HH", "optional": false }, "declare": false, "typeParams": null, "extends": [], "body": { "type": "TsInterfaceBody", "span": { "start": 825, "end": 827, "ctxt": 0 }, "body": [] } }, { "type": "ExportNamedDeclaration", "span": { "start": 829, "end": 848, "ctxt": 0 }, "specifiers": [ { "type": "ExportSpecifier", "span": { "start": 838, "end": 845, "ctxt": 0 }, "orig": { "type": "Identifier", "span": { "start": 838, "end": 840, "ctxt": 0 }, "value": "HH", "optional": false }, "exported": { "type": "Identifier", "span": { "start": 844, "end": 845, "ctxt": 0 }, "value": "H", "optional": false }, "isTypeOnly": false } ], "source": null, "typeOnly": false, "asserts": null }, { "type": "ExportDeclaration", "span": { "start": 850, "end": 871, "ctxt": 0 }, "declaration": { "type": "TsInterfaceDeclaration", "span": { "start": 857, "end": 871, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 867, "end": 868, "ctxt": 0 }, "value": "I", "optional": false }, "declare": false, "typeParams": null, "extends": [], "body": { "type": "TsInterfaceBody", "span": { "start": 869, "end": 871, "ctxt": 0 }, "body": [] } } }, { "type": "ExportNamedDeclaration", "span": { "start": 872, "end": 891, "ctxt": 0 }, "specifiers": [ { "type": "ExportSpecifier", "span": { "start": 881, "end": 888, "ctxt": 0 }, "orig": { "type": "Identifier", "span": { "start": 881, "end": 882, "ctxt": 0 }, "value": "I", "optional": false }, "exported": { "type": "Identifier", "span": { "start": 886, "end": 888, "ctxt": 0 }, "value": "II", "optional": false }, "isTypeOnly": false } ], "source": null, "typeOnly": false, "asserts": null }, { "type": "ExportNamedDeclaration", "span": { "start": 893, "end": 912, "ctxt": 0 }, "specifiers": [ { "type": "ExportSpecifier", "span": { "start": 902, "end": 909, "ctxt": 0 }, "orig": { "type": "Identifier", "span": { "start": 902, "end": 903, "ctxt": 0 }, "value": "J", "optional": false }, "exported": { "type": "Identifier", "span": { "start": 907, "end": 909, "ctxt": 0 }, "value": "JJ", "optional": false }, "isTypeOnly": false } ], "source": null, "typeOnly": false, "asserts": null }, { "type": "ExportDeclaration", "span": { "start": 913, "end": 934, "ctxt": 0 }, "declaration": { "type": "TsInterfaceDeclaration", "span": { "start": 920, "end": 934, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 930, "end": 931, "ctxt": 0 }, "value": "J", "optional": false }, "declare": false, "typeParams": null, "extends": [], "body": { "type": "TsInterfaceBody", "span": { "start": 932, "end": 934, "ctxt": 0 }, "body": [] } } }, { "type": "ExportDeclaration", "span": { "start": 936, "end": 985, "ctxt": 0 }, "declaration": { "type": "TsInterfaceDeclaration", "span": { "start": 943, "end": 985, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 953, "end": 954, "ctxt": 0 }, "value": "K", "optional": false }, "declare": false, "typeParams": null, "extends": [ { "type": "TsExpressionWithTypeArguments", "span": { "start": 963, "end": 964, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 963, "end": 964, "ctxt": 0 }, "value": "I", "optional": false }, "typeArguments": null }, { "type": "TsExpressionWithTypeArguments", "span": { "start": 965, "end": 966, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 965, "end": 966, "ctxt": 0 }, "value": "J", "optional": false }, "typeArguments": null } ], "body": { "type": "TsInterfaceBody", "span": { "start": 967, "end": 985, "ctxt": 0 }, "body": [ { "type": "TsPropertySignature", "span": { "start": 973, "end": 983, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 973, "end": 974, "ctxt": 0 }, "value": "x", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 974, "end": 982, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 976, "end": 982, "ctxt": 0 }, "kind": "string" } }, "typeParams": null } ] } } }, { "type": "ExportDeclaration", "span": { "start": 987, "end": 1034, "ctxt": 0 }, "declaration": { "type": "TsInterfaceDeclaration", "span": { "start": 994, "end": 1034, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1004, "end": 1005, "ctxt": 0 }, "value": "L", "optional": false }, "declare": false, "typeParams": null, "extends": [ { "type": "TsExpressionWithTypeArguments", "span": { "start": 1014, "end": 1015, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 1014, "end": 1015, "ctxt": 0 }, "value": "K", "optional": false }, "typeArguments": null } ], "body": { "type": "TsInterfaceBody", "span": { "start": 1016, "end": 1034, "ctxt": 0 }, "body": [ { "type": "TsPropertySignature", "span": { "start": 1022, "end": 1032, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 1022, "end": 1023, "ctxt": 0 }, "value": "y", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1023, "end": 1031, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1025, "end": 1031, "ctxt": 0 }, "kind": "string" } }, "typeParams": null } ] } } }, { "type": "ExportDeclaration", "span": { "start": 1036, "end": 1075, "ctxt": 0 }, "declaration": { "type": "TsInterfaceDeclaration", "span": { "start": 1043, "end": 1075, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1053, "end": 1054, "ctxt": 0 }, "value": "M", "optional": false }, "declare": false, "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 1054, "end": 1057, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 1055, "end": 1056, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 1055, "end": 1056, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "extends": [], "body": { "type": "TsInterfaceBody", "span": { "start": 1058, "end": 1075, "ctxt": 0 }, "body": [ { "type": "TsPropertySignature", "span": { "start": 1064, "end": 1073, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 1064, "end": 1069, "ctxt": 0 }, "value": "field", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1069, "end": 1072, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1071, "end": 1072, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1071, "end": 1072, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } }, "typeParams": null } ] } } }, { "type": "ExportDeclaration", "span": { "start": 1077, "end": 1129, "ctxt": 0 }, "declaration": { "type": "TsInterfaceDeclaration", "span": { "start": 1084, "end": 1129, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1094, "end": 1095, "ctxt": 0 }, "value": "N", "optional": false }, "declare": false, "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 1095, "end": 1098, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 1096, "end": 1097, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 1096, "end": 1097, "ctxt": 0 }, "value": "U", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "extends": [ { "type": "TsExpressionWithTypeArguments", "span": { "start": 1107, "end": 1111, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 1107, "end": 1108, "ctxt": 0 }, "value": "M", "optional": false }, "typeArguments": { "type": "TsTypeParameterInstantiation", "span": { "start": 1108, "end": 1111, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 1109, "end": 1110, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1109, "end": 1110, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } ] } } ], "body": { "type": "TsInterfaceBody", "span": { "start": 1112, "end": 1129, "ctxt": 0 }, "body": [ { "type": "TsPropertySignature", "span": { "start": 1118, "end": 1127, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 1118, "end": 1123, "ctxt": 0 }, "value": "other", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1123, "end": 1126, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1125, "end": 1126, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1125, "end": 1126, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } }, "typeParams": null } ] } } }, { "type": "ExportDeclaration", "span": { "start": 1131, "end": 1180, "ctxt": 0 }, "declaration": { "type": "TsInterfaceDeclaration", "span": { "start": 1138, "end": 1180, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1148, "end": 1149, "ctxt": 0 }, "value": "O", "optional": false }, "declare": false, "typeParams": null, "extends": [], "body": { "type": "TsInterfaceBody", "span": { "start": 1150, "end": 1180, "ctxt": 0 }, "body": [ { "type": "TsIndexSignature", "params": [ { "type": "Identifier", "span": { "start": 1157, "end": 1168, "ctxt": 0 }, "value": "idx", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1160, "end": 1168, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1162, "end": 1168, "ctxt": 0 }, "kind": "string" } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1169, "end": 1177, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1171, "end": 1177, "ctxt": 0 }, "kind": "string" } }, "readonly": false, "static": false, "span": { "start": 1156, "end": 1178, "ctxt": 0 } } ] } } }, { "type": "ExportDeclaration", "span": { "start": 1182, "end": 1213, "ctxt": 0 }, "declaration": { "type": "TsInterfaceDeclaration", "span": { "start": 1189, "end": 1213, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1199, "end": 1200, "ctxt": 0 }, "value": "P", "optional": false }, "declare": false, "typeParams": null, "extends": [ { "type": "TsExpressionWithTypeArguments", "span": { "start": 1209, "end": 1210, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 1209, "end": 1210, "ctxt": 0 }, "value": "O", "optional": false }, "typeArguments": null } ], "body": { "type": "TsInterfaceBody", "span": { "start": 1211, "end": 1213, "ctxt": 0 }, "body": [] } } }, { "type": "ExportDeclaration", "span": { "start": 1215, "end": 1272, "ctxt": 0 }, "declaration": { "type": "TsInterfaceDeclaration", "span": { "start": 1222, "end": 1272, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1232, "end": 1233, "ctxt": 0 }, "value": "Q", "optional": false }, "declare": false, "typeParams": null, "extends": [ { "type": "TsExpressionWithTypeArguments", "span": { "start": 1242, "end": 1243, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 1242, "end": 1243, "ctxt": 0 }, "value": "O", "optional": false }, "typeArguments": null } ], "body": { "type": "TsInterfaceBody", "span": { "start": 1244, "end": 1272, "ctxt": 0 }, "body": [ { "type": "TsIndexSignature", "params": [ { "type": "Identifier", "span": { "start": 1251, "end": 1262, "ctxt": 0 }, "value": "idx", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1254, "end": 1262, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1256, "end": 1262, "ctxt": 0 }, "kind": "string" } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1263, "end": 1269, "ctxt": 0 }, "typeAnnotation": { "type": "TsLiteralType", "span": { "start": 1265, "end": 1269, "ctxt": 0 }, "literal": { "type": "StringLiteral", "span": { "start": 1265, "end": 1269, "ctxt": 0 }, "value": "ok", "raw": "\"ok\"" } } }, "readonly": false, "static": false, "span": { "start": 1250, "end": 1270, "ctxt": 0 } } ] } } }, { "type": "ExportDeclaration", "span": { "start": 1274, "end": 1331, "ctxt": 0 }, "declaration": { "type": "TsInterfaceDeclaration", "span": { "start": 1281, "end": 1331, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1291, "end": 1292, "ctxt": 0 }, "value": "R", "optional": false }, "declare": false, "typeParams": null, "extends": [ { "type": "TsExpressionWithTypeArguments", "span": { "start": 1301, "end": 1302, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 1301, "end": 1302, "ctxt": 0 }, "value": "O", "optional": false }, "typeArguments": null } ], "body": { "type": "TsInterfaceBody", "span": { "start": 1303, "end": 1331, "ctxt": 0 }, "body": [ { "type": "TsIndexSignature", "params": [ { "type": "Identifier", "span": { "start": 1310, "end": 1321, "ctxt": 0 }, "value": "idx", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1313, "end": 1321, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1315, "end": 1321, "ctxt": 0 }, "kind": "number" } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1322, "end": 1328, "ctxt": 0 }, "typeAnnotation": { "type": "TsLiteralType", "span": { "start": 1324, "end": 1328, "ctxt": 0 }, "literal": { "type": "StringLiteral", "span": { "start": 1324, "end": 1328, "ctxt": 0 }, "value": "ok", "raw": "\"ok\"" } } }, "readonly": false, "static": false, "span": { "start": 1309, "end": 1329, "ctxt": 0 } } ] } } }, { "type": "ExportDeclaration", "span": { "start": 1333, "end": 1416, "ctxt": 0 }, "declaration": { "type": "TsInterfaceDeclaration", "span": { "start": 1340, "end": 1416, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1350, "end": 1351, "ctxt": 0 }, "value": "S", "optional": false }, "declare": false, "typeParams": null, "extends": [ { "type": "TsExpressionWithTypeArguments", "span": { "start": 1360, "end": 1361, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 1360, "end": 1361, "ctxt": 0 }, "value": "O", "optional": false }, "typeArguments": null } ], "body": { "type": "TsInterfaceBody", "span": { "start": 1362, "end": 1416, "ctxt": 0 }, "body": [ { "type": "TsIndexSignature", "params": [ { "type": "Identifier", "span": { "start": 1369, "end": 1380, "ctxt": 0 }, "value": "idx", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1372, "end": 1380, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1374, "end": 1380, "ctxt": 0 }, "kind": "string" } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1381, "end": 1387, "ctxt": 0 }, "typeAnnotation": { "type": "TsLiteralType", "span": { "start": 1383, "end": 1387, "ctxt": 0 }, "literal": { "type": "StringLiteral", "span": { "start": 1383, "end": 1387, "ctxt": 0 }, "value": "ok", "raw": "\"ok\"" } } }, "readonly": false, "static": false, "span": { "start": 1368, "end": 1388, "ctxt": 0 } }, { "type": "TsIndexSignature", "params": [ { "type": "Identifier", "span": { "start": 1394, "end": 1405, "ctxt": 0 }, "value": "idx", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1397, "end": 1405, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1399, "end": 1405, "ctxt": 0 }, "kind": "number" } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1406, "end": 1413, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1408, "end": 1413, "ctxt": 0 }, "kind": "never" } }, "readonly": false, "static": false, "span": { "start": 1393, "end": 1414, "ctxt": 0 } } ] } } }, { "type": "ExportDeclaration", "span": { "start": 1418, "end": 1467, "ctxt": 0 }, "declaration": { "type": "TsInterfaceDeclaration", "span": { "start": 1425, "end": 1467, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1435, "end": 1436, "ctxt": 0 }, "value": "T", "optional": false }, "declare": false, "typeParams": null, "extends": [], "body": { "type": "TsInterfaceBody", "span": { "start": 1437, "end": 1467, "ctxt": 0 }, "body": [ { "type": "TsIndexSignature", "params": [ { "type": "Identifier", "span": { "start": 1444, "end": 1455, "ctxt": 0 }, "value": "idx", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1447, "end": 1455, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1449, "end": 1455, "ctxt": 0 }, "kind": "number" } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1456, "end": 1464, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1458, "end": 1464, "ctxt": 0 }, "kind": "string" } }, "readonly": false, "static": false, "span": { "start": 1443, "end": 1465, "ctxt": 0 } } ] } } }, { "type": "ExportDeclaration", "span": { "start": 1469, "end": 1500, "ctxt": 0 }, "declaration": { "type": "TsInterfaceDeclaration", "span": { "start": 1476, "end": 1500, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1486, "end": 1487, "ctxt": 0 }, "value": "U", "optional": false }, "declare": false, "typeParams": null, "extends": [ { "type": "TsExpressionWithTypeArguments", "span": { "start": 1496, "end": 1497, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 1496, "end": 1497, "ctxt": 0 }, "value": "T", "optional": false }, "typeArguments": null } ], "body": { "type": "TsInterfaceBody", "span": { "start": 1498, "end": 1500, "ctxt": 0 }, "body": [] } } }, { "type": "ExportDeclaration", "span": { "start": 1503, "end": 1562, "ctxt": 0 }, "declaration": { "type": "TsInterfaceDeclaration", "span": { "start": 1510, "end": 1562, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1520, "end": 1521, "ctxt": 0 }, "value": "V", "optional": false }, "declare": false, "typeParams": null, "extends": [ { "type": "TsExpressionWithTypeArguments", "span": { "start": 1530, "end": 1531, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 1530, "end": 1531, "ctxt": 0 }, "value": "T", "optional": false }, "typeArguments": null } ], "body": { "type": "TsInterfaceBody", "span": { "start": 1532, "end": 1562, "ctxt": 0 }, "body": [ { "type": "TsIndexSignature", "params": [ { "type": "Identifier", "span": { "start": 1539, "end": 1550, "ctxt": 0 }, "value": "idx", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1542, "end": 1550, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1544, "end": 1550, "ctxt": 0 }, "kind": "string" } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1551, "end": 1559, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1553, "end": 1559, "ctxt": 0 }, "kind": "string" } }, "readonly": false, "static": false, "span": { "start": 1538, "end": 1560, "ctxt": 0 } } ] } } }, { "type": "ExportDeclaration", "span": { "start": 1564, "end": 1621, "ctxt": 0 }, "declaration": { "type": "TsInterfaceDeclaration", "span": { "start": 1571, "end": 1621, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1581, "end": 1582, "ctxt": 0 }, "value": "W", "optional": false }, "declare": false, "typeParams": null, "extends": [ { "type": "TsExpressionWithTypeArguments", "span": { "start": 1591, "end": 1592, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 1591, "end": 1592, "ctxt": 0 }, "value": "T", "optional": false }, "typeArguments": null } ], "body": { "type": "TsInterfaceBody", "span": { "start": 1593, "end": 1621, "ctxt": 0 }, "body": [ { "type": "TsIndexSignature", "params": [ { "type": "Identifier", "span": { "start": 1600, "end": 1611, "ctxt": 0 }, "value": "idx", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1603, "end": 1611, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1605, "end": 1611, "ctxt": 0 }, "kind": "number" } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1612, "end": 1618, "ctxt": 0 }, "typeAnnotation": { "type": "TsLiteralType", "span": { "start": 1614, "end": 1618, "ctxt": 0 }, "literal": { "type": "StringLiteral", "span": { "start": 1614, "end": 1618, "ctxt": 0 }, "value": "ok", "raw": "\"ok\"" } } }, "readonly": false, "static": false, "span": { "start": 1599, "end": 1619, "ctxt": 0 } } ] } } }, { "type": "ExportDeclaration", "span": { "start": 1623, "end": 1707, "ctxt": 0 }, "declaration": { "type": "TsInterfaceDeclaration", "span": { "start": 1630, "end": 1707, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1640, "end": 1641, "ctxt": 0 }, "value": "X", "optional": false }, "declare": false, "typeParams": null, "extends": [ { "type": "TsExpressionWithTypeArguments", "span": { "start": 1650, "end": 1651, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 1650, "end": 1651, "ctxt": 0 }, "value": "T", "optional": false }, "typeArguments": null } ], "body": { "type": "TsInterfaceBody", "span": { "start": 1652, "end": 1707, "ctxt": 0 }, "body": [ { "type": "TsIndexSignature", "params": [ { "type": "Identifier", "span": { "start": 1659, "end": 1670, "ctxt": 0 }, "value": "idx", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1662, "end": 1670, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1664, "end": 1670, "ctxt": 0 }, "kind": "string" } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1671, "end": 1679, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1673, "end": 1679, "ctxt": 0 }, "kind": "string" } }, "readonly": false, "static": false, "span": { "start": 1658, "end": 1680, "ctxt": 0 } }, { "type": "TsIndexSignature", "params": [ { "type": "Identifier", "span": { "start": 1686, "end": 1697, "ctxt": 0 }, "value": "idx", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1689, "end": 1697, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1691, "end": 1697, "ctxt": 0 }, "kind": "number" } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1698, "end": 1704, "ctxt": 0 }, "typeAnnotation": { "type": "TsLiteralType", "span": { "start": 1700, "end": 1704, "ctxt": 0 }, "literal": { "type": "StringLiteral", "span": { "start": 1700, "end": 1704, "ctxt": 0 }, "value": "ok", "raw": "\"ok\"" } } }, "readonly": false, "static": false, "span": { "start": 1685, "end": 1705, "ctxt": 0 } } ] } } }, { "type": "ExportDeclaration", "span": { "start": 1709, "end": 1806, "ctxt": 0 }, "declaration": { "type": "TsInterfaceDeclaration", "span": { "start": 1716, "end": 1806, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1726, "end": 1727, "ctxt": 0 }, "value": "Y", "optional": false }, "declare": false, "typeParams": null, "extends": [], "body": { "type": "TsInterfaceBody", "span": { "start": 1728, "end": 1806, "ctxt": 0 }, "body": [ { "type": "TsIndexSignature", "params": [ { "type": "Identifier", "span": { "start": 1735, "end": 1746, "ctxt": 0 }, "value": "idx", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1738, "end": 1746, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1740, "end": 1746, "ctxt": 0 }, "kind": "string" } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1747, "end": 1760, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 1749, "end": 1760, "ctxt": 0 }, "members": [ { "type": "TsPropertySignature", "span": { "start": 1750, "end": 1759, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 1750, "end": 1751, "ctxt": 0 }, "value": "x", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1751, "end": 1759, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1753, "end": 1759, "ctxt": 0 }, "kind": "number" } }, "typeParams": null } ] } }, "readonly": false, "static": false, "span": { "start": 1734, "end": 1761, "ctxt": 0 } }, { "type": "TsIndexSignature", "params": [ { "type": "Identifier", "span": { "start": 1767, "end": 1778, "ctxt": 0 }, "value": "idx", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1770, "end": 1778, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1772, "end": 1778, "ctxt": 0 }, "kind": "number" } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1779, "end": 1803, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 1781, "end": 1803, "ctxt": 0 }, "members": [ { "type": "TsPropertySignature", "span": { "start": 1782, "end": 1792, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 1782, "end": 1783, "ctxt": 0 }, "value": "x", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1783, "end": 1791, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1785, "end": 1791, "ctxt": 0 }, "kind": "number" } }, "typeParams": null }, { "type": "TsPropertySignature", "span": { "start": 1793, "end": 1802, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 1793, "end": 1794, "ctxt": 0 }, "value": "y", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1794, "end": 1802, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1796, "end": 1802, "ctxt": 0 }, "kind": "number" } }, "typeParams": null } ] } }, "readonly": false, "static": false, "span": { "start": 1766, "end": 1804, "ctxt": 0 } } ] } } }, { "type": "ExportDeclaration", "span": { "start": 1808, "end": 1839, "ctxt": 0 }, "declaration": { "type": "TsInterfaceDeclaration", "span": { "start": 1815, "end": 1839, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1825, "end": 1826, "ctxt": 0 }, "value": "Z", "optional": false }, "declare": false, "typeParams": null, "extends": [ { "type": "TsExpressionWithTypeArguments", "span": { "start": 1835, "end": 1836, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 1835, "end": 1836, "ctxt": 0 }, "value": "Y", "optional": false }, "typeArguments": null } ], "body": { "type": "TsInterfaceBody", "span": { "start": 1837, "end": 1839, "ctxt": 0 }, "body": [] } } }, { "type": "ExportDeclaration", "span": { "start": 1841, "end": 1917, "ctxt": 0 }, "declaration": { "type": "TsInterfaceDeclaration", "span": { "start": 1848, "end": 1917, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1858, "end": 1860, "ctxt": 0 }, "value": "AA", "optional": false }, "declare": false, "typeParams": null, "extends": [ { "type": "TsExpressionWithTypeArguments", "span": { "start": 1869, "end": 1870, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 1869, "end": 1870, "ctxt": 0 }, "value": "Y", "optional": false }, "typeArguments": null } ], "body": { "type": "TsInterfaceBody", "span": { "start": 1871, "end": 1917, "ctxt": 0 }, "body": [ { "type": "TsIndexSignature", "params": [ { "type": "Identifier", "span": { "start": 1878, "end": 1889, "ctxt": 0 }, "value": "idx", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1881, "end": 1889, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1883, "end": 1889, "ctxt": 0 }, "kind": "string" } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1890, "end": 1914, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 1892, "end": 1914, "ctxt": 0 }, "members": [ { "type": "TsPropertySignature", "span": { "start": 1893, "end": 1903, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 1893, "end": 1894, "ctxt": 0 }, "value": "x", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1894, "end": 1902, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1896, "end": 1902, "ctxt": 0 }, "kind": "number" } }, "typeParams": null }, { "type": "TsPropertySignature", "span": { "start": 1904, "end": 1913, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 1904, "end": 1905, "ctxt": 0 }, "value": "y", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1905, "end": 1913, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1907, "end": 1913, "ctxt": 0 }, "kind": "number" } }, "typeParams": null } ] } }, "readonly": false, "static": false, "span": { "start": 1877, "end": 1915, "ctxt": 0 } } ] } } }, { "type": "ExportDeclaration", "span": { "start": 1919, "end": 1985, "ctxt": 0 }, "declaration": { "type": "TsInterfaceDeclaration", "span": { "start": 1926, "end": 1985, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1936, "end": 1938, "ctxt": 0 }, "value": "BB", "optional": false }, "declare": false, "typeParams": null, "extends": [ { "type": "TsExpressionWithTypeArguments", "span": { "start": 1947, "end": 1948, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 1947, "end": 1948, "ctxt": 0 }, "value": "Y", "optional": false }, "typeArguments": null } ], "body": { "type": "TsInterfaceBody", "span": { "start": 1949, "end": 1985, "ctxt": 0 }, "body": [ { "type": "TsIndexSignature", "params": [ { "type": "Identifier", "span": { "start": 1956, "end": 1967, "ctxt": 0 }, "value": "idx", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1959, "end": 1967, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1961, "end": 1967, "ctxt": 0 }, "kind": "number" } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1968, "end": 1982, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 1970, "end": 1982, "ctxt": 0 }, "members": [ { "type": "TsPropertySignature", "span": { "start": 1971, "end": 1976, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 1971, "end": 1972, "ctxt": 0 }, "value": "x", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1972, "end": 1975, "ctxt": 0 }, "typeAnnotation": { "type": "TsLiteralType", "span": { "start": 1974, "end": 1975, "ctxt": 0 }, "literal": { "type": "NumericLiteral", "span": { "start": 1974, "end": 1975, "ctxt": 0 }, "value": 0.0, "raw": "0" } } }, "typeParams": null }, { "type": "TsPropertySignature", "span": { "start": 1977, "end": 1981, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 1977, "end": 1978, "ctxt": 0 }, "value": "y", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1978, "end": 1981, "ctxt": 0 }, "typeAnnotation": { "type": "TsLiteralType", "span": { "start": 1980, "end": 1981, "ctxt": 0 }, "literal": { "type": "NumericLiteral", "span": { "start": 1980, "end": 1981, "ctxt": 0 }, "value": 0.0, "raw": "0" } } }, "typeParams": null } ] } }, "readonly": false, "static": false, "span": { "start": 1955, "end": 1983, "ctxt": 0 } } ] } } }, { "type": "ExportDeclaration", "span": { "start": 1987, "end": 2096, "ctxt": 0 }, "declaration": { "type": "TsInterfaceDeclaration", "span": { "start": 1994, "end": 2096, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2004, "end": 2006, "ctxt": 0 }, "value": "CC", "optional": false }, "declare": false, "typeParams": null, "extends": [ { "type": "TsExpressionWithTypeArguments", "span": { "start": 2015, "end": 2016, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 2015, "end": 2016, "ctxt": 0 }, "value": "Y", "optional": false }, "typeArguments": null } ], "body": { "type": "TsInterfaceBody", "span": { "start": 2017, "end": 2096, "ctxt": 0 }, "body": [ { "type": "TsIndexSignature", "params": [ { "type": "Identifier", "span": { "start": 2024, "end": 2035, "ctxt": 0 }, "value": "idx", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2027, "end": 2035, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2029, "end": 2035, "ctxt": 0 }, "kind": "string" } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2036, "end": 2060, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 2038, "end": 2060, "ctxt": 0 }, "members": [ { "type": "TsPropertySignature", "span": { "start": 2039, "end": 2049, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 2039, "end": 2040, "ctxt": 0 }, "value": "x", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2040, "end": 2048, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2042, "end": 2048, "ctxt": 0 }, "kind": "number" } }, "typeParams": null }, { "type": "TsPropertySignature", "span": { "start": 2050, "end": 2059, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 2050, "end": 2051, "ctxt": 0 }, "value": "y", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2051, "end": 2059, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2053, "end": 2059, "ctxt": 0 }, "kind": "number" } }, "typeParams": null } ] } }, "readonly": false, "static": false, "span": { "start": 2023, "end": 2061, "ctxt": 0 } }, { "type": "TsIndexSignature", "params": [ { "type": "Identifier", "span": { "start": 2067, "end": 2078, "ctxt": 0 }, "value": "idx", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2070, "end": 2078, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2072, "end": 2078, "ctxt": 0 }, "kind": "number" } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2079, "end": 2093, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 2081, "end": 2093, "ctxt": 0 }, "members": [ { "type": "TsPropertySignature", "span": { "start": 2082, "end": 2087, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 2082, "end": 2083, "ctxt": 0 }, "value": "x", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2083, "end": 2086, "ctxt": 0 }, "typeAnnotation": { "type": "TsLiteralType", "span": { "start": 2085, "end": 2086, "ctxt": 0 }, "literal": { "type": "NumericLiteral", "span": { "start": 2085, "end": 2086, "ctxt": 0 }, "value": 0.0, "raw": "0" } } }, "typeParams": null }, { "type": "TsPropertySignature", "span": { "start": 2088, "end": 2092, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 2088, "end": 2089, "ctxt": 0 }, "value": "y", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2089, "end": 2092, "ctxt": 0 }, "typeAnnotation": { "type": "TsLiteralType", "span": { "start": 2091, "end": 2092, "ctxt": 0 }, "literal": { "type": "NumericLiteral", "span": { "start": 2091, "end": 2092, "ctxt": 0 }, "value": 0.0, "raw": "0" } } }, "typeParams": null } ] } }, "readonly": false, "static": false, "span": { "start": 2066, "end": 2094, "ctxt": 0 } } ] } } } ], "interpreter": null }