(program [0, 0] - [16, 0] (import_statement [0, 0] - [0, 47] (import_clause [0, 7] - [0, 23] (named_imports [0, 7] - [0, 23] (import_specifier [0, 9] - [0, 21] name: (identifier [0, 9] - [0, 21])))) source: (string [0, 29] - [0, 46] (string_fragment [0, 30] - [0, 45]))) (import_statement [1, 0] - [1, 63] (import_clause [1, 7] - [1, 30] (named_imports [1, 7] - [1, 30] (import_specifier [1, 9] - [1, 28] name: (identifier [1, 9] - [1, 28])))) source: (string [1, 36] - [1, 62] (string_fragment [1, 37] - [1, 61]))) (import_statement [2, 0] - [2, 48] (import_clause [2, 12] - [2, 23] (named_imports [2, 12] - [2, 23] (import_specifier [2, 14] - [2, 21] name: (identifier [2, 14] - [2, 21])))) source: (string [2, 29] - [2, 47] (string_fragment [2, 30] - [2, 46]))) (expression_statement [4, 0] - [15, 3] (call_expression [4, 0] - [15, 2] function: (member_expression [4, 0] - [4, 9] object: (identifier [4, 0] - [4, 4]) property: (property_identifier [4, 5] - [4, 9])) arguments: (arguments [4, 9] - [15, 2] (string [4, 10] - [4, 63] (string_fragment [4, 11] - [4, 62])) (arrow_function [4, 65] - [15, 1] parameters: (formal_parameters [4, 65] - [4, 67]) body: (statement_block [4, 71] - [15, 1] (lexical_declaration [5, 2] - [12, 26] (variable_declarator [5, 8] - [12, 25] name: (identifier [5, 8] - [5, 19]) value: (as_expression [5, 22] - [12, 25] (as_expression [5, 22] - [12, 14] (object [5, 22] - [12, 3] (pair [6, 4] - [11, 5] key: (property_identifier [6, 4] - [6, 7]) value: (object [6, 9] - [11, 5] (pair [7, 6] - [10, 7] key: (property_identifier [7, 6] - [7, 12]) value: (arrow_function [7, 14] - [10, 7] parameters: (formal_parameters [7, 14] - [7, 28] (required_parameter [7, 15] - [7, 27] pattern: (identifier [7, 15] - [7, 19]) type: (type_annotation [7, 19] - [7, 27] (predefined_type [7, 21] - [7, 27])))) body: (statement_block [7, 32] - [10, 7] (if_statement [8, 8] - [8, 55] condition: (parenthesized_expression [8, 11] - [8, 40] (binary_expression [8, 12] - [8, 39] left: (identifier [8, 12] - [8, 16]) right: (string [8, 21] - [8, 39] (string_fragment [8, 22] - [8, 38])))) consequence: (return_statement [8, 41] - [8, 55] (string [8, 48] - [8, 54] (string_fragment [8, 49] - [8, 53])))) (return_statement [9, 8] - [9, 18] (string [9, 15] - [9, 17])))))))) (predefined_type [12, 7] - [12, 14])) (type_identifier [12, 18] - [12, 25])))) (expression_statement [14, 2] - [14, 61] (call_expression [14, 2] - [14, 60] function: (identifier [14, 2] - [14, 14]) arguments: (arguments [14, 14] - [14, 60] (call_expression [14, 15] - [14, 47] function: (identifier [14, 15] - [14, 34]) arguments: (arguments [14, 34] - [14, 47] (identifier [14, 35] - [14, 46]))) (string [14, 49] - [14, 59] (string_fragment [14, 50] - [14, 58])))))))))))