1{ 2 "type": "Program", 3 "statements": [ 4 { 5 "type": "TSTypeAliasDeclaration", 6 "id": { 7 "type": "Identifier", 8 "name": "Mapper", 9 "loc": { 10 "start": { 11 "line": 17, 12 "column": 6 13 }, 14 "end": { 15 "line": 17, 16 "column": 12 17 } 18 } 19 }, 20 "typeAnnotation": { 21 "type": "TSFunctionType", 22 "params": [ 23 { 24 "type": "Identifier", 25 "name": "x", 26 "typeAnnotation": { 27 "type": "TSTypeReference", 28 "typeName": { 29 "type": "Identifier", 30 "name": "T", 31 "loc": { 32 "start": { 33 "line": 17, 34 "column": 32 35 }, 36 "end": { 37 "line": 17, 38 "column": 33 39 } 40 } 41 }, 42 "loc": { 43 "start": { 44 "line": 17, 45 "column": 32 46 }, 47 "end": { 48 "line": 17, 49 "column": 33 50 } 51 } 52 }, 53 "loc": { 54 "start": { 55 "line": 17, 56 "column": 29 57 }, 58 "end": { 59 "line": 17, 60 "column": 30 61 } 62 } 63 } 64 ], 65 "returnType": { 66 "type": "TSTypeReference", 67 "typeName": { 68 "type": "Identifier", 69 "name": "U", 70 "loc": { 71 "start": { 72 "line": 17, 73 "column": 38 74 }, 75 "end": { 76 "line": 17, 77 "column": 39 78 } 79 } 80 }, 81 "loc": { 82 "start": { 83 "line": 17, 84 "column": 38 85 }, 86 "end": { 87 "line": 17, 88 "column": 39 89 } 90 } 91 }, 92 "loc": { 93 "start": { 94 "line": 17, 95 "column": 28 96 }, 97 "end": { 98 "line": 17, 99 "column": 39 100 } 101 } 102 }, 103 "typeParameters": { 104 "type": "TSTypeParameterDeclaration", 105 "params": [ 106 { 107 "type": "TSTypeParameter", 108 "name": { 109 "type": "Identifier", 110 "name": "T", 111 "loc": { 112 "start": { 113 "line": 17, 114 "column": 16 115 }, 116 "end": { 117 "line": 17, 118 "column": 17 119 } 120 } 121 }, 122 "in": true, 123 "out": false, 124 "loc": { 125 "start": { 126 "line": 17, 127 "column": 13 128 }, 129 "end": { 130 "line": 17, 131 "column": 18 132 } 133 } 134 }, 135 { 136 "type": "TSTypeParameter", 137 "name": { 138 "type": "Identifier", 139 "name": "U", 140 "loc": { 141 "start": { 142 "line": 17, 143 "column": 23 144 }, 145 "end": { 146 "line": 17, 147 "column": 24 148 } 149 } 150 }, 151 "in": false, 152 "out": true, 153 "loc": { 154 "start": { 155 "line": 17, 156 "column": 19 157 }, 158 "end": { 159 "line": 17, 160 "column": 25 161 } 162 } 163 } 164 ], 165 "loc": { 166 "start": { 167 "line": 17, 168 "column": 12 169 }, 170 "end": { 171 "line": 17, 172 "column": 25 173 } 174 } 175 }, 176 "loc": { 177 "start": { 178 "line": 17, 179 "column": 1 180 }, 181 "end": { 182 "line": 17, 183 "column": 40 184 } 185 } 186 } 187 ], 188 "loc": { 189 "start": { 190 "line": 1, 191 "column": 1 192 }, 193 "end": { 194 "line": 17, 195 "column": 40 196 } 197 } 198} 199