auth-yes/archive/.forum/ast/spire_ffi.ts.ast

1010 lines
57 KiB
Plaintext

(program [0, 0] - [263, 0]
(import_statement [0, 0] - [0, 53]
(import_clause [0, 7] - [0, 26]
(named_imports [0, 7] - [0, 26]
(import_specifier [0, 9] - [0, 24]
name: (identifier [0, 9] - [0, 24]))))
source: (string [0, 32] - [0, 52]
(string_fragment [0, 33] - [0, 51])))
(import_statement [1, 0] - [1, 54]
(import_clause [1, 7] - [1, 20]
(named_imports [1, 7] - [1, 20]
(import_specifier [1, 9] - [1, 18]
name: (identifier [1, 9] - [1, 18]))))
source: (string [1, 26] - [1, 53]
(string_fragment [1, 27] - [1, 52])))
(import_statement [2, 0] - [2, 65]
(import_clause [2, 7] - [2, 33]
(named_imports [2, 7] - [2, 33]
(import_specifier [2, 9] - [2, 31]
name: (identifier [2, 9] - [2, 31]))))
source: (string [2, 39] - [2, 64]
(string_fragment [2, 40] - [2, 63])))
(comment [4, 0] - [4, 44])
(if_statement [6, 0] - [8, 1]
condition: (parenthesized_expression [6, 3] - [6, 66]
(binary_expression [6, 4] - [6, 65]
left: (binary_expression [6, 4] - [6, 32]
left: (member_expression [6, 4] - [6, 19]
object: (member_expression [6, 4] - [6, 14]
object: (identifier [6, 4] - [6, 8])
property: (property_identifier [6, 9] - [6, 14]))
property: (property_identifier [6, 15] - [6, 19]))
right: (string [6, 24] - [6, 32]
(string_fragment [6, 25] - [6, 31])))
right: (binary_expression [6, 36] - [6, 65]
left: (member_expression [6, 36] - [6, 51]
object: (member_expression [6, 36] - [6, 46]
object: (identifier [6, 36] - [6, 40])
property: (property_identifier [6, 41] - [6, 46]))
property: (property_identifier [6, 47] - [6, 51]))
right: (string [6, 56] - [6, 65]
(string_fragment [6, 57] - [6, 64])))))
consequence: (statement_block [6, 67] - [8, 1]
(throw_statement [7, 2] - [7, 46]
(new_expression [7, 8] - [7, 45]
constructor: (identifier [7, 12] - [7, 17])
arguments: (arguments [7, 17] - [7, 45]
(string [7, 18] - [7, 44]
(string_fragment [7, 19] - [7, 43])))))))
(lexical_declaration [10, 0] - [18, 5]
(variable_declarator [10, 6] - [18, 4]
name: (identifier [10, 6] - [10, 13])
value: (call_expression [10, 16] - [18, 4]
function: (parenthesized_expression [10, 16] - [18, 2]
(arrow_function [10, 17] - [18, 1]
parameters: (formal_parameters [10, 17] - [10, 19])
body: (statement_block [10, 23] - [18, 1]
(if_statement [11, 2] - [13, 3]
condition: (parenthesized_expression [11, 5] - [11, 34]
(binary_expression [11, 6] - [11, 33]
left: (member_expression [11, 6] - [11, 19]
object: (member_expression [11, 6] - [11, 16]
object: (identifier [11, 6] - [11, 10])
property: (property_identifier [11, 11] - [11, 16]))
property: (property_identifier [11, 17] - [11, 19]))
right: (string [11, 24] - [11, 33]
(string_fragment [11, 25] - [11, 32]))))
consequence: (statement_block [11, 35] - [13, 3]
(return_statement [12, 4] - [12, 55]
(string [12, 11] - [12, 54]
(string_fragment [12, 12] - [12, 53])))))
(if_statement [14, 2] - [16, 3]
condition: (parenthesized_expression [14, 5] - [14, 33]
(binary_expression [14, 6] - [14, 32]
left: (member_expression [14, 6] - [14, 19]
object: (member_expression [14, 6] - [14, 16]
object: (identifier [14, 6] - [14, 10])
property: (property_identifier [14, 11] - [14, 16]))
property: (property_identifier [14, 17] - [14, 19]))
right: (string [14, 24] - [14, 32]
(string_fragment [14, 25] - [14, 31]))))
consequence: (statement_block [14, 34] - [16, 3]
(return_statement [15, 4] - [15, 60]
(string [15, 11] - [15, 59]
(string_fragment [15, 12] - [15, 58])))))
(return_statement [17, 2] - [17, 55]
(string [17, 9] - [17, 54]
(string_fragment [17, 10] - [17, 53]))))))
arguments: (arguments [18, 2] - [18, 4]))))
(lexical_declaration [20, 0] - [20, 50]
(variable_declarator [20, 4] - [20, 49]
name: (identifier [20, 4] - [20, 9])
type: (type_annotation [20, 9] - [20, 42]
(union_type [20, 11] - [20, 42]
(generic_type [20, 11] - [20, 35]
name: (nested_type_identifier [20, 11] - [20, 30]
module: (identifier [20, 11] - [20, 15])
name: (type_identifier [20, 16] - [20, 30]))
type_arguments: (type_arguments [20, 30] - [20, 35]
(predefined_type [20, 31] - [20, 34])))
(literal_type [20, 38] - [20, 42]
(null [20, 38] - [20, 42]))))
value: (null [20, 45] - [20, 49])))
(try_statement [22, 0] - [52, 1]
body: (statement_block [22, 4] - [48, 1]
(expression_statement [23, 2] - [47, 5]
(assignment_expression [23, 2] - [47, 4]
left: (identifier [23, 2] - [23, 7])
right: (call_expression [23, 10] - [47, 4]
function: (member_expression [23, 10] - [23, 21]
object: (identifier [23, 10] - [23, 14])
property: (property_identifier [23, 15] - [23, 21]))
arguments: (arguments [23, 21] - [47, 4]
(identifier [23, 22] - [23, 29])
(object [23, 31] - [47, 3]
(pair [24, 4] - [28, 5]
key: (property_identifier [24, 4] - [24, 14])
value: (object [24, 16] - [28, 5]
(pair [25, 6] - [25, 29]
key: (property_identifier [25, 6] - [25, 16])
value: (array [25, 18] - [25, 29]
(string [25, 19] - [25, 28]
(string_fragment [25, 20] - [25, 27]))))
(pair [26, 6] - [26, 23]
key: (property_identifier [26, 6] - [26, 12])
value: (string [26, 14] - [26, 23]
(string_fragment [26, 15] - [26, 22])))
(pair [27, 6] - [27, 23]
key: (property_identifier [27, 6] - [27, 17])
value: (true [27, 19] - [27, 23]))))
(pair [29, 4] - [32, 5]
key: (property_identifier [29, 4] - [29, 13])
value: (object [29, 15] - [32, 5]
(pair [30, 6] - [30, 29]
key: (property_identifier [30, 6] - [30, 16])
value: (array [30, 18] - [30, 29]
(string [30, 19] - [30, 28]
(string_fragment [30, 20] - [30, 27]))))
(pair [31, 6] - [31, 20]
key: (property_identifier [31, 6] - [31, 12])
value: (string [31, 14] - [31, 20]
(string_fragment [31, 15] - [31, 19])))))
(pair [33, 4] - [46, 5]
key: (property_identifier [33, 4] - [33, 19])
value: (object [33, 21] - [46, 5]
(pair [34, 6] - [43, 7]
key: (property_identifier [34, 6] - [34, 16])
value: (array [34, 18] - [43, 7]
(string [35, 8] - [35, 17]
(string_fragment [35, 9] - [35, 16]))
(string [36, 8] - [36, 15]
(string_fragment [36, 9] - [36, 14]))
(string [37, 8] - [37, 17]
(string_fragment [37, 9] - [37, 16]))
(string [38, 8] - [38, 15]
(string_fragment [38, 9] - [38, 14]))
(string [39, 8] - [39, 13]
(string_fragment [39, 9] - [39, 12]))
(string [40, 8] - [40, 13]
(string_fragment [40, 9] - [40, 12]))
(string [41, 8] - [41, 17]
(string_fragment [41, 9] - [41, 16]))
(string [42, 8] - [42, 15]
(string_fragment [42, 9] - [42, 14]))))
(pair [44, 6] - [44, 19]
key: (property_identifier [44, 6] - [44, 12])
value: (string [44, 14] - [44, 19]
(string_fragment [44, 15] - [44, 18])))
(pair [45, 6] - [45, 23]
key: (property_identifier [45, 6] - [45, 17])
value: (true [45, 19] - [45, 23]))))))))))
handler: (catch_clause [48, 2] - [52, 1]
parameter: (identifier [48, 9] - [48, 11])
body: (statement_block [48, 13] - [52, 1]
(expression_statement [49, 2] - [51, 4]
(call_expression [49, 2] - [51, 3]
function: (member_expression [49, 2] - [49, 14]
object: (identifier [49, 2] - [49, 9])
property: (property_identifier [49, 10] - [49, 14]))
arguments: (arguments [49, 14] - [51, 3]
(template_string [50, 4] - [50, 87]
(string_fragment [50, 5] - [50, 20])
(template_substitution [50, 20] - [50, 30]
(identifier [50, 22] - [50, 29]))
(string_fragment [50, 30] - [50, 86]))))))))
(export_statement [54, 0] - [59, 1]
declaration: (interface_declaration [54, 7] - [59, 1]
name: (type_identifier [54, 17] - [54, 29])
body: (interface_body [54, 30] - [59, 1]
(property_signature [55, 2] - [55, 19]
name: (property_identifier [55, 2] - [55, 11])
type: (type_annotation [55, 11] - [55, 19]
(predefined_type [55, 13] - [55, 19])))
(property_signature [56, 2] - [56, 23]
name: (property_identifier [56, 2] - [56, 11])
type: (type_annotation [56, 11] - [56, 23]
(type_identifier [56, 13] - [56, 23])))
(property_signature [57, 2] - [57, 27]
name: (property_identifier [57, 2] - [57, 15])
type: (type_annotation [57, 15] - [57, 27]
(type_identifier [57, 17] - [57, 27])))
(property_signature [58, 2] - [58, 20]
name: (property_identifier [58, 2] - [58, 8])
type: (type_annotation [58, 8] - [58, 20]
(type_identifier [58, 10] - [58, 20]))))))
(export_statement [61, 0] - [166, 1]
declaration: (function_declaration [61, 7] - [166, 1]
name: (identifier [61, 22] - [61, 41])
parameters: (formal_parameters [61, 41] - [63, 1]
(required_parameter [62, 2] - [62, 50]
pattern: (identifier [62, 2] - [62, 12])
type: (type_annotation [62, 12] - [62, 20]
(predefined_type [62, 14] - [62, 20]))
value: (string [62, 23] - [62, 50]
(string_fragment [62, 24] - [62, 49]))))
return_type: (type_annotation [63, 1] - [63, 24]
(generic_type [63, 3] - [63, 24]
name: (type_identifier [63, 3] - [63, 10])
type_arguments: (type_arguments [63, 10] - [63, 24]
(type_identifier [63, 11] - [63, 23]))))
body: (statement_block [63, 25] - [166, 1]
(if_statement [64, 2] - [74, 3]
condition: (parenthesized_expression [64, 5] - [64, 13]
(unary_expression [64, 6] - [64, 12]
argument: (identifier [64, 7] - [64, 12])))
consequence: (statement_block [64, 14] - [74, 3]
(expression_statement [65, 4] - [67, 6]
(call_expression [65, 4] - [67, 5]
function: (member_expression [65, 4] - [65, 16]
object: (identifier [65, 4] - [65, 11])
property: (property_identifier [65, 12] - [65, 16]))
arguments: (arguments [65, 16] - [67, 5]
(template_string [66, 6] - [66, 108]
(string_fragment [66, 7] - [66, 36])
(template_substitution [66, 36] - [66, 46]
(identifier [66, 38] - [66, 45]))
(string_fragment [66, 46] - [66, 107])))))
(return_statement [68, 4] - [73, 6]
(object [68, 11] - [73, 5]
(pair [69, 6] - [69, 42]
key: (property_identifier [69, 6] - [69, 15])
value: (string [69, 17] - [69, 42]
(string_fragment [69, 18] - [69, 41])))
(pair [70, 6] - [70, 33]
key: (property_identifier [70, 6] - [70, 15])
value: (new_expression [70, 17] - [70, 33]
constructor: (identifier [70, 21] - [70, 31])
arguments: (arguments [70, 31] - [70, 33])))
(pair [71, 6] - [71, 37]
key: (property_identifier [71, 6] - [71, 19])
value: (new_expression [71, 21] - [71, 37]
constructor: (identifier [71, 25] - [71, 35])
arguments: (arguments [71, 35] - [71, 37])))
(pair [72, 6] - [72, 30]
key: (property_identifier [72, 6] - [72, 12])
value: (new_expression [72, 14] - [72, 30]
constructor: (identifier [72, 18] - [72, 28])
arguments: (arguments [72, 28] - [72, 30])))))))
(lexical_declaration [76, 2] - [76, 36]
(variable_declarator [76, 8] - [76, 35]
name: (identifier [76, 8] - [76, 15])
value: (new_expression [76, 18] - [76, 35]
constructor: (identifier [76, 22] - [76, 33])
arguments: (arguments [76, 33] - [76, 35]))))
(lexical_declaration [77, 2] - [77, 56]
(variable_declarator [77, 8] - [77, 55]
name: (identifier [77, 8] - [77, 19])
value: (call_expression [77, 22] - [77, 55]
function: (member_expression [77, 22] - [77, 36]
object: (identifier [77, 22] - [77, 29])
property: (property_identifier [77, 30] - [77, 36]))
arguments: (arguments [77, 36] - [77, 55]
(binary_expression [77, 37] - [77, 54]
left: (identifier [77, 37] - [77, 47])
right: (string [77, 50] - [77, 54]
(escape_sequence [77, 51] - [77, 53])))))))
(lexical_declaration [78, 2] - [78, 53]
(variable_declarator [78, 8] - [78, 52]
name: (identifier [78, 8] - [78, 15])
value: (call_expression [78, 18] - [78, 52]
function: (member_expression [78, 18] - [78, 39]
object: (member_expression [78, 18] - [78, 36]
object: (identifier [78, 18] - [78, 22])
property: (property_identifier [78, 23] - [78, 36]))
property: (property_identifier [78, 37] - [78, 39]))
arguments: (arguments [78, 39] - [78, 52]
(identifier [78, 40] - [78, 51])))))
(lexical_declaration [80, 2] - [83, 37]
(variable_declarator [80, 8] - [83, 36]
name: (identifier [80, 8] - [80, 18])
value: (as_expression [80, 21] - [83, 36]
(as_expression [80, 21] - [81, 26]
(member_expression [80, 21] - [81, 15]
object: (member_expression [80, 21] - [80, 34]
object: (identifier [80, 21] - [80, 26])
property: (property_identifier [80, 27] - [80, 34]))
property: (property_identifier [81, 5] - [81, 15]))
(predefined_type [81, 19] - [81, 26]))
(parenthesized_type [81, 30] - [83, 36]
(function_type [81, 31] - [83, 35]
parameters: (formal_parameters [81, 31] - [83, 5]
(required_parameter [82, 6] - [82, 28]
pattern: (identifier [82, 6] - [82, 9])
type: (type_annotation [82, 9] - [82, 28]
(nested_type_identifier [82, 11] - [82, 28]
module: (identifier [82, 11] - [82, 15])
name: (type_identifier [82, 16] - [82, 28])))))
return_type: (generic_type [83, 9] - [83, 35]
name: (type_identifier [83, 9] - [83, 16])
type_arguments: (type_arguments [83, 16] - [83, 35]
(nested_type_identifier [83, 17] - [83, 34]
module: (identifier [83, 17] - [83, 21])
name: (type_identifier [83, 22] - [83, 34])))))))))
(lexical_declaration [84, 2] - [85, 64]
(variable_declarator [84, 8] - [85, 63]
name: (identifier [84, 8] - [84, 17])
value: (as_expression [84, 20] - [85, 63]
(as_expression [84, 20] - [85, 25]
(member_expression [84, 20] - [85, 14]
object: (member_expression [84, 20] - [84, 33]
object: (identifier [84, 20] - [84, 25])
property: (property_identifier [84, 26] - [84, 33]))
property: (property_identifier [85, 5] - [85, 14]))
(predefined_type [85, 18] - [85, 25]))
(parenthesized_type [85, 29] - [85, 63]
(function_type [85, 30] - [85, 62]
parameters: (formal_parameters [85, 30] - [85, 54]
(required_parameter [85, 31] - [85, 53]
pattern: (identifier [85, 31] - [85, 34])
type: (type_annotation [85, 34] - [85, 53]
(nested_type_identifier [85, 36] - [85, 53]
module: (identifier [85, 36] - [85, 40])
name: (type_identifier [85, 41] - [85, 53])))))
return_type: (predefined_type [85, 58] - [85, 62]))))))
(lexical_declaration [87, 2] - [87, 43]
(variable_declarator [87, 8] - [87, 42]
name: (identifier [87, 8] - [87, 14])
value: (await_expression [87, 17] - [87, 42]
(call_expression [87, 23] - [87, 42]
function: (identifier [87, 23] - [87, 33])
arguments: (arguments [87, 33] - [87, 42]
(identifier [87, 34] - [87, 41]))))))
(if_statement [89, 2] - [91, 3]
condition: (parenthesized_expression [89, 5] - [89, 22]
(binary_expression [89, 6] - [89, 21]
left: (identifier [89, 6] - [89, 12])
right: (null [89, 17] - [89, 21])))
consequence: (statement_block [89, 23] - [91, 3]
(throw_statement [90, 4] - [90, 58]
(new_expression [90, 10] - [90, 57]
constructor: (identifier [90, 14] - [90, 19])
arguments: (arguments [90, 19] - [90, 57]
(string [90, 20] - [90, 56]
(string_fragment [90, 21] - [90, 55])))))))
(lexical_declaration [93, 2] - [93, 53]
(variable_declarator [93, 8] - [93, 52]
name: (identifier [93, 8] - [93, 15])
value: (new_expression [93, 18] - [93, 52]
constructor: (member_expression [93, 22] - [93, 44]
object: (identifier [93, 22] - [93, 26])
property: (property_identifier [93, 27] - [93, 44]))
arguments: (arguments [93, 44] - [93, 52]
(identifier [93, 45] - [93, 51])))))
(lexical_declaration [94, 2] - [94, 37]
(variable_declarator [94, 6] - [94, 36]
name: (identifier [94, 6] - [94, 14])
type: (type_annotation [94, 14] - [94, 29]
(union_type [94, 16] - [94, 29]
(predefined_type [94, 16] - [94, 22])
(literal_type [94, 25] - [94, 29]
(null [94, 25] - [94, 29]))))
value: (null [94, 32] - [94, 36])))
(lexical_declaration [95, 2] - [95, 38]
(variable_declarator [95, 6] - [95, 37]
name: (identifier [95, 6] - [95, 15])
type: (type_annotation [95, 15] - [95, 30]
(union_type [95, 17] - [95, 30]
(predefined_type [95, 17] - [95, 23])
(literal_type [95, 26] - [95, 30]
(null [95, 26] - [95, 30]))))
value: (null [95, 33] - [95, 37])))
(lexical_declaration [97, 2] - [97, 17]
(variable_declarator [97, 6] - [97, 16]
name: (identifier [97, 6] - [97, 12])
value: (number [97, 15] - [97, 16])))
(lexical_declaration [98, 2] - [98, 20]
(variable_declarator [98, 8] - [98, 19]
name: (identifier [98, 8] - [98, 15])
value: (number [98, 18] - [98, 19])))
(comment [98, 21] - [98, 39])
(lexical_declaration [100, 2] - [100, 51]
(variable_declarator [100, 8] - [100, 50]
name: (identifier [100, 8] - [100, 21])
value: (call_expression [100, 24] - [100, 50]
function: (member_expression [100, 24] - [100, 42]
object: (identifier [100, 24] - [100, 31])
property: (property_identifier [100, 32] - [100, 42]))
arguments: (arguments [100, 42] - [100, 50]
(identifier [100, 43] - [100, 49])))))
(expression_statement [101, 2] - [101, 20]
(augmented_assignment_expression [101, 2] - [101, 19]
left: (identifier [101, 2] - [101, 8])
right: (identifier [101, 12] - [101, 19])))
(lexical_declaration [102, 2] - [102, 51]
(variable_declarator [102, 8] - [102, 50]
name: (identifier [102, 8] - [102, 21])
value: (call_expression [102, 24] - [102, 50]
function: (member_expression [102, 24] - [102, 42]
object: (identifier [102, 24] - [102, 31])
property: (property_identifier [102, 32] - [102, 42]))
arguments: (arguments [102, 42] - [102, 50]
(identifier [102, 43] - [102, 49])))))
(expression_statement [103, 2] - [103, 20]
(augmented_assignment_expression [103, 2] - [103, 19]
left: (identifier [103, 2] - [103, 8])
right: (identifier [103, 12] - [103, 19])))
(lexical_declaration [104, 2] - [104, 61]
(variable_declarator [104, 8] - [104, 60]
name: (identifier [104, 8] - [104, 21])
value: (call_expression [104, 24] - [104, 60]
function: (identifier [104, 24] - [104, 30])
arguments: (arguments [104, 30] - [104, 60]
(call_expression [104, 31] - [104, 59]
function: (member_expression [104, 31] - [104, 51]
object: (identifier [104, 31] - [104, 38])
property: (property_identifier [104, 39] - [104, 51]))
arguments: (arguments [104, 51] - [104, 59]
(identifier [104, 52] - [104, 58])))))))
(expression_statement [105, 2] - [105, 20]
(augmented_assignment_expression [105, 2] - [105, 19]
left: (identifier [105, 2] - [105, 8])
right: (identifier [105, 12] - [105, 19])))
(lexical_declaration [106, 2] - [106, 55]
(variable_declarator [106, 8] - [106, 54]
name: (identifier [106, 8] - [106, 25])
value: (call_expression [106, 28] - [106, 54]
function: (member_expression [106, 28] - [106, 46]
object: (identifier [106, 28] - [106, 35])
property: (property_identifier [106, 36] - [106, 46]))
arguments: (arguments [106, 46] - [106, 54]
(identifier [106, 47] - [106, 53])))))
(expression_statement [107, 2] - [107, 20]
(augmented_assignment_expression [107, 2] - [107, 19]
left: (identifier [107, 2] - [107, 8])
right: (identifier [107, 12] - [107, 19])))
(lexical_declaration [108, 2] - [108, 65]
(variable_declarator [108, 8] - [108, 64]
name: (identifier [108, 8] - [108, 25])
value: (call_expression [108, 28] - [108, 64]
function: (identifier [108, 28] - [108, 34])
arguments: (arguments [108, 34] - [108, 64]
(call_expression [108, 35] - [108, 63]
function: (member_expression [108, 35] - [108, 55]
object: (identifier [108, 35] - [108, 42])
property: (property_identifier [108, 43] - [108, 55]))
arguments: (arguments [108, 55] - [108, 63]
(identifier [108, 56] - [108, 62])))))))
(expression_statement [109, 2] - [109, 20]
(augmented_assignment_expression [109, 2] - [109, 19]
left: (identifier [109, 2] - [109, 8])
right: (identifier [109, 12] - [109, 19])))
(lexical_declaration [110, 2] - [110, 48]
(variable_declarator [110, 8] - [110, 47]
name: (identifier [110, 8] - [110, 18])
value: (call_expression [110, 21] - [110, 47]
function: (member_expression [110, 21] - [110, 39]
object: (identifier [110, 21] - [110, 28])
property: (property_identifier [110, 29] - [110, 39]))
arguments: (arguments [110, 39] - [110, 47]
(identifier [110, 40] - [110, 46])))))
(expression_statement [111, 2] - [111, 20]
(augmented_assignment_expression [111, 2] - [111, 19]
left: (identifier [111, 2] - [111, 8])
right: (identifier [111, 12] - [111, 19])))
(lexical_declaration [112, 2] - [112, 58]
(variable_declarator [112, 8] - [112, 57]
name: (identifier [112, 8] - [112, 18])
value: (call_expression [112, 21] - [112, 57]
function: (identifier [112, 21] - [112, 27])
arguments: (arguments [112, 27] - [112, 57]
(call_expression [112, 28] - [112, 56]
function: (member_expression [112, 28] - [112, 48]
object: (identifier [112, 28] - [112, 35])
property: (property_identifier [112, 36] - [112, 48]))
arguments: (arguments [112, 48] - [112, 56]
(identifier [112, 49] - [112, 55])))))))
(expression_statement [113, 2] - [113, 20]
(augmented_assignment_expression [113, 2] - [113, 19]
left: (identifier [113, 2] - [113, 8])
right: (identifier [113, 12] - [113, 19])))
(lexical_declaration [114, 2] - [114, 47]
(variable_declarator [114, 8] - [114, 46]
name: (identifier [114, 8] - [114, 17])
value: (call_expression [114, 20] - [114, 46]
function: (member_expression [114, 20] - [114, 38]
object: (identifier [114, 20] - [114, 27])
property: (property_identifier [114, 28] - [114, 38]))
arguments: (arguments [114, 38] - [114, 46]
(identifier [114, 39] - [114, 45])))))
(if_statement [116, 2] - [118, 3]
condition: (parenthesized_expression [116, 5] - [116, 25]
(binary_expression [116, 6] - [116, 24]
left: (identifier [116, 6] - [116, 15])
right: (null [116, 20] - [116, 24])))
consequence: (statement_block [116, 26] - [118, 3]
(expression_statement [117, 4] - [117, 66]
(assignment_expression [117, 4] - [117, 65]
left: (identifier [117, 4] - [117, 12])
right: (call_expression [117, 15] - [117, 65]
function: (member_expression [117, 15] - [117, 63]
object: (new_expression [117, 15] - [117, 52]
constructor: (member_expression [117, 19] - [117, 41]
object: (identifier [117, 19] - [117, 23])
property: (property_identifier [117, 24] - [117, 41]))
arguments: (arguments [117, 41] - [117, 52]
(identifier [117, 42] - [117, 51])))
property: (property_identifier [117, 53] - [117, 63]))
arguments: (arguments [117, 63] - [117, 65]))))))
(if_statement [120, 2] - [123, 3]
condition: (parenthesized_expression [120, 5] - [120, 24]
(binary_expression [120, 6] - [120, 23]
left: (identifier [120, 6] - [120, 14])
right: (null [120, 19] - [120, 23])))
consequence: (statement_block [120, 25] - [123, 3]
(expression_statement [121, 4] - [121, 22]
(call_expression [121, 4] - [121, 21]
function: (identifier [121, 4] - [121, 13])
arguments: (arguments [121, 13] - [121, 21]
(identifier [121, 14] - [121, 20]))))
(throw_statement [122, 4] - [122, 30]
(new_expression [122, 10] - [122, 29]
constructor: (identifier [122, 14] - [122, 19])
arguments: (arguments [122, 19] - [122, 29]
(identifier [122, 20] - [122, 28]))))))
(if_statement [125, 2] - [127, 3]
condition: (parenthesized_expression [125, 5] - [125, 29]
(binary_expression [125, 6] - [125, 28]
left: (identifier [125, 6] - [125, 19])
right: (null [125, 24] - [125, 28])))
consequence: (statement_block [125, 30] - [127, 3]
(expression_statement [126, 4] - [126, 71]
(assignment_expression [126, 4] - [126, 70]
left: (identifier [126, 4] - [126, 13])
right: (call_expression [126, 16] - [126, 70]
function: (member_expression [126, 16] - [126, 68]
object: (new_expression [126, 16] - [126, 57]
constructor: (member_expression [126, 20] - [126, 42]
object: (identifier [126, 20] - [126, 24])
property: (property_identifier [126, 25] - [126, 42]))
arguments: (arguments [126, 42] - [126, 57]
(identifier [126, 43] - [126, 56])))
property: (property_identifier [126, 58] - [126, 68]))
arguments: (arguments [126, 68] - [126, 70]))))))
(if_statement [129, 2] - [132, 3]
condition: (parenthesized_expression [129, 5] - [129, 17]
(unary_expression [129, 6] - [129, 16]
argument: (identifier [129, 7] - [129, 16])))
consequence: (statement_block [129, 18] - [132, 3]
(expression_statement [130, 4] - [130, 22]
(call_expression [130, 4] - [130, 21]
function: (identifier [130, 4] - [130, 13])
arguments: (arguments [130, 13] - [130, 21]
(identifier [130, 14] - [130, 20]))))
(throw_statement [131, 4] - [131, 41]
(new_expression [131, 10] - [131, 40]
constructor: (identifier [131, 14] - [131, 19])
arguments: (arguments [131, 19] - [131, 40]
(string [131, 20] - [131, 39]
(string_fragment [131, 21] - [131, 38])))))))
(lexical_declaration [134, 2] - [138, 23]
(variable_declarator [134, 8] - [138, 22]
name: (identifier [134, 8] - [134, 17])
value: (ternary_expression [134, 20] - [138, 22]
condition: (binary_expression [134, 20] - [134, 63]
left: (binary_expression [134, 20] - [134, 42]
left: (identifier [134, 20] - [134, 33])
right: (null [134, 38] - [134, 42]))
right: (binary_expression [134, 46] - [134, 63]
left: (identifier [134, 46] - [134, 59])
right: (number [134, 62] - [134, 63])))
consequence: (new_expression [135, 6] - [137, 5]
constructor: (identifier [135, 10] - [135, 20])
arguments: (arguments [135, 20] - [137, 5]
(call_expression [136, 6] - [136, 77]
function: (member_expression [136, 6] - [136, 62]
object: (new_expression [136, 6] - [136, 47]
constructor: (member_expression [136, 10] - [136, 32]
object: (identifier [136, 10] - [136, 14])
property: (property_identifier [136, 15] - [136, 32]))
arguments: (arguments [136, 32] - [136, 47]
(identifier [136, 33] - [136, 46])))
property: (property_identifier [136, 48] - [136, 62]))
arguments: (arguments [136, 62] - [136, 77]
(identifier [136, 63] - [136, 76])))))
alternative: (new_expression [138, 6] - [138, 22]
constructor: (identifier [138, 10] - [138, 20])
arguments: (arguments [138, 20] - [138, 22])))))
(lexical_declaration [140, 2] - [146, 23]
(variable_declarator [140, 8] - [146, 22]
name: (identifier [140, 8] - [140, 21])
value: (ternary_expression [140, 24] - [146, 22]
condition: (binary_expression [140, 24] - [140, 75]
left: (binary_expression [140, 24] - [140, 50]
left: (identifier [140, 24] - [140, 41])
right: (null [140, 46] - [140, 50]))
right: (binary_expression [140, 54] - [140, 75]
left: (identifier [140, 54] - [140, 71])
right: (number [140, 74] - [140, 75])))
consequence: (new_expression [141, 6] - [145, 5]
constructor: (identifier [141, 10] - [141, 20])
arguments: (arguments [141, 20] - [145, 5]
(call_expression [142, 6] - [144, 7]
function: (member_expression [142, 6] - [142, 66]
object: (new_expression [142, 6] - [142, 51]
constructor: (member_expression [142, 10] - [142, 32]
object: (identifier [142, 10] - [142, 14])
property: (property_identifier [142, 15] - [142, 32]))
arguments: (arguments [142, 32] - [142, 51]
(identifier [142, 33] - [142, 50])))
property: (property_identifier [142, 52] - [142, 66]))
arguments: (arguments [142, 66] - [144, 7]
(identifier [143, 8] - [143, 25])))))
alternative: (new_expression [146, 6] - [146, 22]
constructor: (identifier [146, 10] - [146, 20])
arguments: (arguments [146, 20] - [146, 22])))))
(lexical_declaration [148, 2] - [152, 23]
(variable_declarator [148, 8] - [152, 22]
name: (identifier [148, 8] - [148, 14])
value: (ternary_expression [148, 17] - [152, 22]
condition: (binary_expression [148, 17] - [148, 54]
left: (binary_expression [148, 17] - [148, 36]
left: (identifier [148, 17] - [148, 27])
right: (null [148, 32] - [148, 36]))
right: (binary_expression [148, 40] - [148, 54]
left: (identifier [148, 40] - [148, 50])
right: (number [148, 53] - [148, 54])))
consequence: (new_expression [149, 6] - [151, 5]
constructor: (identifier [149, 10] - [149, 20])
arguments: (arguments [149, 20] - [151, 5]
(call_expression [150, 6] - [150, 71]
function: (member_expression [150, 6] - [150, 59]
object: (new_expression [150, 6] - [150, 44]
constructor: (member_expression [150, 10] - [150, 32]
object: (identifier [150, 10] - [150, 14])
property: (property_identifier [150, 15] - [150, 32]))
arguments: (arguments [150, 32] - [150, 44]
(identifier [150, 33] - [150, 43])))
property: (property_identifier [150, 45] - [150, 59]))
arguments: (arguments [150, 59] - [150, 71]
(identifier [150, 60] - [150, 70])))))
alternative: (new_expression [152, 6] - [152, 22]
constructor: (identifier [152, 10] - [152, 20])
arguments: (arguments [152, 20] - [152, 22])))))
(comment [154, 2] - [154, 64])
(lexical_declaration [155, 2] - [160, 4]
(variable_declarator [155, 8] - [160, 3]
name: (identifier [155, 8] - [155, 16])
value: (object [155, 19] - [160, 3]
(shorthand_property_identifier [156, 4] - [156, 13])
(pair [157, 4] - [157, 40]
key: (property_identifier [157, 4] - [157, 13])
value: (new_expression [157, 15] - [157, 40]
constructor: (identifier [157, 19] - [157, 29])
arguments: (arguments [157, 29] - [157, 40]
(identifier [157, 30] - [157, 39]))))
(pair [158, 4] - [158, 48]
key: (property_identifier [158, 4] - [158, 17])
value: (new_expression [158, 19] - [158, 48]
constructor: (identifier [158, 23] - [158, 33])
arguments: (arguments [158, 33] - [158, 48]
(identifier [158, 34] - [158, 47]))))
(pair [159, 4] - [159, 34]
key: (property_identifier [159, 4] - [159, 10])
value: (new_expression [159, 12] - [159, 34]
constructor: (identifier [159, 16] - [159, 26])
arguments: (arguments [159, 26] - [159, 34]
(identifier [159, 27] - [159, 33])))))))
(comment [162, 2] - [162, 37])
(expression_statement [163, 2] - [163, 20]
(call_expression [163, 2] - [163, 19]
function: (identifier [163, 2] - [163, 11])
arguments: (arguments [163, 11] - [163, 19]
(identifier [163, 12] - [163, 18]))))
(return_statement [165, 2] - [165, 18]
(identifier [165, 9] - [165, 17])))))
(comment [168, 0] - [170, 3])
(export_statement [171, 0] - [202, 2]
declaration: (lexical_declaration [171, 7] - [202, 2]
(variable_declarator [171, 11] - [202, 1]
name: (identifier [171, 11] - [171, 34])
value: (function_expression [171, 37] - [202, 1]
name: (identifier [171, 46] - [171, 69])
parameters: (formal_parameters [171, 69] - [173, 1]
(required_parameter [172, 2] - [172, 20]
pattern: (identifier [172, 2] - [172, 12])
type: (type_annotation [172, 12] - [172, 20]
(predefined_type [172, 14] - [172, 20]))))
return_type: (type_annotation [173, 1] - [173, 16]
(union_type [173, 3] - [173, 16]
(predefined_type [173, 3] - [173, 9])
(literal_type [173, 12] - [173, 16]
(null [173, 12] - [173, 16]))))
body: (statement_block [173, 17] - [202, 1]
(if_statement [174, 2] - [176, 3]
condition: (parenthesized_expression [174, 5] - [174, 52]
(binary_expression [174, 6] - [174, 51]
left: (unary_expression [174, 6] - [174, 17]
argument: (identifier [174, 7] - [174, 17]))
right: (binary_expression [174, 21] - [174, 51]
left: (unary_expression [174, 21] - [174, 38]
argument: (identifier [174, 28] - [174, 38]))
right: (string [174, 43] - [174, 51]
(string_fragment [174, 44] - [174, 50])))))
consequence: (statement_block [174, 53] - [176, 3]
(return_statement [175, 4] - [175, 16]
(null [175, 11] - [175, 15]))))
(try_statement [178, 2] - [199, 3]
body: (statement_block [178, 6] - [197, 3]
(lexical_declaration [179, 4] - [179, 49]
(variable_declarator [179, 10] - [179, 48]
name: (identifier [179, 10] - [179, 14])
value: (new_expression [179, 17] - [179, 48]
constructor: (identifier [179, 21] - [179, 36])
arguments: (arguments [179, 36] - [179, 48]
(identifier [179, 37] - [179, 47])))))
(lexical_declaration [180, 4] - [182, 6]
(variable_declarator [180, 10] - [182, 5]
name: (identifier [180, 10] - [180, 22])
value: (call_expression [180, 25] - [182, 5]
function: (member_expression [180, 25] - [180, 45]
object: (member_expression [180, 25] - [180, 40]
object: (identifier [180, 25] - [180, 29])
property: (property_identifier [180, 30] - [180, 40]))
property: (property_identifier [180, 41] - [180, 45]))
arguments: (arguments [180, 45] - [182, 5]
(arrow_function [180, 46] - [181, 30]
parameters: (formal_parameters [180, 46] - [180, 51]
(required_parameter [180, 47] - [180, 50]
pattern: (identifier [180, 47] - [180, 50])))
body: (binary_expression [181, 6] - [181, 30]
left: (member_expression [181, 6] - [181, 14]
object: (identifier [181, 6] - [181, 9])
property: (property_identifier [181, 10] - [181, 14]))
right: (string [181, 19] - [181, 30]
(string_fragment [181, 20] - [181, 29]))))))))
(comment [182, 7] - [182, 34])
(if_statement [184, 4] - [186, 5]
condition: (parenthesized_expression [184, 7] - [184, 22]
(unary_expression [184, 8] - [184, 21]
argument: (identifier [184, 9] - [184, 21])))
consequence: (statement_block [184, 23] - [186, 5]
(return_statement [185, 6] - [185, 18]
(null [185, 13] - [185, 17]))))
(lexical_declaration [188, 4] - [188, 76]
(variable_declarator [188, 10] - [188, 75]
name: (identifier [188, 10] - [188, 13])
value: (call_expression [188, 16] - [188, 75]
function: (member_expression [188, 16] - [188, 31]
object: (identifier [188, 16] - [188, 25])
property: (property_identifier [188, 26] - [188, 31]))
arguments: (arguments [188, 31] - [188, 75]
(member_expression [188, 32] - [188, 50]
object: (identifier [188, 32] - [188, 44])
property: (property_identifier [188, 45] - [188, 50]))
(identifier [188, 52] - [188, 74])))))
(for_in_statement [189, 4] - [196, 5]
left: (identifier [189, 15] - [189, 19])
right: (identifier [189, 23] - [189, 26])
body: (statement_block [189, 28] - [196, 5]
(if_statement [190, 6] - [195, 7]
condition: (parenthesized_expression [190, 9] - [193, 7]
(binary_expression [191, 8] - [192, 62]
left: (member_expression [191, 8] - [191, 38]
object: (identifier [191, 8] - [191, 12])
property: (property_identifier [191, 13] - [191, 38]))
right: (call_expression [192, 8] - [192, 62]
function: (member_expression [192, 8] - [192, 49]
object: (member_expression [192, 8] - [192, 38]
object: (identifier [192, 8] - [192, 12])
property: (property_identifier [192, 13] - [192, 38]))
property: (property_identifier [192, 39] - [192, 49]))
arguments: (arguments [192, 49] - [192, 62]
(string [192, 50] - [192, 61]
(string_fragment [192, 51] - [192, 60]))))))
consequence: (statement_block [193, 8] - [195, 7]
(return_statement [194, 8] - [194, 46]
(member_expression [194, 15] - [194, 45]
object: (identifier [194, 15] - [194, 19])
property: (property_identifier [194, 20] - [194, 45]))))))))
handler: (catch_clause [197, 4] - [199, 3]
parameter: (identifier [197, 11] - [197, 13])
body: (statement_block [197, 15] - [199, 3]
(return_statement [198, 4] - [198, 16]
(null [198, 11] - [198, 15])))))
(return_statement [201, 2] - [201, 14]
(null [201, 9] - [201, 13])))))))
(export_statement [204, 0] - [253, 1]
declaration: (function_declaration [204, 7] - [253, 1]
name: (identifier [204, 22] - [204, 39])
parameters: (formal_parameters [204, 39] - [207, 1]
(required_parameter [205, 2] - [205, 22]
pattern: (identifier [205, 2] - [205, 10])
type: (type_annotation [205, 10] - [205, 22]
(type_identifier [205, 12] - [205, 22])))
(required_parameter [206, 2] - [206, 18]
pattern: (identifier [206, 2] - [206, 6])
type: (type_annotation [206, 6] - [206, 18]
(type_identifier [206, 8] - [206, 18]))))
return_type: (type_annotation [207, 1] - [207, 22]
(generic_type [207, 3] - [207, 22]
name: (type_identifier [207, 3] - [207, 10])
type_arguments: (type_arguments [207, 10] - [207, 22]
(type_identifier [207, 11] - [207, 21]))))
body: (statement_block [207, 23] - [253, 1]
(lexical_declaration [208, 2] - [208, 36]
(variable_declarator [208, 8] - [208, 35]
name: (identifier [208, 8] - [208, 14])
value: (new_expression [208, 17] - [208, 35]
constructor: (identifier [208, 21] - [208, 31])
arguments: (arguments [208, 31] - [208, 35]
(number [208, 32] - [208, 34])))))
(if_statement [210, 2] - [216, 3]
condition: (parenthesized_expression [210, 5] - [210, 13]
(unary_expression [210, 6] - [210, 12]
argument: (identifier [210, 7] - [210, 12])))
consequence: (statement_block [210, 14] - [216, 3]
(expression_statement [211, 4] - [213, 6]
(call_expression [211, 4] - [213, 5]
function: (member_expression [211, 4] - [211, 16]
object: (identifier [211, 4] - [211, 11])
property: (property_identifier [211, 12] - [211, 16]))
arguments: (arguments [211, 16] - [213, 5]
(template_string [212, 6] - [212, 114]
(string_fragment [212, 7] - [212, 36])
(template_substitution [212, 36] - [212, 46]
(identifier [212, 38] - [212, 45]))
(string_fragment [212, 46] - [212, 113])))))
(expression_statement [214, 4] - [214, 22]
(call_expression [214, 4] - [214, 21]
function: (member_expression [214, 4] - [214, 15]
object: (identifier [214, 4] - [214, 10])
property: (property_identifier [214, 11] - [214, 15]))
arguments: (arguments [214, 15] - [214, 21]
(number [214, 16] - [214, 20]))))
(return_statement [215, 4] - [215, 18]
(identifier [215, 11] - [215, 17]))))
(lexical_declaration [218, 2] - [218, 24]
(variable_declarator [218, 8] - [218, 23]
name: (identifier [218, 8] - [218, 18])
value: (number [218, 21] - [218, 23])))
(lexical_declaration [219, 2] - [219, 25]
(variable_declarator [219, 8] - [219, 24]
name: (identifier [219, 8] - [219, 16])
value: (number [219, 19] - [219, 24])))
(lexical_declaration [221, 2] - [221, 54]
(variable_declarator [221, 8] - [221, 53]
name: (identifier [221, 8] - [221, 19])
value: (call_expression [221, 22] - [221, 53]
function: (member_expression [221, 22] - [221, 43]
object: (member_expression [221, 22] - [221, 40]
object: (identifier [221, 22] - [221, 26])
property: (property_identifier [221, 27] - [221, 40]))
property: (property_identifier [221, 41] - [221, 43]))
arguments: (arguments [221, 43] - [221, 53]
(identifier [221, 44] - [221, 52])))))
(lexical_declaration [222, 2] - [222, 46]
(variable_declarator [222, 8] - [222, 45]
name: (identifier [222, 8] - [222, 15])
value: (call_expression [222, 18] - [222, 45]
function: (member_expression [222, 18] - [222, 39]
object: (member_expression [222, 18] - [222, 36]
object: (identifier [222, 18] - [222, 22])
property: (property_identifier [222, 23] - [222, 36]))
property: (property_identifier [222, 37] - [222, 39]))
arguments: (arguments [222, 39] - [222, 45]
(identifier [222, 40] - [222, 44])))))
(lexical_declaration [223, 2] - [223, 47]
(variable_declarator [223, 8] - [223, 46]
name: (identifier [223, 8] - [223, 14])
value: (call_expression [223, 17] - [223, 46]
function: (member_expression [223, 17] - [223, 38]
object: (member_expression [223, 17] - [223, 35]
object: (identifier [223, 17] - [223, 21])
property: (property_identifier [223, 22] - [223, 35]))
property: (property_identifier [223, 36] - [223, 38]))
arguments: (arguments [223, 38] - [223, 46]
(identifier [223, 39] - [223, 45])))))
(lexical_declaration [225, 2] - [235, 26]
(variable_declarator [225, 8] - [235, 25]
name: (identifier [225, 8] - [225, 23])
value: (as_expression [225, 26] - [235, 25]
(as_expression [225, 26] - [226, 31]
(member_expression [225, 26] - [226, 20]
object: (member_expression [225, 26] - [225, 39]
object: (identifier [225, 26] - [225, 31])
property: (property_identifier [225, 32] - [225, 39]))
property: (property_identifier [226, 5] - [226, 20]))
(predefined_type [226, 24] - [226, 31]))
(parenthesized_type [226, 35] - [235, 25]
(function_type [226, 36] - [235, 24]
parameters: (formal_parameters [226, 36] - [235, 5]
(required_parameter [227, 6] - [227, 36]
pattern: (identifier [227, 6] - [227, 17])
type: (type_annotation [227, 17] - [227, 36]
(nested_type_identifier [227, 19] - [227, 36]
module: (identifier [227, 19] - [227, 23])
name: (type_identifier [227, 24] - [227, 36]))))
(required_parameter [228, 6] - [228, 34]
pattern: (identifier [228, 6] - [228, 17])
type: (type_annotation [228, 17] - [228, 34]
(union_type [228, 19] - [228, 34]
(predefined_type [228, 19] - [228, 25])
(type_identifier [228, 28] - [228, 34]))))
(required_parameter [229, 6] - [229, 32]
pattern: (identifier [229, 6] - [229, 13])
type: (type_annotation [229, 13] - [229, 32]
(nested_type_identifier [229, 15] - [229, 32]
module: (identifier [229, 15] - [229, 19])
name: (type_identifier [229, 20] - [229, 32]))))
(required_parameter [230, 6] - [230, 30]
pattern: (identifier [230, 6] - [230, 13])
type: (type_annotation [230, 13] - [230, 30]
(union_type [230, 15] - [230, 30]
(predefined_type [230, 15] - [230, 21])
(type_identifier [230, 24] - [230, 30]))))
(required_parameter [231, 6] - [231, 24]
pattern: (identifier [231, 6] - [231, 16])
type: (type_annotation [231, 16] - [231, 24]
(predefined_type [231, 18] - [231, 24])))
(required_parameter [232, 6] - [232, 22]
pattern: (identifier [232, 6] - [232, 14])
type: (type_annotation [232, 14] - [232, 22]
(predefined_type [232, 16] - [232, 22])))
(required_parameter [233, 6] - [233, 31]
pattern: (identifier [233, 6] - [233, 12])
type: (type_annotation [233, 12] - [233, 31]
(nested_type_identifier [233, 14] - [233, 31]
module: (identifier [233, 14] - [233, 18])
name: (type_identifier [233, 19] - [233, 31]))))
(required_parameter [234, 6] - [234, 29]
pattern: (identifier [234, 6] - [234, 12])
type: (type_annotation [234, 12] - [234, 29]
(union_type [234, 14] - [234, 29]
(predefined_type [234, 14] - [234, 20])
(type_identifier [234, 23] - [234, 29])))))
return_type: (generic_type [235, 9] - [235, 24]
name: (type_identifier [235, 9] - [235, 16])
type_arguments: (type_arguments [235, 16] - [235, 24]
(predefined_type [235, 17] - [235, 23]))))))))
(lexical_declaration [237, 2] - [246, 4]
(variable_declarator [237, 8] - [246, 3]
name: (identifier [237, 8] - [237, 11])
value: (await_expression [237, 14] - [246, 3]
(call_expression [237, 20] - [246, 3]
function: (identifier [237, 20] - [237, 35])
arguments: (arguments [237, 35] - [246, 3]
(identifier [238, 4] - [238, 15])
(member_expression [239, 4] - [239, 19]
object: (identifier [239, 4] - [239, 12])
property: (property_identifier [239, 13] - [239, 19]))
(identifier [240, 4] - [240, 11])
(member_expression [241, 4] - [241, 15]
object: (identifier [241, 4] - [241, 8])
property: (property_identifier [241, 9] - [241, 15]))
(identifier [242, 4] - [242, 14])
(identifier [243, 4] - [243, 12])
(identifier [244, 4] - [244, 10])
(member_expression [245, 4] - [245, 17]
object: (identifier [245, 4] - [245, 10])
property: (property_identifier [245, 11] - [245, 17])))))))
(if_statement [248, 2] - [250, 3]
condition: (parenthesized_expression [248, 5] - [248, 16]
(binary_expression [248, 6] - [248, 15]
left: (identifier [248, 6] - [248, 9])
right: (number [248, 14] - [248, 15])))
consequence: (statement_block [248, 17] - [250, 3]
(throw_statement [249, 4] - [249, 58]
(new_expression [249, 10] - [249, 57]
constructor: (identifier [249, 14] - [249, 19])
arguments: (arguments [249, 19] - [249, 57]
(template_string [249, 20] - [249, 56]
(string_fragment [249, 21] - [249, 49])
(template_substitution [249, 49] - [249, 55]
(identifier [249, 51] - [249, 54]))))))))
(return_statement [252, 2] - [252, 16]
(identifier [252, 9] - [252, 15])))))
(export_statement [255, 0] - [262, 2]
declaration: (lexical_declaration [255, 7] - [262, 2]
(variable_declarator [255, 13] - [262, 1]
name: (identifier [255, 13] - [255, 25])
value: (object [255, 28] - [262, 1]
(method_definition [256, 2] - [258, 3]
name: (property_identifier [256, 6] - [256, 29])
parameters: (formal_parameters [256, 29] - [256, 31])
body: (statement_block [256, 32] - [258, 3]
(return_statement [257, 4] - [257, 35]
(identifier [257, 11] - [257, 34]))))
(method_definition [259, 2] - [261, 3]
name: (property_identifier [259, 6] - [259, 29])
parameters: (formal_parameters [259, 29] - [259, 39]
(required_parameter [259, 30] - [259, 38]
pattern: (identifier [259, 30] - [259, 33])
type: (type_annotation [259, 33] - [259, 38]
(predefined_type [259, 35] - [259, 38]))))
body: (statement_block [259, 40] - [261, 3]
(expression_statement [260, 4] - [260, 34]
(assignment_expression [260, 4] - [260, 33]
left: (identifier [260, 4] - [260, 27])
right: (identifier [260, 30] - [260, 33]))))))))))