diff --git a/typescript-services/typescriptServices-tests.ts b/typescript-services/typescriptServices-tests.ts
index ab0da7a092..1c704b14ee 100644
--- a/typescript-services/typescriptServices-tests.ts
+++ b/typescript-services/typescriptServices-tests.ts
@@ -1,8 +1,23 @@
///
-import ts = require('typescript-services');
+// transpile
+function transpile(input: string): string {
+ return ts.transpile(input, { module: ts.ModuleKind.CommonJS });
+}
-// formatter:
-var snapshot = ts.SimpleText.fromString('var foo = 123;');
-var formatter = new ts.Services.Formatting.TextSnapshot(snapshot);
-console.log(formatter);
+// compile
+function compile(fileNames: string[], options: ts.CompilerOptions): number {
+ let program = ts.createProgram(fileNames, options);
+ let emitResult = program.emit();
+
+ let allDiagnostics = ts.getPreEmitDiagnostics(program).concat(emitResult.diagnostics);
+
+ allDiagnostics.forEach(diagnostic => {
+ let { line, character } = diagnostic.file.getLineAndCharacterOfPosition(diagnostic.start);
+ let message = ts.flattenDiagnosticMessageText(diagnostic.messageText, '\n');
+ console.log(`${diagnostic.file.fileName} (${line + 1},${character + 1}): ${message}`);
+ });
+
+ let exitCode = emitResult.emitSkipped ? 1 : 0;
+ return exitCode;
+}
diff --git a/typescript-services/typescriptServices.d.ts b/typescript-services/typescriptServices.d.ts
index dfa2c633d0..dbd4919bf0 100644
--- a/typescript-services/typescriptServices.d.ts
+++ b/typescript-services/typescriptServices.d.ts
@@ -1,9314 +1,2148 @@
-// Type definitions for TypeScript-Services
-// Project: https://www.npmjs.org/package/typescript-services
-// Definitions by: Basarat Ali Syed
-// Definitions: https://github.com/borisyankov/DefinitelyTyped
-
-declare module TypeScript {
- var DiagnosticCode: {
- error_TS_0_1: string;
- warning_TS_0_1: string;
- Unrecognized_escape_sequence: string;
- Unexpected_character_0: string;
- Missing_close_quote_character: string;
- Identifier_expected: string;
- _0_keyword_expected: string;
- _0_expected: string;
- Identifier_expected_0_is_a_keyword: string;
- Automatic_semicolon_insertion_not_allowed: string;
- Unexpected_token_0_expected: string;
- Trailing_separator_not_allowed: string;
- AsteriskSlash_expected: string;
- public_or_private_modifier_must_precede_static: string;
- Unexpected_token: string;
- Catch_clause_parameter_cannot_have_a_type_annotation: string;
- Rest_parameter_must_be_last_in_list: string;
- Parameter_cannot_have_question_mark_and_initializer: string;
- Required_parameter_cannot_follow_optional_parameter: string;
- Index_signatures_cannot_have_rest_parameters: string;
- Index_signature_parameter_cannot_have_accessibility_modifiers: string;
- Index_signature_parameter_cannot_have_a_question_mark: string;
- Index_signature_parameter_cannot_have_an_initializer: string;
- Index_signature_must_have_a_type_annotation: string;
- Index_signature_parameter_must_have_a_type_annotation: string;
- Index_signature_parameter_type_must_be_string_or_number: string;
- extends_clause_already_seen: string;
- extends_clause_must_precede_implements_clause: string;
- Classes_can_only_extend_a_single_class: string;
- implements_clause_already_seen: string;
- Accessibility_modifier_already_seen: string;
- _0_modifier_must_precede_1_modifier: string;
- _0_modifier_already_seen: string;
- _0_modifier_cannot_appear_on_a_class_element: string;
- Interface_declaration_cannot_have_implements_clause: string;
- super_invocation_cannot_have_type_arguments: string;
- Only_ambient_modules_can_use_quoted_names: string;
- Statements_are_not_allowed_in_ambient_contexts: string;
- Implementations_are_not_allowed_in_ambient_contexts: string;
- declare_modifier_not_allowed_for_code_already_in_an_ambient_context: string;
- Initializers_are_not_allowed_in_ambient_contexts: string;
- Parameter_property_declarations_can_only_be_used_in_a_non_ambient_constructor_declaration: string;
- Function_implementation_expected: string;
- Constructor_implementation_expected: string;
- Function_overload_name_must_be_0: string;
- _0_modifier_cannot_appear_on_a_module_element: string;
- declare_modifier_cannot_appear_on_an_interface_declaration: string;
- declare_modifier_required_for_top_level_element: string;
- Rest_parameter_cannot_be_optional: string;
- Rest_parameter_cannot_have_an_initializer: string;
- set_accessor_must_have_one_and_only_one_parameter: string;
- set_accessor_parameter_cannot_be_optional: string;
- set_accessor_parameter_cannot_have_an_initializer: string;
- set_accessor_cannot_have_rest_parameter: string;
- get_accessor_cannot_have_parameters: string;
- Modifiers_cannot_appear_here: string;
- Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher: string;
- Class_name_cannot_be_0: string;
- Interface_name_cannot_be_0: string;
- Enum_name_cannot_be_0: string;
- Module_name_cannot_be_0: string;
- Enum_member_must_have_initializer: string;
- Export_assignment_cannot_be_used_in_internal_modules: string;
- Export_assignment_not_allowed_in_module_with_exported_element: string;
- Module_cannot_have_multiple_export_assignments: string;
- Ambient_enum_elements_can_only_have_integer_literal_initializers: string;
- module_class_interface_enum_import_or_statement: string;
- constructor_function_accessor_or_variable: string;
- statement: string;
- case_or_default_clause: string;
- identifier: string;
- call_construct_index_property_or_function_signature: string;
- expression: string;
- type_name: string;
- property_or_accessor: string;
- parameter: string;
- type: string;
- type_parameter: string;
- declare_modifier_not_allowed_on_import_declaration: string;
- Function_overload_must_be_static: string;
- Function_overload_must_not_be_static: string;
- Parameter_property_declarations_cannot_be_used_in_a_constructor_overload: string;
- Invalid_reference_directive_syntax: string;
- Octal_literals_are_not_available_when_targeting_ECMAScript_5_and_higher: string;
- Accessors_are_not_allowed_in_ambient_contexts: string;
- _0_modifier_cannot_appear_on_a_constructor_declaration: string;
- _0_modifier_cannot_appear_on_a_parameter: string;
- Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement: string;
- Type_parameters_cannot_appear_on_a_constructor_declaration: string;
- Type_annotation_cannot_appear_on_a_constructor_declaration: string;
- Duplicate_identifier_0: string;
- The_name_0_does_not_exist_in_the_current_scope: string;
- The_name_0_does_not_refer_to_a_value: string;
- super_can_only_be_used_inside_a_class_instance_method: string;
- The_left_hand_side_of_an_assignment_expression_must_be_a_variable_property_or_indexer: string;
- Value_of_type_0_is_not_callable_Did_you_mean_to_include_new: string;
- Value_of_type_0_is_not_callable: string;
- Value_of_type_0_is_not_newable: string;
- Value_of_type_0_is_not_indexable_by_type_1: string;
- Operator_0_cannot_be_applied_to_types_1_and_2: string;
- Operator_0_cannot_be_applied_to_types_1_and_2_3: string;
- Cannot_convert_0_to_1: string;
- Cannot_convert_0_to_1_NL_2: string;
- Expected_var_class_interface_or_module: string;
- Operator_0_cannot_be_applied_to_type_1: string;
- Getter_0_already_declared: string;
- Setter_0_already_declared: string;
- Exported_class_0_extends_private_class_1: string;
- Exported_class_0_implements_private_interface_1: string;
- Exported_interface_0_extends_private_interface_1: string;
- Exported_class_0_extends_class_from_inaccessible_module_1: string;
- Exported_class_0_implements_interface_from_inaccessible_module_1: string;
- Exported_interface_0_extends_interface_from_inaccessible_module_1: string;
- Public_static_property_0_of_exported_class_has_or_is_using_private_type_1: string;
- Public_property_0_of_exported_class_has_or_is_using_private_type_1: string;
- Property_0_of_exported_interface_has_or_is_using_private_type_1: string;
- Exported_variable_0_has_or_is_using_private_type_1: string;
- Public_static_property_0_of_exported_class_is_using_inaccessible_module_1: string;
- Public_property_0_of_exported_class_is_using_inaccessible_module_1: string;
- Property_0_of_exported_interface_is_using_inaccessible_module_1: string;
- Exported_variable_0_is_using_inaccessible_module_1: string;
- Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_type_1: string;
- Parameter_0_of_public_static_property_setter_from_exported_class_has_or_is_using_private_type_1: string;
- Parameter_0_of_public_property_setter_from_exported_class_has_or_is_using_private_type_1: string;
- Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_type_1: string;
- Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_type_1: string;
- Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_type_1: string;
- Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_type_1: string;
- Parameter_0_of_method_from_exported_interface_has_or_is_using_private_type_1: string;
- Parameter_0_of_exported_function_has_or_is_using_private_type_1: string;
- Parameter_0_of_constructor_from_exported_class_is_using_inaccessible_module_1: string;
- Parameter_0_of_public_static_property_setter_from_exported_class_is_using_inaccessible_module_1: string;
- Parameter_0_of_public_property_setter_from_exported_class_is_using_inaccessible_module_1: string;
- Parameter_0_of_constructor_signature_from_exported_interface_is_using_inaccessible_module_1: string;
- Parameter_0_of_call_signature_from_exported_interface_is_using_inaccessible_module_1: string;
- Parameter_0_of_public_static_method_from_exported_class_is_using_inaccessible_module_1: string;
- Parameter_0_of_public_method_from_exported_class_is_using_inaccessible_module_1: string;
- Parameter_0_of_method_from_exported_interface_is_using_inaccessible_module_1: string;
- Parameter_0_of_exported_function_is_using_inaccessible_module_1: string;
- Return_type_of_public_static_property_getter_from_exported_class_has_or_is_using_private_type_0: string;
- Return_type_of_public_property_getter_from_exported_class_has_or_is_using_private_type_0: string;
- Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_type_0: string;
- Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_type_0: string;
- Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_type_0: string;
- Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_type_0: string;
- Return_type_of_public_method_from_exported_class_has_or_is_using_private_type_0: string;
- Return_type_of_method_from_exported_interface_has_or_is_using_private_type_0: string;
- Return_type_of_exported_function_has_or_is_using_private_type_0: string;
- Return_type_of_public_static_property_getter_from_exported_class_is_using_inaccessible_module_0: string;
- Return_type_of_public_property_getter_from_exported_class_is_using_inaccessible_module_0: string;
- Return_type_of_constructor_signature_from_exported_interface_is_using_inaccessible_module_0: string;
- Return_type_of_call_signature_from_exported_interface_is_using_inaccessible_module_0: string;
- Return_type_of_index_signature_from_exported_interface_is_using_inaccessible_module_0: string;
- Return_type_of_public_static_method_from_exported_class_is_using_inaccessible_module_0: string;
- Return_type_of_public_method_from_exported_class_is_using_inaccessible_module_0: string;
- Return_type_of_method_from_exported_interface_is_using_inaccessible_module_0: string;
- Return_type_of_exported_function_is_using_inaccessible_module_0: string;
- new_T_cannot_be_used_to_create_an_array_Use_new_Array_T_instead: string;
- A_parameter_list_must_follow_a_generic_type_argument_list_expected: string;
- Multiple_constructor_implementations_are_not_allowed: string;
- Unable_to_resolve_external_module_0: string;
- Module_cannot_be_aliased_to_a_non_module_type: string;
- A_class_may_only_extend_another_class: string;
- A_class_may_only_implement_another_class_or_interface: string;
- An_interface_may_only_extend_another_class_or_interface: string;
- Unable_to_resolve_type: string;
- Unable_to_resolve_type_of_0: string;
- Unable_to_resolve_type_parameter_constraint: string;
- Type_parameter_constraint_cannot_be_a_primitive_type: string;
- Supplied_parameters_do_not_match_any_signature_of_call_target: string;
- Supplied_parameters_do_not_match_any_signature_of_call_target_NL_0: string;
- Invalid_new_expression: string;
- Call_signatures_used_in_a_new_expression_must_have_a_void_return_type: string;
- Could_not_select_overload_for_new_expression: string;
- Type_0_does_not_satisfy_the_constraint_1_for_type_parameter_2: string;
- Could_not_select_overload_for_call_expression: string;
- Cannot_invoke_an_expression_whose_type_lacks_a_call_signature: string;
- Calls_to_super_are_only_valid_inside_a_class: string;
- Generic_type_0_requires_1_type_argument_s: string;
- Type_of_array_literal_cannot_be_determined_Best_common_type_could_not_be_found_for_array_elements: string;
- Could_not_find_enclosing_symbol_for_dotted_name_0: string;
- The_property_0_does_not_exist_on_value_of_type_1: string;
- Could_not_find_symbol_0: string;
- get_and_set_accessor_must_have_the_same_type: string;
- this_cannot_be_referenced_in_current_location: string;
- Static_members_cannot_reference_class_type_parameters: string;
- Class_0_is_recursively_referenced_as_a_base_type_of_itself: string;
- Interface_0_is_recursively_referenced_as_a_base_type_of_itself: string;
- super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class: string;
- super_cannot_be_referenced_in_non_derived_classes: string;
- A_super_call_must_be_the_first_statement_in_the_constructor_when_a_class_contains_initialized_properties_or_has_parameter_properties: string;
- Constructors_for_derived_classes_must_contain_a_super_call: string;
- Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors: string;
- _0_1_is_inaccessible: string;
- this_cannot_be_referenced_within_module_bodies: string;
- Invalid_expression_types_not_known_to_support_the_addition_operator: string;
- The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_or_an_enum_type: string;
- The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_or_an_enum_type: string;
- The_type_of_a_unary_arithmetic_operation_operand_must_be_of_type_any_number_or_an_enum_type: string;
- Variable_declarations_of_a_for_statement_cannot_use_a_type_annotation: string;
- Variable_declarations_of_a_for_statement_must_be_of_types_string_or_any: string;
- The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter: string;
- The_left_hand_side_of_an_in_expression_must_be_of_types_any_string_or_number: string;
- The_right_hand_side_of_an_in_expression_must_be_of_type_any_an_object_type_or_a_type_parameter: string;
- The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter: string;
- The_right_hand_side_of_an_instanceof_expression_must_be_of_type_any_or_of_a_type_assignable_to_the_Function_interface_type: string;
- Setters_cannot_return_a_value: string;
- Tried_to_query_type_of_uninitialized_module_0: string;
- Tried_to_set_variable_type_to_uninitialized_module_type_0: string;
- Type_0_does_not_have_type_parameters: string;
- Getters_must_return_a_value: string;
- Getter_and_setter_accessors_do_not_agree_in_visibility: string;
- Invalid_left_hand_side_of_assignment_expression: string;
- Function_declared_a_non_void_return_type_but_has_no_return_expression: string;
- Cannot_resolve_return_type_reference: string;
- Constructors_cannot_have_a_return_type_of_void: string;
- Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2: string;
- All_symbols_within_a_with_block_will_be_resolved_to_any: string;
- Import_declarations_in_an_internal_module_cannot_reference_an_external_module: string;
- Class_0_declares_interface_1_but_does_not_implement_it_NL_2: string;
- Class_0_declares_class_1_as_an_interface_but_does_not_implement_it_NL_2: string;
- The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_property_or_indexer: string;
- this_cannot_be_referenced_in_static_initializers_in_a_class_body: string;
- Class_0_cannot_extend_class_1_NL_2: string;
- Interface_0_cannot_extend_class_1_NL_2: string;
- Interface_0_cannot_extend_interface_1_NL_2: string;
- Duplicate_overload_signature_for_0: string;
- Duplicate_constructor_overload_signature: string;
- Duplicate_overload_call_signature: string;
- Duplicate_overload_construct_signature: string;
- Overload_signature_is_not_compatible_with_function_definition: string;
- Overload_signature_is_not_compatible_with_function_definition_NL_0: string;
- Overload_signatures_must_all_be_public_or_private: string;
- Overload_signatures_must_all_be_exported_or_not_exported: string;
- Overload_signatures_must_all_be_ambient_or_non_ambient: string;
- Overload_signatures_must_all_be_optional_or_required: string;
- Specialized_overload_signature_is_not_assignable_to_any_non_specialized_signature: string;
- this_cannot_be_referenced_in_constructor_arguments: string;
- Instance_member_cannot_be_accessed_off_a_class: string;
- Untyped_function_calls_may_not_accept_type_arguments: string;
- Non_generic_functions_may_not_accept_type_arguments: string;
- A_generic_type_may_not_reference_itself_with_a_wrapped_form_of_its_own_type_parameters: string;
- Rest_parameters_must_be_array_types: string;
- Overload_signature_implementation_cannot_use_specialized_type: string;
- Export_assignments_may_only_be_used_at_the_top_level_of_external_modules: string;
- Export_assignments_may_only_be_made_with_variables_functions_classes_interfaces_enums_and_internal_modules: string;
- Only_public_methods_of_the_base_class_are_accessible_via_the_super_keyword: string;
- Numeric_indexer_type_0_must_be_assignable_to_string_indexer_type_1: string;
- Numeric_indexer_type_0_must_be_assignable_to_string_indexer_type_1_NL_2: string;
- All_numerically_named_properties_must_be_assignable_to_numeric_indexer_type_0: string;
- All_numerically_named_properties_must_be_assignable_to_numeric_indexer_type_0_NL_1: string;
- All_named_properties_must_be_assignable_to_string_indexer_type_0: string;
- All_named_properties_must_be_assignable_to_string_indexer_type_0_NL_1: string;
- Generic_type_references_must_include_all_type_arguments: string;
- Default_arguments_are_only_allowed_in_implementation: string;
- Overloads_cannot_differ_only_by_return_type: string;
- Function_expression_declared_a_non_void_return_type_but_has_no_return_expression: string;
- Import_declaration_referencing_identifier_from_internal_module_can_only_be_made_with_variables_functions_classes_interfaces_enums_and_internal_modules: string;
- Could_not_find_symbol_0_in_module_1: string;
- Unable_to_resolve_module_reference_0: string;
- Could_not_find_module_0_in_module_1: string;
- Exported_import_declaration_0_is_assigned_value_with_type_that_has_or_is_using_private_type_1: string;
- Exported_import_declaration_0_is_assigned_value_with_type_that_is_using_inaccessible_module_1: string;
- Exported_import_declaration_0_is_assigned_type_that_has_or_is_using_private_type_1: string;
- Exported_import_declaration_0_is_assigned_type_that_is_using_inaccessible_module_1: string;
- Exported_import_declaration_0_is_assigned_container_that_is_or_is_using_inaccessible_module_1: string;
- Type_name_0_in_extends_clause_does_not_reference_constructor_function_for_1: string;
- Internal_module_reference_0_in_import_declaration_does_not_reference_module_instance_for_1: string;
- Module_0_cannot_merge_with_previous_declaration_of_1_in_a_different_file_2: string;
- Interface_0_cannot_simultaneously_extend_types_1_and_2_NL_3: string;
- Initializer_of_parameter_0_cannot_reference_identifier_1_declared_after_it: string;
- Ambient_external_module_declaration_cannot_be_reopened: string;
- All_declarations_of_merged_declaration_0_must_be_exported_or_not_exported: string;
- super_cannot_be_referenced_in_constructor_arguments: string;
- Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class: string;
- Ambient_external_module_declaration_must_be_defined_in_global_context: string;
- Ambient_external_module_declaration_cannot_specify_relative_module_name: string;
- Import_declaration_in_an_ambient_external_module_declaration_cannot_reference_external_module_through_relative_external_module_name: string;
- Could_not_find_the_best_common_type_of_types_of_all_return_statement_expressions: string;
- Import_declaration_cannot_refer_to_external_module_reference_when_noResolve_option_is_set: string;
- Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference: string;
- continue_statement_can_only_be_used_within_an_enclosing_iteration_statement: string;
- break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement: string;
- Jump_target_not_found: string;
- Jump_target_cannot_cross_function_boundary: string;
- Duplicate_identifier_super_Compiler_uses_super_to_capture_base_class_reference: string;
- Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference: string;
- Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference: string;
- TypeParameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_type_1: string;
- TypeParameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_type_1: string;
- TypeParameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_type_1: string;
- TypeParameter_0_of_public_method_from_exported_class_has_or_is_using_private_type_1: string;
- TypeParameter_0_of_method_from_exported_interface_has_or_is_using_private_type_1: string;
- TypeParameter_0_of_exported_function_has_or_is_using_private_type_1: string;
- TypeParameter_0_of_constructor_signature_from_exported_interface_is_using_inaccessible_module_1: string;
- TypeParameter_0_of_call_signature_from_exported_interface_is_using_inaccessible_module_1: string;
- TypeParameter_0_of_public_static_method_from_exported_class_is_using_inaccessible_module_1: string;
- TypeParameter_0_of_public_method_from_exported_class_is_using_inaccessible_module_1: string;
- TypeParameter_0_of_method_from_exported_interface_is_using_inaccessible_module_1: string;
- TypeParameter_0_of_exported_function_is_using_inaccessible_module_1: string;
- TypeParameter_0_of_exported_class_has_or_is_using_private_type_1: string;
- TypeParameter_0_of_exported_interface_has_or_is_using_private_type_1: string;
- TypeParameter_0_of_exported_class_is_using_inaccessible_module_1: string;
- TypeParameter_0_of_exported_interface_is_using_inaccessible_module_1: string;
- Duplicate_identifier_i_Compiler_uses_i_to_initialize_rest_parameter: string;
- Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters: string;
- Type_of_conditional_0_must_be_identical_to_1_or_2: string;
- Type_of_conditional_0_must_be_identical_to_1_2_or_3: string;
- Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_an_external_module: string;
- Constraint_of_a_type_parameter_cannot_reference_any_type_parameter_from_the_same_type_parameter_list: string;
- Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor: string;
- Parameter_0_cannot_be_referenced_in_its_initializer: string;
- Duplicate_string_index_signature: string;
- Duplicate_number_index_signature: string;
- All_declarations_of_an_interface_must_have_identical_type_parameters: string;
- Expression_resolves_to_variable_declaration_i_that_compiler_uses_to_initialize_rest_parameter: string;
- Type_0_is_missing_property_1_from_type_2: string;
- Types_of_property_0_of_types_1_and_2_are_incompatible: string;
- Types_of_property_0_of_types_1_and_2_are_incompatible_NL_3: string;
- Property_0_defined_as_private_in_type_1_is_defined_as_public_in_type_2: string;
- Property_0_defined_as_public_in_type_1_is_defined_as_private_in_type_2: string;
- Types_0_and_1_define_property_2_as_private: string;
- Call_signatures_of_types_0_and_1_are_incompatible: string;
- Call_signatures_of_types_0_and_1_are_incompatible_NL_2: string;
- Type_0_requires_a_call_signature_but_type_1_lacks_one: string;
- Construct_signatures_of_types_0_and_1_are_incompatible: string;
- Construct_signatures_of_types_0_and_1_are_incompatible_NL_2: string;
- Type_0_requires_a_construct_signature_but_type_1_lacks_one: string;
- Index_signatures_of_types_0_and_1_are_incompatible: string;
- Index_signatures_of_types_0_and_1_are_incompatible_NL_2: string;
- Call_signature_expects_0_or_fewer_parameters: string;
- Could_not_apply_type_0_to_argument_1_which_is_of_type_2: string;
- Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function: string;
- Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function: string;
- Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor: string;
- Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_property: string;
- Types_of_static_property_0_of_class_1_and_class_2_are_incompatible: string;
- Types_of_static_property_0_of_class_1_and_class_2_are_incompatible_NL_3: string;
- Type_reference_cannot_refer_to_container_0: string;
- Type_reference_must_refer_to_type: string;
- In_enums_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_the_first_enum_element: string;
- _0_overload_s: string;
- Variable_declaration_cannot_have_the_same_name_as_an_import_declaration: string;
- Signature_expected_0_type_arguments_got_1_instead: string;
- Property_0_defined_as_optional_in_type_1_but_is_required_in_type_2: string;
- Types_0_and_1_originating_in_infinitely_expanding_type_reference_do_not_refer_to_same_named_type: string;
- Types_0_and_1_originating_in_infinitely_expanding_type_reference_have_incompatible_type_arguments: string;
- Types_0_and_1_originating_in_infinitely_expanding_type_reference_have_incompatible_type_arguments_NL_2: string;
- Named_properties_0_of_types_1_and_2_are_not_identical: string;
- Types_of_string_indexer_of_types_0_and_1_are_not_identical: string;
- Types_of_number_indexer_of_types_0_and_1_are_not_identical: string;
- Type_of_number_indexer_in_type_0_is_not_assignable_to_string_indexer_type_in_type_1_NL_2: string;
- Type_of_property_0_in_type_1_is_not_assignable_to_string_indexer_type_in_type_2_NL_3: string;
- Type_of_property_0_in_type_1_is_not_assignable_to_number_indexer_type_in_type_2_NL_3: string;
- Static_property_0_defined_as_private_in_type_1_is_defined_as_public_in_type_2: string;
- Static_property_0_defined_as_public_in_type_1_is_defined_as_private_in_type_2: string;
- Types_0_and_1_define_static_property_2_as_private: string;
- Current_host_does_not_support_0_option: string;
- ECMAScript_target_version_0_not_supported_Specify_a_valid_target_version_1_default_or_2: string;
- Module_code_generation_0_not_supported: string;
- Could_not_find_file_0: string;
- A_file_cannot_have_a_reference_to_itself: string;
- Cannot_resolve_referenced_file_0: string;
- Cannot_find_the_common_subdirectory_path_for_the_input_files: string;
- Emit_Error_0: string;
- Cannot_read_file_0_1: string;
- Unsupported_file_encoding: string;
- Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1: string;
- Unsupported_locale_0: string;
- Execution_Failed_NL: string;
- Invalid_call_to_up: string;
- Invalid_call_to_down: string;
- Base64_value_0_finished_with_a_continuation_bit: string;
- Unknown_option_0: string;
- Expected_0_arguments_to_message_got_1_instead: string;
- Expected_the_message_0_to_have_1_arguments_but_it_had_2: string;
- Could_not_delete_file_0: string;
- Could_not_create_directory_0: string;
- Error_while_executing_file_0: string;
- Cannot_compile_external_modules_unless_the_module_flag_is_provided: string;
- Option_mapRoot_cannot_be_specified_without_specifying_sourcemap_option: string;
- Option_sourceRoot_cannot_be_specified_without_specifying_sourcemap_option: string;
- Options_mapRoot_and_sourceRoot_cannot_be_specified_without_specifying_sourcemap_option: string;
- Option_0_specified_without_1: string;
- codepage_option_not_supported_on_current_platform: string;
- Concatenate_and_emit_output_to_single_file: string;
- Generates_corresponding_0_file: string;
- Specifies_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations: string;
- Specifies_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations: string;
- Watch_input_files: string;
- Redirect_output_structure_to_the_directory: string;
- Do_not_emit_comments_to_output: string;
- Skip_resolution_and_preprocessing: string;
- Specify_ECMAScript_target_version_0_default_or_1: string;
- Specify_module_code_generation_0_or_1: string;
- Print_this_message: string;
- Print_the_compiler_s_version_0: string;
- Allow_use_of_deprecated_0_keyword_when_referencing_an_external_module: string;
- Specify_locale_for_errors_and_messages_For_example_0_or_1: string;
- Syntax_0: string;
- options: string;
- file1: string;
- Examples: string;
- Options: string;
- Insert_command_line_options_and_files_from_a_file: string;
- Version_0: string;
- Use_the_0_flag_to_see_options: string;
- NL_Recompiling_0: string;
- STRING: string;
- KIND: string;
- file2: string;
- VERSION: string;
- LOCATION: string;
- DIRECTORY: string;
- NUMBER: string;
- Specify_the_codepage_to_use_when_opening_source_files: string;
- Additional_locations: string;
- This_version_of_the_Javascript_runtime_does_not_support_the_0_function: string;
- Unknown_rule: string;
- Invalid_line_number_0: string;
- Warn_on_expressions_and_declarations_with_an_implied_any_type: string;
- Variable_0_implicitly_has_an_any_type: string;
- Parameter_0_of_1_implicitly_has_an_any_type: string;
- Parameter_0_of_function_type_implicitly_has_an_any_type: string;
- Member_0_of_object_type_implicitly_has_an_any_type: string;
- new_expression_which_lacks_a_constructor_signature_implicitly_has_an_any_type: string;
- _0_which_lacks_return_type_annotation_implicitly_has_an_any_return_type: string;
- Function_expression_which_lacks_return_type_annotation_implicitly_has_an_any_return_type: string;
- Parameter_0_of_lambda_function_implicitly_has_an_any_type: string;
- Constructor_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type: string;
- Lambda_Function_which_lacks_return_type_annotation_implicitly_has_an_any_return_type: string;
- Array_Literal_implicitly_has_an_any_type_from_widening: string;
- _0_which_lacks_get_accessor_and_parameter_type_annotation_on_set_accessor_implicitly_has_an_any_type: string;
- Index_signature_of_object_type_implicitly_has_an_any_type: string;
- Object_literal_s_property_0_implicitly_has_an_any_type_from_widening: string;
- };
-}
-declare module TypeScript {
- class ArrayUtilities {
- static isArray(value: any): boolean;
- static sequenceEquals(array1: T[], array2: T[], equals: (v1: T, v2: T) => boolean): boolean;
- static contains(array: T[], value: T): boolean;
- static groupBy(array: T[], func: (v: T) => string): any;
- static distinct(array: T[], equalsFn?: (a: T, b: T) => boolean): T[];
- static min(array: T[], func: (v: T) => number): number;
- static max(array: T[], func: (v: T) => number): number;
- static last(array: T[]): T;
- static lastOrDefault(array: T[], predicate: (v: T, index: number) => boolean): T;
- static firstOrDefault(array: T[], func: (v: T, index: number) => boolean): T;
- static first(array: T[], func?: (v: T, index: number) => boolean): T;
- static sum(array: T[], func: (v: T) => number): number;
- static select(values: T[], func: (v: T) => S): S[];
- static where(values: T[], func: (v: T) => boolean): T[];
- static any(array: T[], func: (v: T) => boolean): boolean;
- static all(array: T[], func: (v: T) => boolean): boolean;
- static binarySearch(array: number[], value: number): number;
- static createArray(length: number, defaultValue: any): T[];
- static grow(array: T[], length: number, defaultValue: T): void;
- static copy(sourceArray: T[], sourceIndex: number, destinationArray: T[], destinationIndex: number, length: number): void;
- static indexOf(array: T[], predicate: (v: T) => boolean): number;
- }
-}
-declare module TypeScript {
- interface IBitVector {
- valueAt(index: number): boolean;
- setValueAt(index: number, value: boolean): void;
- release(): void;
- }
- module BitVector {
- function getBitVector(allowUndefinedValues: boolean): IBitVector;
- }
-}
-declare module TypeScript {
- interface IBitMatrix {
- valueAt(x: number, y: number): boolean;
- setValueAt(x: number, y: number, value: boolean): void;
- release(): void;
- }
- module BitMatrix {
- function getBitMatrix(allowUndefinedValues: boolean): IBitMatrix;
- }
-}
-declare module TypeScript {
- enum Constants {
- Max31BitInteger = 1073741823,
- Min31BitInteger = -1073741824,
- }
-}
-declare module TypeScript {
- enum AssertionLevel {
- None = 0,
- Normal = 1,
- Aggressive = 2,
- VeryAggressive = 3,
- }
- class Debug {
- private static currentAssertionLevel;
- static shouldAssert(level: AssertionLevel): boolean;
- static assert(expression: any, message?: string, verboseDebugInfo?: () => string): void;
- static fail(message?: string): void;
- }
-}
-declare module TypeScript {
- var LocalizedDiagnosticMessages: IIndexable;
- class Location {
- private _fileName;
- private _lineMap;
- private _start;
- private _length;
- constructor(fileName: string, lineMap: LineMap, start: number, length: number);
- public fileName(): string;
- public lineMap(): LineMap;
- public line(): number;
- public character(): number;
- public start(): number;
- public length(): number;
- static equals(location1: Location, location2: Location): boolean;
- }
- class Diagnostic extends Location {
- private _diagnosticKey;
- private _arguments;
- private _additionalLocations;
- constructor(fileName: string, lineMap: LineMap, start: number, length: number, diagnosticKey: string, _arguments?: any[], additionalLocations?: Location[]);
- public toJSON(key: any): any;
- public diagnosticKey(): string;
- public arguments(): any[];
- public text(): string;
- public message(): string;
- public additionalLocations(): Location[];
- static equals(diagnostic1: Diagnostic, diagnostic2: Diagnostic): boolean;
- public info(): DiagnosticInfo;
- }
- function newLine(): string;
- function getLocalizedText(diagnosticKey: string, args: any[]): string;
- function getDiagnosticMessage(diagnosticKey: string, args: any[]): string;
-}
-declare module TypeScript {
- interface DiagnosticInfo {
- category: DiagnosticCategory;
- message: string;
- code: number;
- }
-}
-declare module TypeScript {
- class Errors {
- static argument(argument: string, message?: string): Error;
- static argumentOutOfRange(argument: string): Error;
- static argumentNull(argument: string): Error;
- static abstract(): Error;
- static notYetImplemented(): Error;
- static invalidOperation(message?: string): Error;
- }
-}
-declare module TypeScript {
- class Hash {
- private static FNV_BASE;
- private static FNV_PRIME;
- private static computeFnv1aCharArrayHashCode(text, start, len);
- static computeSimple31BitCharArrayHashCode(key: number[], start: number, len: number): number;
- static computeSimple31BitStringHashCode(key: string): number;
- static computeMurmur2StringHashCode(key: string, seed: number): number;
- private static primes;
- static getPrime(min: number): number;
- static expandPrime(oldSize: number): number;
- static combine(value: number, currentHash: number): number;
- }
-}
-declare module TypeScript.Collections {
- var DefaultHashTableCapacity: number;
- class HashTable {
- private hash;
- private entries;
- private count;
- constructor(capacity: number, hash: (k: TKey) => number);
- public set(key: TKey, value: TValue): void;
- public add(key: TKey, value: TValue): void;
- public containsKey(key: TKey): boolean;
- public get(key: TKey): TValue;
- private computeHashCode(key);
- private addOrSet(key, value, throwOnExistingEntry);
- private findEntry(key, hashCode);
- private addEntry(key, value, hashCode);
- private grow();
- }
- function createHashTable(capacity?: number, hash?: (k: TKey) => number): HashTable;
- function identityHashCode(value: any): number;
-}
-declare module TypeScript {
- var nodeMakeDirectoryTime: number;
- var nodeCreateBufferTime: number;
- var nodeWriteFileSyncTime: number;
- enum ByteOrderMark {
- None = 0,
- Utf8 = 1,
- Utf16BigEndian = 2,
- Utf16LittleEndian = 3,
- }
- class FileInformation {
- public contents: string;
- public byteOrderMark: ByteOrderMark;
- constructor(contents: string, byteOrderMark: ByteOrderMark);
- }
- interface IEnvironment {
- supportsCodePage(): boolean;
- readFile(path: string, codepage: number): FileInformation;
- writeFile(path: string, contents: string, writeByteOrderMark: boolean): void;
- deleteFile(path: string): void;
- fileExists(path: string): boolean;
- directoryExists(path: string): boolean;
- listFiles(path: string, re?: RegExp, options?: {
- recursive?: boolean;
- }): string[];
- arguments: string[];
- standardOut: ITextWriter;
- currentDirectory(): string;
- newLine: string;
- }
- var Environment: IEnvironment;
-}
-declare module TypeScript {
- interface IIndexable {
- [s: string]: T;
- }
-}
-declare module TypeScript {
- module IntegerUtilities {
- function integerDivide(numerator: number, denominator: number): number;
- function integerMultiplyLow32Bits(n1: number, n2: number): number;
- function integerMultiplyHigh32Bits(n1: number, n2: number): number;
- function isInteger(text: string): boolean;
- function isHexInteger(text: string): boolean;
- }
-}
-declare module TypeScript {
- interface Iterator {
- moveNext(): boolean;
- current(): T;
- }
-}
-declare module TypeScript {
- interface ILineAndCharacter {
- line: number;
- character: number;
- }
-}
-declare module TypeScript {
- class LineMap {
- private _computeLineStarts;
- private length;
- static empty: LineMap;
- private _lineStarts;
- constructor(_computeLineStarts: () => number[], length: number);
- public toJSON(key: any): {
- lineStarts: number[];
- length: number;
- };
- public equals(other: LineMap): boolean;
- public lineStarts(): number[];
- public lineCount(): number;
- public getPosition(line: number, character: number): number;
- public getLineNumberFromPosition(position: number): number;
- public getLineStartPosition(lineNumber: number): number;
- public fillLineAndCharacterFromPosition(position: number, lineAndCharacter: ILineAndCharacter): void;
- public getLineAndCharacterFromPosition(position: number): LineAndCharacter;
- }
-}
-declare module TypeScript {
- class LineAndCharacter {
- private _line;
- private _character;
- constructor(line: number, character: number);
- public line(): number;
- public character(): number;
- }
-}
-declare module TypeScript {
- class MathPrototype {
- static max(a: number, b: number): number;
- static min(a: number, b: number): number;
- }
-}
-declare module TypeScript.Collections {
- var DefaultStringTableCapacity: number;
- class StringTable {
- private entries;
- private count;
- constructor(capacity: number);
- public addCharArray(key: number[], start: number, len: number): string;
- private findCharArrayEntry(key, start, len, hashCode);
- private addEntry(text, hashCode);
- private grow();
- private static textCharArrayEquals(text, array, start, length);
- }
- var DefaultStringTable: StringTable;
-}
-declare module TypeScript {
- class StringUtilities {
- static isString(value: any): boolean;
- static fromCharCodeArray(array: number[]): string;
- static endsWith(string: string, value: string): boolean;
- static startsWith(string: string, value: string): boolean;
- static copyTo(source: string, sourceIndex: number, destination: number[], destinationIndex: number, count: number): void;
- static repeat(value: string, count: number): string;
- static stringEquals(val1: string, val2: string): boolean;
- }
-}
-declare module TypeScript {
- class Timer {
- public startTime: number;
- public time: number;
- public start(): void;
- public end(): void;
- }
-}
-declare module TypeScript {
- enum DiagnosticCategory {
- Warning = 0,
- Error = 1,
- Message = 2,
- NoPrefix = 3,
- }
-}
-declare module TypeScript {
- var diagnosticInformationMap: IIndexable;
-}
-declare module TypeScript {
- enum CharacterCodes {
- nullCharacter = 0,
- maxAsciiCharacter = 127,
- lineFeed = 10,
- carriageReturn = 13,
- lineSeparator = 8232,
- paragraphSeparator = 8233,
- nextLine = 133,
- space = 32,
- nonBreakingSpace = 160,
- enQuad = 8192,
- emQuad = 8193,
- enSpace = 8194,
- emSpace = 8195,
- threePerEmSpace = 8196,
- fourPerEmSpace = 8197,
- sixPerEmSpace = 8198,
- figureSpace = 8199,
- punctuationSpace = 8200,
- thinSpace = 8201,
- hairSpace = 8202,
- zeroWidthSpace = 8203,
- narrowNoBreakSpace = 8239,
- ideographicSpace = 12288,
- _ = 95,
- $ = 36,
- _0 = 48,
- _7 = 55,
- _9 = 57,
- a = 97,
- b = 98,
- c = 99,
- d = 100,
- e = 101,
- f = 102,
- g = 103,
- h = 104,
- i = 105,
- k = 107,
- l = 108,
- m = 109,
- n = 110,
- o = 111,
- p = 112,
- q = 113,
- r = 114,
- s = 115,
- t = 116,
- u = 117,
- v = 118,
- w = 119,
- x = 120,
- y = 121,
- z = 122,
- A = 65,
- E = 69,
- F = 70,
- X = 88,
- Z = 90,
- ampersand = 38,
- asterisk = 42,
- at = 64,
- backslash = 92,
- bar = 124,
- caret = 94,
- closeBrace = 125,
- closeBracket = 93,
- closeParen = 41,
- colon = 58,
- comma = 44,
- dot = 46,
- doubleQuote = 34,
- equals = 61,
- exclamation = 33,
- greaterThan = 62,
- lessThan = 60,
- minus = 45,
- openBrace = 123,
- openBracket = 91,
- openParen = 40,
- percent = 37,
- plus = 43,
- question = 63,
- semicolon = 59,
- singleQuote = 39,
- slash = 47,
- tilde = 126,
- backspace = 8,
- formFeed = 12,
- byteOrderMark = 65279,
- tab = 9,
- verticalTab = 11,
- }
-}
-declare module TypeScript {
- interface IScriptSnapshot {
- getText(start: number, end: number): string;
- getLength(): number;
- getLineStartPositions(): number[];
- getTextChangeRangeSinceVersion(scriptVersion: number): TextChangeRange;
- }
- module ScriptSnapshot {
- function fromString(text: string): IScriptSnapshot;
- }
-}
-declare module TypeScript {
- interface ISimpleText {
- length(): number;
- copyTo(sourceIndex: number, destination: number[], destinationIndex: number, count: number): void;
- substr(start: number, length: number, intern: boolean): string;
- subText(span: TextSpan): ISimpleText;
- charCodeAt(index: number): number;
- lineMap(): LineMap;
- }
- interface IText extends ISimpleText {
- lineCount(): number;
- lines(): ITextLine[];
- charCodeAt(position: number): number;
- getLineFromLineNumber(lineNumber: number): ITextLine;
- getLineFromPosition(position: number): ITextLine;
- getLineNumberFromPosition(position: number): number;
- getLinePosition(position: number): LineAndCharacter;
- toString(span?: TextSpan): string;
- }
-}
-declare module TypeScript {
- interface ITextLine {
- start(): number;
- end(): number;
- endIncludingLineBreak(): number;
- extent(): TextSpan;
- extentIncludingLineBreak(): TextSpan;
- toString(): string;
- lineNumber(): number;
- }
-}
-declare module TypeScript {
- module LineMap1 {
- function fromSimpleText(text: ISimpleText): LineMap;
- function fromScriptSnapshot(scriptSnapshot: IScriptSnapshot): LineMap;
- function fromString(text: string): LineMap;
- }
-}
-declare module TypeScript.TextFactory {
- function createText(value: string): IText;
-}
-declare module TypeScript.SimpleText {
- function fromString(value: string): ISimpleText;
- function fromScriptSnapshot(scriptSnapshot: IScriptSnapshot): ISimpleText;
-}
-declare module TypeScript.TextUtilities {
- interface ICharacterSequence {
- charCodeAt(index: number): number;
- length: number;
- }
- function parseLineStarts(text: ICharacterSequence): number[];
- function getLengthOfLineBreakSlow(text: ICharacterSequence, index: number, c: number): number;
- function getLengthOfLineBreak(text: ICharacterSequence, index: number): number;
- function isAnyLineBreakCharacter(c: number): boolean;
-}
-declare module TypeScript {
- class TextSpan {
- private _start;
- private _length;
- constructor(start: number, length: number);
- public start(): number;
- public length(): number;
- public end(): number;
- public isEmpty(): boolean;
- public containsPosition(position: number): boolean;
- public containsTextSpan(span: TextSpan): boolean;
- public overlapsWith(span: TextSpan): boolean;
- public overlap(span: TextSpan): TextSpan;
- public intersectsWithTextSpan(span: TextSpan): boolean;
- public intersectsWith(start: number, length: number): boolean;
- public intersectsWithPosition(position: number): boolean;
- public intersection(span: TextSpan): TextSpan;
- static fromBounds(start: number, end: number): TextSpan;
- }
-}
-declare module TypeScript {
- class TextChangeRange {
- static unchanged: TextChangeRange;
- private _span;
- private _newLength;
- constructor(span: TextSpan, newLength: number);
- public span(): TextSpan;
- public newLength(): number;
- public newSpan(): TextSpan;
- public isUnchanged(): boolean;
- static collapseChangesFromSingleVersion(changes: TextChangeRange[]): TextChangeRange;
- static collapseChangesAcrossMultipleVersions(changes: TextChangeRange[]): TextChangeRange;
- }
-}
-declare module TypeScript {
- class CharacterInfo {
- static isDecimalDigit(c: number): boolean;
- static isOctalDigit(c: number): boolean;
- static isHexDigit(c: number): boolean;
- static hexValue(c: number): number;
- static isWhitespace(ch: number): boolean;
- static isLineTerminator(ch: number): boolean;
- }
-}
-declare module TypeScript {
- enum SyntaxConstants {
- TriviaNewLineMask = 1,
- TriviaCommentMask = 2,
- TriviaFullWidthShift = 2,
- NodeDataComputed = 1,
- NodeIncrementallyUnusableMask = 2,
- NodeParsedInStrictModeMask = 4,
- NodeFullWidthShift = 3,
- IsVariableWidthKeyword = -2147483648,
- }
-}
-declare class FormattingOptions {
- public useTabs: boolean;
- public spacesPerTab: number;
- public indentSpaces: number;
- public newLineCharacter: string;
- constructor(useTabs: boolean, spacesPerTab: number, indentSpaces: number, newLineCharacter: string);
- static defaultOptions: FormattingOptions;
-}
-declare module TypeScript.Indentation {
- function columnForEndOfToken(token: ISyntaxToken, syntaxInformationMap: SyntaxInformationMap, options: FormattingOptions): number;
- function columnForStartOfToken(token: ISyntaxToken, syntaxInformationMap: SyntaxInformationMap, options: FormattingOptions): number;
- function columnForStartOfFirstTokenInLineContainingToken(token: ISyntaxToken, syntaxInformationMap: SyntaxInformationMap, options: FormattingOptions): number;
- function columnForPositionInString(input: string, position: number, options: FormattingOptions): number;
- function indentationString(column: number, options: FormattingOptions): string;
- function indentationTrivia(column: number, options: FormattingOptions): ISyntaxTrivia;
- function firstNonWhitespacePosition(value: string): number;
-}
-declare module TypeScript {
- enum LanguageVersion {
- EcmaScript3 = 0,
- EcmaScript5 = 1,
- }
-}
-declare module TypeScript {
- class ParseOptions {
- private _languageVersion;
- private _allowAutomaticSemicolonInsertion;
- constructor(languageVersion: LanguageVersion, allowAutomaticSemicolonInsertion: boolean);
- public toJSON(key: any): {
- allowAutomaticSemicolonInsertion: boolean;
- };
- public languageVersion(): LanguageVersion;
- public allowAutomaticSemicolonInsertion(): boolean;
- }
-}
-declare module TypeScript {
- class PositionedElement {
- private _parent;
- private _element;
- private _fullStart;
- constructor(parent: PositionedElement, element: ISyntaxElement, fullStart: number);
- static create(parent: PositionedElement, element: ISyntaxElement, fullStart: number): PositionedElement;
- public parent(): PositionedElement;
- public parentElement(): ISyntaxElement;
- public element(): ISyntaxElement;
- public kind(): SyntaxKind;
- public childIndex(child: ISyntaxElement): number;
- public childCount(): number;
- public childAt(index: number): PositionedElement;
- public childStart(child: ISyntaxElement): number;
- public childEnd(child: ISyntaxElement): number;
- public childStartAt(index: number): number;
- public childEndAt(index: number): number;
- public getPositionedChild(child: ISyntaxElement): PositionedElement;
- public fullStart(): number;
- public fullEnd(): number;
- public fullWidth(): number;
- public start(): number;
- public end(): number;
- public root(): PositionedNode;
- public containingNode(): PositionedNode;
- }
- class PositionedNodeOrToken extends PositionedElement {
- constructor(parent: PositionedElement, nodeOrToken: ISyntaxNodeOrToken, fullStart: number);
- public nodeOrToken(): ISyntaxNodeOrToken;
- }
- class PositionedNode extends PositionedNodeOrToken {
- constructor(parent: PositionedElement, node: SyntaxNode, fullStart: number);
- public node(): SyntaxNode;
- }
- class PositionedToken extends PositionedNodeOrToken {
- constructor(parent: PositionedElement, token: ISyntaxToken, fullStart: number);
- public token(): ISyntaxToken;
- public previousToken(includeSkippedTokens?: boolean): PositionedToken;
- public nextToken(includeSkippedTokens?: boolean): PositionedToken;
- }
- class PositionedList extends PositionedElement {
- constructor(parent: PositionedElement, list: ISyntaxList, fullStart: number);
- public list(): ISyntaxList;
- }
- class PositionedSeparatedList extends PositionedElement {
- constructor(parent: PositionedElement, list: ISeparatedSyntaxList, fullStart: number);
- public list(): ISeparatedSyntaxList;
- }
- class PositionedSkippedToken extends PositionedToken {
- private _parentToken;
- constructor(parentToken: PositionedToken, token: ISyntaxToken, fullStart: number);
- public parentToken(): PositionedToken;
- public previousToken(includeSkippedTokens?: boolean): PositionedToken;
- public nextToken(includeSkippedTokens?: boolean): PositionedToken;
- }
-}
-declare module TypeScript {
- enum SyntaxKind {
- None = 0,
- List = 1,
- SeparatedList = 2,
- TriviaList = 3,
- WhitespaceTrivia = 4,
- NewLineTrivia = 5,
- MultiLineCommentTrivia = 6,
- SingleLineCommentTrivia = 7,
- SkippedTokenTrivia = 8,
- ErrorToken = 9,
- EndOfFileToken = 10,
- IdentifierName = 11,
- RegularExpressionLiteral = 12,
- NumericLiteral = 13,
- StringLiteral = 14,
- BreakKeyword = 15,
- CaseKeyword = 16,
- CatchKeyword = 17,
- ContinueKeyword = 18,
- DebuggerKeyword = 19,
- DefaultKeyword = 20,
- DeleteKeyword = 21,
- DoKeyword = 22,
- ElseKeyword = 23,
- FalseKeyword = 24,
- FinallyKeyword = 25,
- ForKeyword = 26,
- FunctionKeyword = 27,
- IfKeyword = 28,
- InKeyword = 29,
- InstanceOfKeyword = 30,
- NewKeyword = 31,
- NullKeyword = 32,
- ReturnKeyword = 33,
- SwitchKeyword = 34,
- ThisKeyword = 35,
- ThrowKeyword = 36,
- TrueKeyword = 37,
- TryKeyword = 38,
- TypeOfKeyword = 39,
- VarKeyword = 40,
- VoidKeyword = 41,
- WhileKeyword = 42,
- WithKeyword = 43,
- ClassKeyword = 44,
- ConstKeyword = 45,
- EnumKeyword = 46,
- ExportKeyword = 47,
- ExtendsKeyword = 48,
- ImportKeyword = 49,
- SuperKeyword = 50,
- ImplementsKeyword = 51,
- InterfaceKeyword = 52,
- LetKeyword = 53,
- PackageKeyword = 54,
- PrivateKeyword = 55,
- ProtectedKeyword = 56,
- PublicKeyword = 57,
- StaticKeyword = 58,
- YieldKeyword = 59,
- AnyKeyword = 60,
- BooleanKeyword = 61,
- ConstructorKeyword = 62,
- DeclareKeyword = 63,
- GetKeyword = 64,
- ModuleKeyword = 65,
- RequireKeyword = 66,
- NumberKeyword = 67,
- SetKeyword = 68,
- StringKeyword = 69,
- OpenBraceToken = 70,
- CloseBraceToken = 71,
- OpenParenToken = 72,
- CloseParenToken = 73,
- OpenBracketToken = 74,
- CloseBracketToken = 75,
- DotToken = 76,
- DotDotDotToken = 77,
- SemicolonToken = 78,
- CommaToken = 79,
- LessThanToken = 80,
- GreaterThanToken = 81,
- LessThanEqualsToken = 82,
- GreaterThanEqualsToken = 83,
- EqualsEqualsToken = 84,
- EqualsGreaterThanToken = 85,
- ExclamationEqualsToken = 86,
- EqualsEqualsEqualsToken = 87,
- ExclamationEqualsEqualsToken = 88,
- PlusToken = 89,
- MinusToken = 90,
- AsteriskToken = 91,
- PercentToken = 92,
- PlusPlusToken = 93,
- MinusMinusToken = 94,
- LessThanLessThanToken = 95,
- GreaterThanGreaterThanToken = 96,
- GreaterThanGreaterThanGreaterThanToken = 97,
- AmpersandToken = 98,
- BarToken = 99,
- CaretToken = 100,
- ExclamationToken = 101,
- TildeToken = 102,
- AmpersandAmpersandToken = 103,
- BarBarToken = 104,
- QuestionToken = 105,
- ColonToken = 106,
- EqualsToken = 107,
- PlusEqualsToken = 108,
- MinusEqualsToken = 109,
- AsteriskEqualsToken = 110,
- PercentEqualsToken = 111,
- LessThanLessThanEqualsToken = 112,
- GreaterThanGreaterThanEqualsToken = 113,
- GreaterThanGreaterThanGreaterThanEqualsToken = 114,
- AmpersandEqualsToken = 115,
- BarEqualsToken = 116,
- CaretEqualsToken = 117,
- SlashToken = 118,
- SlashEqualsToken = 119,
- SourceUnit = 120,
- QualifiedName = 121,
- ObjectType = 122,
- FunctionType = 123,
- ArrayType = 124,
- ConstructorType = 125,
- GenericType = 126,
- TypeQuery = 127,
- InterfaceDeclaration = 128,
- FunctionDeclaration = 129,
- ModuleDeclaration = 130,
- ClassDeclaration = 131,
- EnumDeclaration = 132,
- ImportDeclaration = 133,
- ExportAssignment = 134,
- MemberFunctionDeclaration = 135,
- MemberVariableDeclaration = 136,
- ConstructorDeclaration = 137,
- IndexMemberDeclaration = 138,
- GetAccessor = 139,
- SetAccessor = 140,
- PropertySignature = 141,
- CallSignature = 142,
- ConstructSignature = 143,
- IndexSignature = 144,
- MethodSignature = 145,
- Block = 146,
- IfStatement = 147,
- VariableStatement = 148,
- ExpressionStatement = 149,
- ReturnStatement = 150,
- SwitchStatement = 151,
- BreakStatement = 152,
- ContinueStatement = 153,
- ForStatement = 154,
- ForInStatement = 155,
- EmptyStatement = 156,
- ThrowStatement = 157,
- WhileStatement = 158,
- TryStatement = 159,
- LabeledStatement = 160,
- DoStatement = 161,
- DebuggerStatement = 162,
- WithStatement = 163,
- PlusExpression = 164,
- NegateExpression = 165,
- BitwiseNotExpression = 166,
- LogicalNotExpression = 167,
- PreIncrementExpression = 168,
- PreDecrementExpression = 169,
- DeleteExpression = 170,
- TypeOfExpression = 171,
- VoidExpression = 172,
- CommaExpression = 173,
- AssignmentExpression = 174,
- AddAssignmentExpression = 175,
- SubtractAssignmentExpression = 176,
- MultiplyAssignmentExpression = 177,
- DivideAssignmentExpression = 178,
- ModuloAssignmentExpression = 179,
- AndAssignmentExpression = 180,
- ExclusiveOrAssignmentExpression = 181,
- OrAssignmentExpression = 182,
- LeftShiftAssignmentExpression = 183,
- SignedRightShiftAssignmentExpression = 184,
- UnsignedRightShiftAssignmentExpression = 185,
- ConditionalExpression = 186,
- LogicalOrExpression = 187,
- LogicalAndExpression = 188,
- BitwiseOrExpression = 189,
- BitwiseExclusiveOrExpression = 190,
- BitwiseAndExpression = 191,
- EqualsWithTypeConversionExpression = 192,
- NotEqualsWithTypeConversionExpression = 193,
- EqualsExpression = 194,
- NotEqualsExpression = 195,
- LessThanExpression = 196,
- GreaterThanExpression = 197,
- LessThanOrEqualExpression = 198,
- GreaterThanOrEqualExpression = 199,
- InstanceOfExpression = 200,
- InExpression = 201,
- LeftShiftExpression = 202,
- SignedRightShiftExpression = 203,
- UnsignedRightShiftExpression = 204,
- MultiplyExpression = 205,
- DivideExpression = 206,
- ModuloExpression = 207,
- AddExpression = 208,
- SubtractExpression = 209,
- PostIncrementExpression = 210,
- PostDecrementExpression = 211,
- MemberAccessExpression = 212,
- InvocationExpression = 213,
- ArrayLiteralExpression = 214,
- ObjectLiteralExpression = 215,
- ObjectCreationExpression = 216,
- ParenthesizedExpression = 217,
- ParenthesizedArrowFunctionExpression = 218,
- SimpleArrowFunctionExpression = 219,
- CastExpression = 220,
- ElementAccessExpression = 221,
- FunctionExpression = 222,
- OmittedExpression = 223,
- VariableDeclaration = 224,
- VariableDeclarator = 225,
- ArgumentList = 226,
- ParameterList = 227,
- TypeArgumentList = 228,
- TypeParameterList = 229,
- ExtendsHeritageClause = 230,
- ImplementsHeritageClause = 231,
- EqualsValueClause = 232,
- CaseSwitchClause = 233,
- DefaultSwitchClause = 234,
- ElseClause = 235,
- CatchClause = 236,
- FinallyClause = 237,
- TypeParameter = 238,
- Constraint = 239,
- SimplePropertyAssignment = 240,
- FunctionPropertyAssignment = 241,
- Parameter = 242,
- EnumElement = 243,
- TypeAnnotation = 244,
- ExternalModuleReference = 245,
- ModuleNameModuleReference = 246,
- Last = 246,
- FirstStandardKeyword = 15,
- LastStandardKeyword = 43,
- FirstFutureReservedKeyword = 44,
- LastFutureReservedKeyword = 50,
- FirstFutureReservedStrictKeyword = 51,
- LastFutureReservedStrictKeyword = 59,
- FirstTypeScriptKeyword = 60,
- LastTypeScriptKeyword = 69,
- FirstKeyword = 15,
- LastKeyword = 69,
- FirstToken = 9,
- LastToken = 119,
- FirstPunctuation = 70,
- LastPunctuation = 119,
- FirstFixedWidth = 15,
- LastFixedWidth = 119,
- FirstTrivia = 4,
- LastTrivia = 8,
- }
-}
-declare module TypeScript.SyntaxFacts {
- function getTokenKind(text: string): SyntaxKind;
- function getText(kind: SyntaxKind): string;
- function isTokenKind(kind: SyntaxKind): boolean;
- function isAnyKeyword(kind: SyntaxKind): boolean;
- function isStandardKeyword(kind: SyntaxKind): boolean;
- function isFutureReservedKeyword(kind: SyntaxKind): boolean;
- function isFutureReservedStrictKeyword(kind: SyntaxKind): boolean;
- function isAnyPunctuation(kind: SyntaxKind): boolean;
- function isPrefixUnaryExpressionOperatorToken(tokenKind: SyntaxKind): boolean;
- function isBinaryExpressionOperatorToken(tokenKind: SyntaxKind): boolean;
- function getPrefixUnaryExpressionFromOperatorToken(tokenKind: SyntaxKind): SyntaxKind;
- function getPostfixUnaryExpressionFromOperatorToken(tokenKind: SyntaxKind): SyntaxKind;
- function getBinaryExpressionFromOperatorToken(tokenKind: SyntaxKind): SyntaxKind;
- function getOperatorTokenFromBinaryExpression(tokenKind: SyntaxKind): SyntaxKind;
- function isAnyDivideToken(kind: SyntaxKind): boolean;
- function isAnyDivideOrRegularExpressionToken(kind: SyntaxKind): boolean;
-}
-declare module TypeScript {
- class Scanner implements ISlidingWindowSource {
- private slidingWindow;
- private fileName;
- private text;
- private _languageVersion;
- constructor(fileName: string, text: ISimpleText, languageVersion: LanguageVersion, window?: number[]);
- public languageVersion(): LanguageVersion;
- public fetchMoreItems(argument: any, sourceIndex: number, window: number[], destinationIndex: number, spaceAvailable: number): number;
- private currentCharCode();
- public absoluteIndex(): number;
- public setAbsoluteIndex(index: number): void;
- public scan(diagnostics: Diagnostic[], allowRegularExpression: boolean): ISyntaxToken;
- private createToken(fullStart, leadingTriviaInfo, start, kind, end, fullEnd, trailingTriviaInfo, isVariableWidthKeyword);
- private static triviaWindow;
- static scanTrivia(text: ISimpleText, start: number, length: number, isTrailing: boolean): ISyntaxTriviaList;
- private scanTrivia(underlyingText, underlyingTextStart, isTrailing);
- private scanTriviaInfo(diagnostics, isTrailing);
- private isNewLineCharacter(ch);
- private scanWhitespaceTrivia(underlyingText, underlyingTextStart);
- private scanSingleLineCommentTrivia(underlyingText, underlyingTextStart);
- private scanSingleLineCommentTriviaLength();
- private scanMultiLineCommentTrivia(underlyingText, underlyingTextStart);
- private scanMultiLineCommentTriviaLength(diagnostics);
- private scanLineTerminatorSequenceTrivia(ch);
- private scanLineTerminatorSequenceLength(ch);
- private scanSyntaxToken(diagnostics, allowRegularExpression);
- private isIdentifierStart(interpretedChar);
- private isIdentifierPart(interpretedChar);
- private tryFastScanIdentifierOrKeyword(firstCharacter);
- private slowScanIdentifierOrKeyword(diagnostics);
- private scanNumericLiteral(diagnostics);
- private isOctalNumericLiteral();
- private scanOctalNumericLiteral(diagnostics);
- private scanDecimalDigits();
- private scanDecimalNumericLiteral();
- private scanHexNumericLiteral();
- private isHexNumericLiteral();
- private advanceAndSetTokenKind(kind);
- private scanLessThanToken();
- private scanBarToken();
- private scanCaretToken();
- private scanAmpersandToken();
- private scanPercentToken();
- private scanMinusToken();
- private scanPlusToken();
- private scanAsteriskToken();
- private scanEqualsToken();
- private isDotPrefixedNumericLiteral();
- private scanDotToken(diagnostics);
- private scanSlashToken(allowRegularExpression);
- private tryScanRegularExpressionToken();
- private scanExclamationToken();
- private scanDefaultCharacter(character, diagnostics);
- private getErrorMessageText(text);
- private skipEscapeSequence(diagnostics);
- private scanStringLiteral(diagnostics);
- private isUnicodeEscape(character);
- private peekCharOrUnicodeEscape();
- private peekUnicodeOrHexEscape();
- private scanCharOrUnicodeEscape(errors);
- private scanUnicodeOrHexEscape(errors);
- public substring(start: number, end: number, intern: boolean): string;
- private createIllegalEscapeDiagnostic(start, end);
- static isValidIdentifier(text: ISimpleText, languageVersion: LanguageVersion): boolean;
- }
-}
-declare module TypeScript {
- class ScannerUtilities {
- static identifierKind(array: number[], startIndex: number, length: number): SyntaxKind;
- }
-}
-declare module TypeScript {
- interface ISeparatedSyntaxList extends ISyntaxElement {
- childAt(index: number): ISyntaxNodeOrToken;
- toArray(): ISyntaxNodeOrToken[];
- toNonSeparatorArray(): ISyntaxNodeOrToken[];
- separatorCount(): number;
- separatorAt(index: number): ISyntaxToken;
- nonSeparatorCount(): number;
- nonSeparatorAt(index: number): ISyntaxNodeOrToken;
- insertChildrenInto(array: ISyntaxElement[], index: number): void;
- }
-}
-declare module TypeScript.Syntax {
- var emptySeparatedList: ISeparatedSyntaxList;
- function separatedList(nodes: ISyntaxNodeOrToken[]): ISeparatedSyntaxList;
-}
-declare module TypeScript {
- interface ISlidingWindowSource {
- fetchMoreItems(argument: any, sourceIndex: number, window: any[], destinationIndex: number, spaceAvailable: number): number;
- }
- class SlidingWindow {
- private source;
- public window: any[];
- private defaultValue;
- private sourceLength;
- public windowCount: number;
- public windowAbsoluteStartIndex: number;
- public currentRelativeItemIndex: number;
- private _pinCount;
- private firstPinnedAbsoluteIndex;
- constructor(source: ISlidingWindowSource, window: any[], defaultValue: any, sourceLength?: number);
- private windowAbsoluteEndIndex();
- private addMoreItemsToWindow(argument);
- private tryShiftOrGrowWindow();
- public absoluteIndex(): number;
- public isAtEndOfSource(): boolean;
- public getAndPinAbsoluteIndex(): number;
- public releaseAndUnpinAbsoluteIndex(absoluteIndex: number): void;
- public rewindToPinnedIndex(absoluteIndex: number): void;
- public currentItem(argument: any): any;
- public peekItemN(n: number): any;
- public moveToNextItem(): void;
- public disgardAllItemsFromCurrentIndexOnwards(): void;
- public setAbsoluteIndex(absoluteIndex: number): void;
- public pinCount(): number;
- }
-}
-declare module TypeScript {
-}
-declare module TypeScript.Syntax {
- function emptySourceUnit(): SourceUnitSyntax;
- function getStandaloneExpression(positionedToken: PositionedToken): PositionedNodeOrToken;
- function isInModuleOrTypeContext(positionedToken: PositionedToken): boolean;
- function isInTypeOnlyContext(positionedToken: PositionedToken): boolean;
- function childOffset(parent: ISyntaxElement, child: ISyntaxElement): number;
- function childOffsetAt(parent: ISyntaxElement, index: number): number;
- function childIndex(parent: ISyntaxElement, child: ISyntaxElement): number;
- function nodeStructuralEquals(node1: SyntaxNode, node2: SyntaxNode): boolean;
- function nodeOrTokenStructuralEquals(node1: ISyntaxNodeOrToken, node2: ISyntaxNodeOrToken): boolean;
- function tokenStructuralEquals(token1: ISyntaxToken, token2: ISyntaxToken): boolean;
- function triviaListStructuralEquals(triviaList1: ISyntaxTriviaList, triviaList2: ISyntaxTriviaList): boolean;
- function triviaStructuralEquals(trivia1: ISyntaxTrivia, trivia2: ISyntaxTrivia): boolean;
- function listStructuralEquals(list1: ISyntaxList, list2: ISyntaxList): boolean;
- function separatedListStructuralEquals(list1: ISeparatedSyntaxList, list2: ISeparatedSyntaxList): boolean;
- function elementStructuralEquals(element1: ISyntaxElement, element2: ISyntaxElement): boolean;
- function identifierName(text: string, info?: ITokenInfo): ISyntaxToken;
- function trueExpression(): IUnaryExpressionSyntax;
- function falseExpression(): IUnaryExpressionSyntax;
- function numericLiteralExpression(text: string): IUnaryExpressionSyntax;
- function stringLiteralExpression(text: string): IUnaryExpressionSyntax;
- function isSuperInvocationExpression(node: IExpressionSyntax): boolean;
- function isSuperInvocationExpressionStatement(node: SyntaxNode): boolean;
- function isSuperMemberAccessExpression(node: IExpressionSyntax): boolean;
- function isSuperMemberAccessInvocationExpression(node: SyntaxNode): boolean;
- function assignmentExpression(left: IExpressionSyntax, token: ISyntaxToken, right: IExpressionSyntax): BinaryExpressionSyntax;
- function nodeHasSkippedOrMissingTokens(node: SyntaxNode): boolean;
- function isUnterminatedStringLiteral(token: ISyntaxToken): boolean;
- function isUnterminatedMultilineCommentTrivia(trivia: ISyntaxTrivia): boolean;
- function isEntirelyInsideCommentTrivia(trivia: ISyntaxTrivia, fullStart: number, position: number): boolean;
- function isEntirelyInsideComment(sourceUnit: SourceUnitSyntax, position: number): boolean;
- function isEntirelyInStringOrRegularExpressionLiteral(sourceUnit: SourceUnitSyntax, position: number): boolean;
- function findSkippedTokenInLeadingTriviaList(positionedToken: PositionedToken, position: number): PositionedSkippedToken;
- function findSkippedTokenInTrailingTriviaList(positionedToken: PositionedToken, position: number): PositionedSkippedToken;
- function findSkippedTokenInPositionedToken(positionedToken: PositionedToken, position: number): PositionedSkippedToken;
- function findSkippedTokenOnLeft(positionedToken: PositionedToken, position: number): PositionedSkippedToken;
- function getAncestorOfKind(positionedToken: PositionedElement, kind: SyntaxKind): PositionedElement;
- function hasAncestorOfKind(positionedToken: PositionedElement, kind: SyntaxKind): boolean;
- function isIntegerLiteral(expression: IExpressionSyntax): boolean;
-}
-declare module TypeScript {
- interface ISyntaxElement {
- kind(): SyntaxKind;
- isNode(): boolean;
- isToken(): boolean;
- isList(): boolean;
- isSeparatedList(): boolean;
- childCount(): number;
- childAt(index: number): ISyntaxElement;
- isTypeScriptSpecific(): boolean;
- isIncrementallyUnusable(): boolean;
- fullWidth(): number;
- width(): number;
- fullText(): string;
- leadingTrivia(): ISyntaxTriviaList;
- trailingTrivia(): ISyntaxTriviaList;
- leadingTriviaWidth(): number;
- trailingTriviaWidth(): number;
- firstToken(): ISyntaxToken;
- lastToken(): ISyntaxToken;
- collectTextElements(elements: string[]): void;
- }
- interface ISyntaxNode extends ISyntaxNodeOrToken {
- }
- interface IModuleReferenceSyntax extends ISyntaxNode {
- isModuleReference(): boolean;
- }
- interface IModuleElementSyntax extends ISyntaxNode {
- }
- interface IStatementSyntax extends IModuleElementSyntax {
- isStatement(): boolean;
- }
- interface IIterationStatementSyntax extends IStatementSyntax {
- isIterationStatement(): boolean;
- }
- interface ITypeMemberSyntax extends ISyntaxNode {
- }
- interface IClassElementSyntax extends ISyntaxNode {
- }
- interface IMemberDeclarationSyntax extends IClassElementSyntax {
- }
- interface IPropertyAssignmentSyntax extends IClassElementSyntax {
- }
- interface ISwitchClauseSyntax extends ISyntaxNode {
- isSwitchClause(): boolean;
- statements: ISyntaxList;
- }
- interface IExpressionSyntax extends ISyntaxNodeOrToken {
- isExpression(): boolean;
- withLeadingTrivia(trivia: ISyntaxTriviaList): IExpressionSyntax;
- withTrailingTrivia(trivia: ISyntaxTriviaList): IExpressionSyntax;
- }
- interface IUnaryExpressionSyntax extends IExpressionSyntax {
- isUnaryExpression(): boolean;
- }
- interface IArrowFunctionExpressionSyntax extends IUnaryExpressionSyntax {
- isArrowFunctionExpression(): boolean;
- equalsGreaterThanToken: ISyntaxToken;
- block: BlockSyntax;
- expression: IExpressionSyntax;
- }
- interface IPostfixExpressionSyntax extends IUnaryExpressionSyntax {
- isPostfixExpression(): boolean;
- }
- interface IMemberExpressionSyntax extends IPostfixExpressionSyntax {
- isMemberExpression(): boolean;
- }
- interface IPrimaryExpressionSyntax extends IMemberExpressionSyntax {
- isPrimaryExpression(): boolean;
- }
- interface ITypeSyntax extends ISyntaxNodeOrToken {
- }
- interface INameSyntax extends ITypeSyntax {
- }
-}
-declare module TypeScript.Syntax {
- interface IFactory {
- sourceUnit(moduleElements: ISyntaxList, endOfFileToken: ISyntaxToken): SourceUnitSyntax;
- externalModuleReference(requireKeyword: ISyntaxToken, openParenToken: ISyntaxToken, stringLiteral: ISyntaxToken, closeParenToken: ISyntaxToken): ExternalModuleReferenceSyntax;
- moduleNameModuleReference(moduleName: INameSyntax): ModuleNameModuleReferenceSyntax;
- importDeclaration(modifiers: ISyntaxList, importKeyword: ISyntaxToken, identifier: ISyntaxToken, equalsToken: ISyntaxToken, moduleReference: IModuleReferenceSyntax, semicolonToken: ISyntaxToken): ImportDeclarationSyntax;
- exportAssignment(exportKeyword: ISyntaxToken, equalsToken: ISyntaxToken, identifier: ISyntaxToken, semicolonToken: ISyntaxToken): ExportAssignmentSyntax;
- classDeclaration(modifiers: ISyntaxList, classKeyword: ISyntaxToken, identifier: ISyntaxToken, typeParameterList: TypeParameterListSyntax, heritageClauses: ISyntaxList, openBraceToken: ISyntaxToken, classElements: ISyntaxList, closeBraceToken: ISyntaxToken): ClassDeclarationSyntax;
- interfaceDeclaration(modifiers: ISyntaxList, interfaceKeyword: ISyntaxToken, identifier: ISyntaxToken, typeParameterList: TypeParameterListSyntax, heritageClauses: ISyntaxList, body: ObjectTypeSyntax): InterfaceDeclarationSyntax;
- heritageClause(kind: SyntaxKind, extendsOrImplementsKeyword: ISyntaxToken, typeNames: ISeparatedSyntaxList): HeritageClauseSyntax;
- moduleDeclaration(modifiers: ISyntaxList, moduleKeyword: ISyntaxToken, name: INameSyntax, stringLiteral: ISyntaxToken, openBraceToken: ISyntaxToken, moduleElements: ISyntaxList, closeBraceToken: ISyntaxToken): ModuleDeclarationSyntax;
- functionDeclaration(modifiers: ISyntaxList, functionKeyword: ISyntaxToken, identifier: ISyntaxToken, callSignature: CallSignatureSyntax, block: BlockSyntax, semicolonToken: ISyntaxToken): FunctionDeclarationSyntax;
- variableStatement(modifiers: ISyntaxList, variableDeclaration: VariableDeclarationSyntax, semicolonToken: ISyntaxToken): VariableStatementSyntax;
- variableDeclaration(varKeyword: ISyntaxToken, variableDeclarators: ISeparatedSyntaxList): VariableDeclarationSyntax;
- variableDeclarator(propertyName: ISyntaxToken, typeAnnotation: TypeAnnotationSyntax, equalsValueClause: EqualsValueClauseSyntax): VariableDeclaratorSyntax;
- equalsValueClause(equalsToken: ISyntaxToken, value: IExpressionSyntax): EqualsValueClauseSyntax;
- prefixUnaryExpression(kind: SyntaxKind, operatorToken: ISyntaxToken, operand: IUnaryExpressionSyntax): PrefixUnaryExpressionSyntax;
- arrayLiteralExpression(openBracketToken: ISyntaxToken, expressions: ISeparatedSyntaxList, closeBracketToken: ISyntaxToken): ArrayLiteralExpressionSyntax;
- omittedExpression(): OmittedExpressionSyntax;
- parenthesizedExpression(openParenToken: ISyntaxToken, expression: IExpressionSyntax, closeParenToken: ISyntaxToken): ParenthesizedExpressionSyntax;
- simpleArrowFunctionExpression(identifier: ISyntaxToken, equalsGreaterThanToken: ISyntaxToken, block: BlockSyntax, expression: IExpressionSyntax): SimpleArrowFunctionExpressionSyntax;
- parenthesizedArrowFunctionExpression(callSignature: CallSignatureSyntax, equalsGreaterThanToken: ISyntaxToken, block: BlockSyntax, expression: IExpressionSyntax): ParenthesizedArrowFunctionExpressionSyntax;
- qualifiedName(left: INameSyntax, dotToken: ISyntaxToken, right: ISyntaxToken): QualifiedNameSyntax;
- typeArgumentList(lessThanToken: ISyntaxToken, typeArguments: ISeparatedSyntaxList, greaterThanToken: ISyntaxToken): TypeArgumentListSyntax;
- constructorType(newKeyword: ISyntaxToken, typeParameterList: TypeParameterListSyntax, parameterList: ParameterListSyntax, equalsGreaterThanToken: ISyntaxToken, type: ITypeSyntax): ConstructorTypeSyntax;
- functionType(typeParameterList: TypeParameterListSyntax, parameterList: ParameterListSyntax, equalsGreaterThanToken: ISyntaxToken, type: ITypeSyntax): FunctionTypeSyntax;
- objectType(openBraceToken: ISyntaxToken, typeMembers: ISeparatedSyntaxList, closeBraceToken: ISyntaxToken): ObjectTypeSyntax;
- arrayType(type: ITypeSyntax, openBracketToken: ISyntaxToken, closeBracketToken: ISyntaxToken): ArrayTypeSyntax;
- genericType(name: INameSyntax, typeArgumentList: TypeArgumentListSyntax): GenericTypeSyntax;
- typeQuery(typeOfKeyword: ISyntaxToken, name: INameSyntax): TypeQuerySyntax;
- typeAnnotation(colonToken: ISyntaxToken, type: ITypeSyntax): TypeAnnotationSyntax;
- block(openBraceToken: ISyntaxToken, statements: ISyntaxList, closeBraceToken: ISyntaxToken): BlockSyntax;
- parameter(dotDotDotToken: ISyntaxToken, modifiers: ISyntaxList, identifier: ISyntaxToken, questionToken: ISyntaxToken, typeAnnotation: TypeAnnotationSyntax, equalsValueClause: EqualsValueClauseSyntax): ParameterSyntax;
- memberAccessExpression(expression: IExpressionSyntax, dotToken: ISyntaxToken, name: ISyntaxToken): MemberAccessExpressionSyntax;
- postfixUnaryExpression(kind: SyntaxKind, operand: IMemberExpressionSyntax, operatorToken: ISyntaxToken): PostfixUnaryExpressionSyntax;
- elementAccessExpression(expression: IExpressionSyntax, openBracketToken: ISyntaxToken, argumentExpression: IExpressionSyntax, closeBracketToken: ISyntaxToken): ElementAccessExpressionSyntax;
- invocationExpression(expression: IMemberExpressionSyntax, argumentList: ArgumentListSyntax): InvocationExpressionSyntax;
- argumentList(typeArgumentList: TypeArgumentListSyntax, openParenToken: ISyntaxToken, arguments: ISeparatedSyntaxList, closeParenToken: ISyntaxToken): ArgumentListSyntax;
- binaryExpression(kind: SyntaxKind, left: IExpressionSyntax, operatorToken: ISyntaxToken, right: IExpressionSyntax): BinaryExpressionSyntax;
- conditionalExpression(condition: IExpressionSyntax, questionToken: ISyntaxToken, whenTrue: IExpressionSyntax, colonToken: ISyntaxToken, whenFalse: IExpressionSyntax): ConditionalExpressionSyntax;
- constructSignature(newKeyword: ISyntaxToken, callSignature: CallSignatureSyntax): ConstructSignatureSyntax;
- methodSignature(propertyName: ISyntaxToken, questionToken: ISyntaxToken, callSignature: CallSignatureSyntax): MethodSignatureSyntax;
- indexSignature(openBracketToken: ISyntaxToken, parameter: ParameterSyntax, closeBracketToken: ISyntaxToken, typeAnnotation: TypeAnnotationSyntax): IndexSignatureSyntax;
- propertySignature(propertyName: ISyntaxToken, questionToken: ISyntaxToken, typeAnnotation: TypeAnnotationSyntax): PropertySignatureSyntax;
- callSignature(typeParameterList: TypeParameterListSyntax, parameterList: ParameterListSyntax, typeAnnotation: TypeAnnotationSyntax): CallSignatureSyntax;
- parameterList(openParenToken: ISyntaxToken, parameters: ISeparatedSyntaxList, closeParenToken: ISyntaxToken): ParameterListSyntax;
- typeParameterList(lessThanToken: ISyntaxToken, typeParameters: ISeparatedSyntaxList, greaterThanToken: ISyntaxToken): TypeParameterListSyntax;
- typeParameter(identifier: ISyntaxToken, constraint: ConstraintSyntax): TypeParameterSyntax;
- constraint(extendsKeyword: ISyntaxToken, type: ITypeSyntax): ConstraintSyntax;
- elseClause(elseKeyword: ISyntaxToken, statement: IStatementSyntax): ElseClauseSyntax;
- ifStatement(ifKeyword: ISyntaxToken, openParenToken: ISyntaxToken, condition: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax, elseClause: ElseClauseSyntax): IfStatementSyntax;
- expressionStatement(expression: IExpressionSyntax, semicolonToken: ISyntaxToken): ExpressionStatementSyntax;
- constructorDeclaration(modifiers: ISyntaxList, constructorKeyword: ISyntaxToken, callSignature: CallSignatureSyntax, block: BlockSyntax, semicolonToken: ISyntaxToken): ConstructorDeclarationSyntax;
- memberFunctionDeclaration(modifiers: ISyntaxList, propertyName: ISyntaxToken, callSignature: CallSignatureSyntax, block: BlockSyntax, semicolonToken: ISyntaxToken): MemberFunctionDeclarationSyntax;
- getAccessor(modifiers: ISyntaxList, getKeyword: ISyntaxToken, propertyName: ISyntaxToken, parameterList: ParameterListSyntax, typeAnnotation: TypeAnnotationSyntax, block: BlockSyntax): GetAccessorSyntax;
- setAccessor(modifiers: ISyntaxList, setKeyword: ISyntaxToken, propertyName: ISyntaxToken, parameterList: ParameterListSyntax, block: BlockSyntax): SetAccessorSyntax;
- memberVariableDeclaration(modifiers: ISyntaxList, variableDeclarator: VariableDeclaratorSyntax, semicolonToken: ISyntaxToken): MemberVariableDeclarationSyntax;
- indexMemberDeclaration(modifiers: ISyntaxList, indexSignature: IndexSignatureSyntax, semicolonToken: ISyntaxToken): IndexMemberDeclarationSyntax;
- throwStatement(throwKeyword: ISyntaxToken, expression: IExpressionSyntax, semicolonToken: ISyntaxToken): ThrowStatementSyntax;
- returnStatement(returnKeyword: ISyntaxToken, expression: IExpressionSyntax, semicolonToken: ISyntaxToken): ReturnStatementSyntax;
- objectCreationExpression(newKeyword: ISyntaxToken, expression: IMemberExpressionSyntax, argumentList: ArgumentListSyntax): ObjectCreationExpressionSyntax;
- switchStatement(switchKeyword: ISyntaxToken, openParenToken: ISyntaxToken, expression: IExpressionSyntax, closeParenToken: ISyntaxToken, openBraceToken: ISyntaxToken, switchClauses: ISyntaxList, closeBraceToken: ISyntaxToken): SwitchStatementSyntax;
- caseSwitchClause(caseKeyword: ISyntaxToken, expression: IExpressionSyntax, colonToken: ISyntaxToken, statements: ISyntaxList): CaseSwitchClauseSyntax;
- defaultSwitchClause(defaultKeyword: ISyntaxToken, colonToken: ISyntaxToken, statements: ISyntaxList): DefaultSwitchClauseSyntax;
- breakStatement(breakKeyword: ISyntaxToken, identifier: ISyntaxToken, semicolonToken: ISyntaxToken): BreakStatementSyntax;
- continueStatement(continueKeyword: ISyntaxToken, identifier: ISyntaxToken, semicolonToken: ISyntaxToken): ContinueStatementSyntax;
- forStatement(forKeyword: ISyntaxToken, openParenToken: ISyntaxToken, variableDeclaration: VariableDeclarationSyntax, initializer: IExpressionSyntax, firstSemicolonToken: ISyntaxToken, condition: IExpressionSyntax, secondSemicolonToken: ISyntaxToken, incrementor: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax): ForStatementSyntax;
- forInStatement(forKeyword: ISyntaxToken, openParenToken: ISyntaxToken, variableDeclaration: VariableDeclarationSyntax, left: IExpressionSyntax, inKeyword: ISyntaxToken, expression: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax): ForInStatementSyntax;
- whileStatement(whileKeyword: ISyntaxToken, openParenToken: ISyntaxToken, condition: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax): WhileStatementSyntax;
- withStatement(withKeyword: ISyntaxToken, openParenToken: ISyntaxToken, condition: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax): WithStatementSyntax;
- enumDeclaration(modifiers: ISyntaxList, enumKeyword: ISyntaxToken, identifier: ISyntaxToken, openBraceToken: ISyntaxToken, enumElements: ISeparatedSyntaxList, closeBraceToken: ISyntaxToken): EnumDeclarationSyntax;
- enumElement(propertyName: ISyntaxToken, equalsValueClause: EqualsValueClauseSyntax): EnumElementSyntax;
- castExpression(lessThanToken: ISyntaxToken, type: ITypeSyntax, greaterThanToken: ISyntaxToken, expression: IUnaryExpressionSyntax): CastExpressionSyntax;
- objectLiteralExpression(openBraceToken: ISyntaxToken, propertyAssignments: ISeparatedSyntaxList, closeBraceToken: ISyntaxToken): ObjectLiteralExpressionSyntax;
- simplePropertyAssignment(propertyName: ISyntaxToken, colonToken: ISyntaxToken, expression: IExpressionSyntax): SimplePropertyAssignmentSyntax;
- functionPropertyAssignment(propertyName: ISyntaxToken, callSignature: CallSignatureSyntax, block: BlockSyntax): FunctionPropertyAssignmentSyntax;
- functionExpression(functionKeyword: ISyntaxToken, identifier: ISyntaxToken, callSignature: CallSignatureSyntax, block: BlockSyntax): FunctionExpressionSyntax;
- emptyStatement(semicolonToken: ISyntaxToken): EmptyStatementSyntax;
- tryStatement(tryKeyword: ISyntaxToken, block: BlockSyntax, catchClause: CatchClauseSyntax, finallyClause: FinallyClauseSyntax): TryStatementSyntax;
- catchClause(catchKeyword: ISyntaxToken, openParenToken: ISyntaxToken, identifier: ISyntaxToken, typeAnnotation: TypeAnnotationSyntax, closeParenToken: ISyntaxToken, block: BlockSyntax): CatchClauseSyntax;
- finallyClause(finallyKeyword: ISyntaxToken, block: BlockSyntax): FinallyClauseSyntax;
- labeledStatement(identifier: ISyntaxToken, colonToken: ISyntaxToken, statement: IStatementSyntax): LabeledStatementSyntax;
- doStatement(doKeyword: ISyntaxToken, statement: IStatementSyntax, whileKeyword: ISyntaxToken, openParenToken: ISyntaxToken, condition: IExpressionSyntax, closeParenToken: ISyntaxToken, semicolonToken: ISyntaxToken): DoStatementSyntax;
- typeOfExpression(typeOfKeyword: ISyntaxToken, expression: IUnaryExpressionSyntax): TypeOfExpressionSyntax;
- deleteExpression(deleteKeyword: ISyntaxToken, expression: IUnaryExpressionSyntax): DeleteExpressionSyntax;
- voidExpression(voidKeyword: ISyntaxToken, expression: IUnaryExpressionSyntax): VoidExpressionSyntax;
- debuggerStatement(debuggerKeyword: ISyntaxToken, semicolonToken: ISyntaxToken): DebuggerStatementSyntax;
- }
- class NormalModeFactory implements IFactory {
- public sourceUnit(moduleElements: ISyntaxList, endOfFileToken: ISyntaxToken): SourceUnitSyntax;
- public externalModuleReference(requireKeyword: ISyntaxToken, openParenToken: ISyntaxToken, stringLiteral: ISyntaxToken, closeParenToken: ISyntaxToken): ExternalModuleReferenceSyntax;
- public moduleNameModuleReference(moduleName: INameSyntax): ModuleNameModuleReferenceSyntax;
- public importDeclaration(modifiers: ISyntaxList, importKeyword: ISyntaxToken, identifier: ISyntaxToken, equalsToken: ISyntaxToken, moduleReference: IModuleReferenceSyntax, semicolonToken: ISyntaxToken): ImportDeclarationSyntax;
- public exportAssignment(exportKeyword: ISyntaxToken, equalsToken: ISyntaxToken, identifier: ISyntaxToken, semicolonToken: ISyntaxToken): ExportAssignmentSyntax;
- public classDeclaration(modifiers: ISyntaxList, classKeyword: ISyntaxToken, identifier: ISyntaxToken, typeParameterList: TypeParameterListSyntax, heritageClauses: ISyntaxList, openBraceToken: ISyntaxToken, classElements: ISyntaxList, closeBraceToken: ISyntaxToken): ClassDeclarationSyntax;
- public interfaceDeclaration(modifiers: ISyntaxList, interfaceKeyword: ISyntaxToken, identifier: ISyntaxToken, typeParameterList: TypeParameterListSyntax, heritageClauses: ISyntaxList, body: ObjectTypeSyntax): InterfaceDeclarationSyntax;
- public heritageClause(kind: SyntaxKind, extendsOrImplementsKeyword: ISyntaxToken, typeNames: ISeparatedSyntaxList): HeritageClauseSyntax;
- public moduleDeclaration(modifiers: ISyntaxList, moduleKeyword: ISyntaxToken, name: INameSyntax, stringLiteral: ISyntaxToken, openBraceToken: ISyntaxToken, moduleElements: ISyntaxList, closeBraceToken: ISyntaxToken): ModuleDeclarationSyntax;
- public functionDeclaration(modifiers: ISyntaxList, functionKeyword: ISyntaxToken, identifier: ISyntaxToken, callSignature: CallSignatureSyntax, block: BlockSyntax, semicolonToken: ISyntaxToken): FunctionDeclarationSyntax;
- public variableStatement(modifiers: ISyntaxList, variableDeclaration: VariableDeclarationSyntax, semicolonToken: ISyntaxToken): VariableStatementSyntax;
- public variableDeclaration(varKeyword: ISyntaxToken, variableDeclarators: ISeparatedSyntaxList): VariableDeclarationSyntax;
- public variableDeclarator(propertyName: ISyntaxToken, typeAnnotation: TypeAnnotationSyntax, equalsValueClause: EqualsValueClauseSyntax): VariableDeclaratorSyntax;
- public equalsValueClause(equalsToken: ISyntaxToken, value: IExpressionSyntax): EqualsValueClauseSyntax;
- public prefixUnaryExpression(kind: SyntaxKind, operatorToken: ISyntaxToken, operand: IUnaryExpressionSyntax): PrefixUnaryExpressionSyntax;
- public arrayLiteralExpression(openBracketToken: ISyntaxToken, expressions: ISeparatedSyntaxList, closeBracketToken: ISyntaxToken): ArrayLiteralExpressionSyntax;
- public omittedExpression(): OmittedExpressionSyntax;
- public parenthesizedExpression(openParenToken: ISyntaxToken, expression: IExpressionSyntax, closeParenToken: ISyntaxToken): ParenthesizedExpressionSyntax;
- public simpleArrowFunctionExpression(identifier: ISyntaxToken, equalsGreaterThanToken: ISyntaxToken, block: BlockSyntax, expression: IExpressionSyntax): SimpleArrowFunctionExpressionSyntax;
- public parenthesizedArrowFunctionExpression(callSignature: CallSignatureSyntax, equalsGreaterThanToken: ISyntaxToken, block: BlockSyntax, expression: IExpressionSyntax): ParenthesizedArrowFunctionExpressionSyntax;
- public qualifiedName(left: INameSyntax, dotToken: ISyntaxToken, right: ISyntaxToken): QualifiedNameSyntax;
- public typeArgumentList(lessThanToken: ISyntaxToken, typeArguments: ISeparatedSyntaxList, greaterThanToken: ISyntaxToken): TypeArgumentListSyntax;
- public constructorType(newKeyword: ISyntaxToken, typeParameterList: TypeParameterListSyntax, parameterList: ParameterListSyntax, equalsGreaterThanToken: ISyntaxToken, type: ITypeSyntax): ConstructorTypeSyntax;
- public functionType(typeParameterList: TypeParameterListSyntax, parameterList: ParameterListSyntax, equalsGreaterThanToken: ISyntaxToken, type: ITypeSyntax): FunctionTypeSyntax;
- public objectType(openBraceToken: ISyntaxToken, typeMembers: ISeparatedSyntaxList, closeBraceToken: ISyntaxToken): ObjectTypeSyntax;
- public arrayType(type: ITypeSyntax, openBracketToken: ISyntaxToken, closeBracketToken: ISyntaxToken): ArrayTypeSyntax;
- public genericType(name: INameSyntax, typeArgumentList: TypeArgumentListSyntax): GenericTypeSyntax;
- public typeQuery(typeOfKeyword: ISyntaxToken, name: INameSyntax): TypeQuerySyntax;
- public typeAnnotation(colonToken: ISyntaxToken, type: ITypeSyntax): TypeAnnotationSyntax;
- public block(openBraceToken: ISyntaxToken, statements: ISyntaxList, closeBraceToken: ISyntaxToken): BlockSyntax;
- public parameter(dotDotDotToken: ISyntaxToken, modifiers: ISyntaxList, identifier: ISyntaxToken, questionToken: ISyntaxToken, typeAnnotation: TypeAnnotationSyntax, equalsValueClause: EqualsValueClauseSyntax): ParameterSyntax;
- public memberAccessExpression(expression: IExpressionSyntax, dotToken: ISyntaxToken, name: ISyntaxToken): MemberAccessExpressionSyntax;
- public postfixUnaryExpression(kind: SyntaxKind, operand: IMemberExpressionSyntax, operatorToken: ISyntaxToken): PostfixUnaryExpressionSyntax;
- public elementAccessExpression(expression: IExpressionSyntax, openBracketToken: ISyntaxToken, argumentExpression: IExpressionSyntax, closeBracketToken: ISyntaxToken): ElementAccessExpressionSyntax;
- public invocationExpression(expression: IMemberExpressionSyntax, argumentList: ArgumentListSyntax): InvocationExpressionSyntax;
- public argumentList(typeArgumentList: TypeArgumentListSyntax, openParenToken: ISyntaxToken, _arguments: ISeparatedSyntaxList, closeParenToken: ISyntaxToken): ArgumentListSyntax;
- public binaryExpression(kind: SyntaxKind, left: IExpressionSyntax, operatorToken: ISyntaxToken, right: IExpressionSyntax): BinaryExpressionSyntax;
- public conditionalExpression(condition: IExpressionSyntax, questionToken: ISyntaxToken, whenTrue: IExpressionSyntax, colonToken: ISyntaxToken, whenFalse: IExpressionSyntax): ConditionalExpressionSyntax;
- public constructSignature(newKeyword: ISyntaxToken, callSignature: CallSignatureSyntax): ConstructSignatureSyntax;
- public methodSignature(propertyName: ISyntaxToken, questionToken: ISyntaxToken, callSignature: CallSignatureSyntax): MethodSignatureSyntax;
- public indexSignature(openBracketToken: ISyntaxToken, parameter: ParameterSyntax, closeBracketToken: ISyntaxToken, typeAnnotation: TypeAnnotationSyntax): IndexSignatureSyntax;
- public propertySignature(propertyName: ISyntaxToken, questionToken: ISyntaxToken, typeAnnotation: TypeAnnotationSyntax): PropertySignatureSyntax;
- public callSignature(typeParameterList: TypeParameterListSyntax, parameterList: ParameterListSyntax, typeAnnotation: TypeAnnotationSyntax): CallSignatureSyntax;
- public parameterList(openParenToken: ISyntaxToken, parameters: ISeparatedSyntaxList, closeParenToken: ISyntaxToken): ParameterListSyntax;
- public typeParameterList(lessThanToken: ISyntaxToken, typeParameters: ISeparatedSyntaxList, greaterThanToken: ISyntaxToken): TypeParameterListSyntax;
- public typeParameter(identifier: ISyntaxToken, constraint: ConstraintSyntax): TypeParameterSyntax;
- public constraint(extendsKeyword: ISyntaxToken, type: ITypeSyntax): ConstraintSyntax;
- public elseClause(elseKeyword: ISyntaxToken, statement: IStatementSyntax): ElseClauseSyntax;
- public ifStatement(ifKeyword: ISyntaxToken, openParenToken: ISyntaxToken, condition: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax, elseClause: ElseClauseSyntax): IfStatementSyntax;
- public expressionStatement(expression: IExpressionSyntax, semicolonToken: ISyntaxToken): ExpressionStatementSyntax;
- public constructorDeclaration(modifiers: ISyntaxList, constructorKeyword: ISyntaxToken, callSignature: CallSignatureSyntax, block: BlockSyntax, semicolonToken: ISyntaxToken): ConstructorDeclarationSyntax;
- public memberFunctionDeclaration(modifiers: ISyntaxList, propertyName: ISyntaxToken, callSignature: CallSignatureSyntax, block: BlockSyntax, semicolonToken: ISyntaxToken): MemberFunctionDeclarationSyntax;
- public getAccessor(modifiers: ISyntaxList, getKeyword: ISyntaxToken, propertyName: ISyntaxToken, parameterList: ParameterListSyntax, typeAnnotation: TypeAnnotationSyntax, block: BlockSyntax): GetAccessorSyntax;
- public setAccessor(modifiers: ISyntaxList, setKeyword: ISyntaxToken, propertyName: ISyntaxToken, parameterList: ParameterListSyntax, block: BlockSyntax): SetAccessorSyntax;
- public memberVariableDeclaration(modifiers: ISyntaxList, variableDeclarator: VariableDeclaratorSyntax, semicolonToken: ISyntaxToken): MemberVariableDeclarationSyntax;
- public indexMemberDeclaration(modifiers: ISyntaxList, indexSignature: IndexSignatureSyntax, semicolonToken: ISyntaxToken): IndexMemberDeclarationSyntax;
- public throwStatement(throwKeyword: ISyntaxToken, expression: IExpressionSyntax, semicolonToken: ISyntaxToken): ThrowStatementSyntax;
- public returnStatement(returnKeyword: ISyntaxToken, expression: IExpressionSyntax, semicolonToken: ISyntaxToken): ReturnStatementSyntax;
- public objectCreationExpression(newKeyword: ISyntaxToken, expression: IMemberExpressionSyntax, argumentList: ArgumentListSyntax): ObjectCreationExpressionSyntax;
- public switchStatement(switchKeyword: ISyntaxToken, openParenToken: ISyntaxToken, expression: IExpressionSyntax, closeParenToken: ISyntaxToken, openBraceToken: ISyntaxToken, switchClauses: ISyntaxList, closeBraceToken: ISyntaxToken): SwitchStatementSyntax;
- public caseSwitchClause(caseKeyword: ISyntaxToken, expression: IExpressionSyntax, colonToken: ISyntaxToken, statements: ISyntaxList): CaseSwitchClauseSyntax;
- public defaultSwitchClause(defaultKeyword: ISyntaxToken, colonToken: ISyntaxToken, statements: ISyntaxList): DefaultSwitchClauseSyntax;
- public breakStatement(breakKeyword: ISyntaxToken, identifier: ISyntaxToken, semicolonToken: ISyntaxToken): BreakStatementSyntax;
- public continueStatement(continueKeyword: ISyntaxToken, identifier: ISyntaxToken, semicolonToken: ISyntaxToken): ContinueStatementSyntax;
- public forStatement(forKeyword: ISyntaxToken, openParenToken: ISyntaxToken, variableDeclaration: VariableDeclarationSyntax, initializer: IExpressionSyntax, firstSemicolonToken: ISyntaxToken, condition: IExpressionSyntax, secondSemicolonToken: ISyntaxToken, incrementor: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax): ForStatementSyntax;
- public forInStatement(forKeyword: ISyntaxToken, openParenToken: ISyntaxToken, variableDeclaration: VariableDeclarationSyntax, left: IExpressionSyntax, inKeyword: ISyntaxToken, expression: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax): ForInStatementSyntax;
- public whileStatement(whileKeyword: ISyntaxToken, openParenToken: ISyntaxToken, condition: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax): WhileStatementSyntax;
- public withStatement(withKeyword: ISyntaxToken, openParenToken: ISyntaxToken, condition: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax): WithStatementSyntax;
- public enumDeclaration(modifiers: ISyntaxList, enumKeyword: ISyntaxToken, identifier: ISyntaxToken, openBraceToken: ISyntaxToken, enumElements: ISeparatedSyntaxList, closeBraceToken: ISyntaxToken): EnumDeclarationSyntax;
- public enumElement(propertyName: ISyntaxToken, equalsValueClause: EqualsValueClauseSyntax): EnumElementSyntax;
- public castExpression(lessThanToken: ISyntaxToken, type: ITypeSyntax, greaterThanToken: ISyntaxToken, expression: IUnaryExpressionSyntax): CastExpressionSyntax;
- public objectLiteralExpression(openBraceToken: ISyntaxToken, propertyAssignments: ISeparatedSyntaxList, closeBraceToken: ISyntaxToken): ObjectLiteralExpressionSyntax;
- public simplePropertyAssignment(propertyName: ISyntaxToken, colonToken: ISyntaxToken, expression: IExpressionSyntax): SimplePropertyAssignmentSyntax;
- public functionPropertyAssignment(propertyName: ISyntaxToken, callSignature: CallSignatureSyntax, block: BlockSyntax): FunctionPropertyAssignmentSyntax;
- public functionExpression(functionKeyword: ISyntaxToken, identifier: ISyntaxToken, callSignature: CallSignatureSyntax, block: BlockSyntax): FunctionExpressionSyntax;
- public emptyStatement(semicolonToken: ISyntaxToken): EmptyStatementSyntax;
- public tryStatement(tryKeyword: ISyntaxToken, block: BlockSyntax, catchClause: CatchClauseSyntax, finallyClause: FinallyClauseSyntax): TryStatementSyntax;
- public catchClause(catchKeyword: ISyntaxToken, openParenToken: ISyntaxToken, identifier: ISyntaxToken, typeAnnotation: TypeAnnotationSyntax, closeParenToken: ISyntaxToken, block: BlockSyntax): CatchClauseSyntax;
- public finallyClause(finallyKeyword: ISyntaxToken, block: BlockSyntax): FinallyClauseSyntax;
- public labeledStatement(identifier: ISyntaxToken, colonToken: ISyntaxToken, statement: IStatementSyntax): LabeledStatementSyntax;
- public doStatement(doKeyword: ISyntaxToken, statement: IStatementSyntax, whileKeyword: ISyntaxToken, openParenToken: ISyntaxToken, condition: IExpressionSyntax, closeParenToken: ISyntaxToken, semicolonToken: ISyntaxToken): DoStatementSyntax;
- public typeOfExpression(typeOfKeyword: ISyntaxToken, expression: IUnaryExpressionSyntax): TypeOfExpressionSyntax;
- public deleteExpression(deleteKeyword: ISyntaxToken, expression: IUnaryExpressionSyntax): DeleteExpressionSyntax;
- public voidExpression(voidKeyword: ISyntaxToken, expression: IUnaryExpressionSyntax): VoidExpressionSyntax;
- public debuggerStatement(debuggerKeyword: ISyntaxToken, semicolonToken: ISyntaxToken): DebuggerStatementSyntax;
- }
- class StrictModeFactory implements IFactory {
- public sourceUnit(moduleElements: ISyntaxList, endOfFileToken: ISyntaxToken): SourceUnitSyntax;
- public externalModuleReference(requireKeyword: ISyntaxToken, openParenToken: ISyntaxToken, stringLiteral: ISyntaxToken, closeParenToken: ISyntaxToken): ExternalModuleReferenceSyntax;
- public moduleNameModuleReference(moduleName: INameSyntax): ModuleNameModuleReferenceSyntax;
- public importDeclaration(modifiers: ISyntaxList, importKeyword: ISyntaxToken, identifier: ISyntaxToken, equalsToken: ISyntaxToken, moduleReference: IModuleReferenceSyntax, semicolonToken: ISyntaxToken): ImportDeclarationSyntax;
- public exportAssignment(exportKeyword: ISyntaxToken, equalsToken: ISyntaxToken, identifier: ISyntaxToken, semicolonToken: ISyntaxToken): ExportAssignmentSyntax;
- public classDeclaration(modifiers: ISyntaxList, classKeyword: ISyntaxToken, identifier: ISyntaxToken, typeParameterList: TypeParameterListSyntax, heritageClauses: ISyntaxList, openBraceToken: ISyntaxToken, classElements: ISyntaxList, closeBraceToken: ISyntaxToken): ClassDeclarationSyntax;
- public interfaceDeclaration(modifiers: ISyntaxList, interfaceKeyword: ISyntaxToken, identifier: ISyntaxToken, typeParameterList: TypeParameterListSyntax, heritageClauses: ISyntaxList, body: ObjectTypeSyntax): InterfaceDeclarationSyntax;
- public heritageClause(kind: SyntaxKind, extendsOrImplementsKeyword: ISyntaxToken, typeNames: ISeparatedSyntaxList): HeritageClauseSyntax;
- public moduleDeclaration(modifiers: ISyntaxList, moduleKeyword: ISyntaxToken, name: INameSyntax, stringLiteral: ISyntaxToken, openBraceToken: ISyntaxToken, moduleElements: ISyntaxList, closeBraceToken: ISyntaxToken): ModuleDeclarationSyntax;
- public functionDeclaration(modifiers: ISyntaxList, functionKeyword: ISyntaxToken, identifier: ISyntaxToken, callSignature: CallSignatureSyntax, block: BlockSyntax, semicolonToken: ISyntaxToken): FunctionDeclarationSyntax;
- public variableStatement(modifiers: ISyntaxList, variableDeclaration: VariableDeclarationSyntax, semicolonToken: ISyntaxToken): VariableStatementSyntax;
- public variableDeclaration(varKeyword: ISyntaxToken, variableDeclarators: ISeparatedSyntaxList): VariableDeclarationSyntax;
- public variableDeclarator(propertyName: ISyntaxToken, typeAnnotation: TypeAnnotationSyntax, equalsValueClause: EqualsValueClauseSyntax): VariableDeclaratorSyntax;
- public equalsValueClause(equalsToken: ISyntaxToken, value: IExpressionSyntax): EqualsValueClauseSyntax;
- public prefixUnaryExpression(kind: SyntaxKind, operatorToken: ISyntaxToken, operand: IUnaryExpressionSyntax): PrefixUnaryExpressionSyntax;
- public arrayLiteralExpression(openBracketToken: ISyntaxToken, expressions: ISeparatedSyntaxList, closeBracketToken: ISyntaxToken): ArrayLiteralExpressionSyntax;
- public omittedExpression(): OmittedExpressionSyntax;
- public parenthesizedExpression(openParenToken: ISyntaxToken, expression: IExpressionSyntax, closeParenToken: ISyntaxToken): ParenthesizedExpressionSyntax;
- public simpleArrowFunctionExpression(identifier: ISyntaxToken, equalsGreaterThanToken: ISyntaxToken, block: BlockSyntax, expression: IExpressionSyntax): SimpleArrowFunctionExpressionSyntax;
- public parenthesizedArrowFunctionExpression(callSignature: CallSignatureSyntax, equalsGreaterThanToken: ISyntaxToken, block: BlockSyntax, expression: IExpressionSyntax): ParenthesizedArrowFunctionExpressionSyntax;
- public qualifiedName(left: INameSyntax, dotToken: ISyntaxToken, right: ISyntaxToken): QualifiedNameSyntax;
- public typeArgumentList(lessThanToken: ISyntaxToken, typeArguments: ISeparatedSyntaxList, greaterThanToken: ISyntaxToken): TypeArgumentListSyntax;
- public constructorType(newKeyword: ISyntaxToken, typeParameterList: TypeParameterListSyntax, parameterList: ParameterListSyntax, equalsGreaterThanToken: ISyntaxToken, type: ITypeSyntax): ConstructorTypeSyntax;
- public functionType(typeParameterList: TypeParameterListSyntax, parameterList: ParameterListSyntax, equalsGreaterThanToken: ISyntaxToken, type: ITypeSyntax): FunctionTypeSyntax;
- public objectType(openBraceToken: ISyntaxToken, typeMembers: ISeparatedSyntaxList, closeBraceToken: ISyntaxToken): ObjectTypeSyntax;
- public arrayType(type: ITypeSyntax, openBracketToken: ISyntaxToken, closeBracketToken: ISyntaxToken): ArrayTypeSyntax;
- public genericType(name: INameSyntax, typeArgumentList: TypeArgumentListSyntax): GenericTypeSyntax;
- public typeQuery(typeOfKeyword: ISyntaxToken, name: INameSyntax): TypeQuerySyntax;
- public typeAnnotation(colonToken: ISyntaxToken, type: ITypeSyntax): TypeAnnotationSyntax;
- public block(openBraceToken: ISyntaxToken, statements: ISyntaxList, closeBraceToken: ISyntaxToken): BlockSyntax;
- public parameter(dotDotDotToken: ISyntaxToken, modifiers: ISyntaxList, identifier: ISyntaxToken, questionToken: ISyntaxToken, typeAnnotation: TypeAnnotationSyntax, equalsValueClause: EqualsValueClauseSyntax): ParameterSyntax;
- public memberAccessExpression(expression: IExpressionSyntax, dotToken: ISyntaxToken, name: ISyntaxToken): MemberAccessExpressionSyntax;
- public postfixUnaryExpression(kind: SyntaxKind, operand: IMemberExpressionSyntax, operatorToken: ISyntaxToken): PostfixUnaryExpressionSyntax;
- public elementAccessExpression(expression: IExpressionSyntax, openBracketToken: ISyntaxToken, argumentExpression: IExpressionSyntax, closeBracketToken: ISyntaxToken): ElementAccessExpressionSyntax;
- public invocationExpression(expression: IMemberExpressionSyntax, argumentList: ArgumentListSyntax): InvocationExpressionSyntax;
- public argumentList(typeArgumentList: TypeArgumentListSyntax, openParenToken: ISyntaxToken, _arguments: ISeparatedSyntaxList, closeParenToken: ISyntaxToken): ArgumentListSyntax;
- public binaryExpression(kind: SyntaxKind, left: IExpressionSyntax, operatorToken: ISyntaxToken, right: IExpressionSyntax): BinaryExpressionSyntax;
- public conditionalExpression(condition: IExpressionSyntax, questionToken: ISyntaxToken, whenTrue: IExpressionSyntax, colonToken: ISyntaxToken, whenFalse: IExpressionSyntax): ConditionalExpressionSyntax;
- public constructSignature(newKeyword: ISyntaxToken, callSignature: CallSignatureSyntax): ConstructSignatureSyntax;
- public methodSignature(propertyName: ISyntaxToken, questionToken: ISyntaxToken, callSignature: CallSignatureSyntax): MethodSignatureSyntax;
- public indexSignature(openBracketToken: ISyntaxToken, parameter: ParameterSyntax, closeBracketToken: ISyntaxToken, typeAnnotation: TypeAnnotationSyntax): IndexSignatureSyntax;
- public propertySignature(propertyName: ISyntaxToken, questionToken: ISyntaxToken, typeAnnotation: TypeAnnotationSyntax): PropertySignatureSyntax;
- public callSignature(typeParameterList: TypeParameterListSyntax, parameterList: ParameterListSyntax, typeAnnotation: TypeAnnotationSyntax): CallSignatureSyntax;
- public parameterList(openParenToken: ISyntaxToken, parameters: ISeparatedSyntaxList, closeParenToken: ISyntaxToken): ParameterListSyntax;
- public typeParameterList(lessThanToken: ISyntaxToken, typeParameters: ISeparatedSyntaxList, greaterThanToken: ISyntaxToken): TypeParameterListSyntax;
- public typeParameter(identifier: ISyntaxToken, constraint: ConstraintSyntax): TypeParameterSyntax;
- public constraint(extendsKeyword: ISyntaxToken, type: ITypeSyntax): ConstraintSyntax;
- public elseClause(elseKeyword: ISyntaxToken, statement: IStatementSyntax): ElseClauseSyntax;
- public ifStatement(ifKeyword: ISyntaxToken, openParenToken: ISyntaxToken, condition: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax, elseClause: ElseClauseSyntax): IfStatementSyntax;
- public expressionStatement(expression: IExpressionSyntax, semicolonToken: ISyntaxToken): ExpressionStatementSyntax;
- public constructorDeclaration(modifiers: ISyntaxList, constructorKeyword: ISyntaxToken, callSignature: CallSignatureSyntax, block: BlockSyntax, semicolonToken: ISyntaxToken): ConstructorDeclarationSyntax;
- public memberFunctionDeclaration(modifiers: ISyntaxList, propertyName: ISyntaxToken, callSignature: CallSignatureSyntax, block: BlockSyntax, semicolonToken: ISyntaxToken): MemberFunctionDeclarationSyntax;
- public getAccessor(modifiers: ISyntaxList, getKeyword: ISyntaxToken, propertyName: ISyntaxToken, parameterList: ParameterListSyntax, typeAnnotation: TypeAnnotationSyntax, block: BlockSyntax): GetAccessorSyntax;
- public setAccessor(modifiers: ISyntaxList, setKeyword: ISyntaxToken, propertyName: ISyntaxToken, parameterList: ParameterListSyntax, block: BlockSyntax): SetAccessorSyntax;
- public memberVariableDeclaration(modifiers: ISyntaxList, variableDeclarator: VariableDeclaratorSyntax, semicolonToken: ISyntaxToken): MemberVariableDeclarationSyntax;
- public indexMemberDeclaration(modifiers: ISyntaxList, indexSignature: IndexSignatureSyntax, semicolonToken: ISyntaxToken): IndexMemberDeclarationSyntax;
- public throwStatement(throwKeyword: ISyntaxToken, expression: IExpressionSyntax, semicolonToken: ISyntaxToken): ThrowStatementSyntax;
- public returnStatement(returnKeyword: ISyntaxToken, expression: IExpressionSyntax, semicolonToken: ISyntaxToken): ReturnStatementSyntax;
- public objectCreationExpression(newKeyword: ISyntaxToken, expression: IMemberExpressionSyntax, argumentList: ArgumentListSyntax): ObjectCreationExpressionSyntax;
- public switchStatement(switchKeyword: ISyntaxToken, openParenToken: ISyntaxToken, expression: IExpressionSyntax, closeParenToken: ISyntaxToken, openBraceToken: ISyntaxToken, switchClauses: ISyntaxList, closeBraceToken: ISyntaxToken): SwitchStatementSyntax;
- public caseSwitchClause(caseKeyword: ISyntaxToken, expression: IExpressionSyntax, colonToken: ISyntaxToken, statements: ISyntaxList): CaseSwitchClauseSyntax;
- public defaultSwitchClause(defaultKeyword: ISyntaxToken, colonToken: ISyntaxToken, statements: ISyntaxList): DefaultSwitchClauseSyntax;
- public breakStatement(breakKeyword: ISyntaxToken, identifier: ISyntaxToken, semicolonToken: ISyntaxToken): BreakStatementSyntax;
- public continueStatement(continueKeyword: ISyntaxToken, identifier: ISyntaxToken, semicolonToken: ISyntaxToken): ContinueStatementSyntax;
- public forStatement(forKeyword: ISyntaxToken, openParenToken: ISyntaxToken, variableDeclaration: VariableDeclarationSyntax, initializer: IExpressionSyntax, firstSemicolonToken: ISyntaxToken, condition: IExpressionSyntax, secondSemicolonToken: ISyntaxToken, incrementor: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax): ForStatementSyntax;
- public forInStatement(forKeyword: ISyntaxToken, openParenToken: ISyntaxToken, variableDeclaration: VariableDeclarationSyntax, left: IExpressionSyntax, inKeyword: ISyntaxToken, expression: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax): ForInStatementSyntax;
- public whileStatement(whileKeyword: ISyntaxToken, openParenToken: ISyntaxToken, condition: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax): WhileStatementSyntax;
- public withStatement(withKeyword: ISyntaxToken, openParenToken: ISyntaxToken, condition: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax): WithStatementSyntax;
- public enumDeclaration(modifiers: ISyntaxList, enumKeyword: ISyntaxToken, identifier: ISyntaxToken, openBraceToken: ISyntaxToken, enumElements: ISeparatedSyntaxList, closeBraceToken: ISyntaxToken): EnumDeclarationSyntax;
- public enumElement(propertyName: ISyntaxToken, equalsValueClause: EqualsValueClauseSyntax): EnumElementSyntax;
- public castExpression(lessThanToken: ISyntaxToken, type: ITypeSyntax, greaterThanToken: ISyntaxToken, expression: IUnaryExpressionSyntax): CastExpressionSyntax;
- public objectLiteralExpression(openBraceToken: ISyntaxToken, propertyAssignments: ISeparatedSyntaxList, closeBraceToken: ISyntaxToken): ObjectLiteralExpressionSyntax;
- public simplePropertyAssignment(propertyName: ISyntaxToken, colonToken: ISyntaxToken, expression: IExpressionSyntax): SimplePropertyAssignmentSyntax;
- public functionPropertyAssignment(propertyName: ISyntaxToken, callSignature: CallSignatureSyntax, block: BlockSyntax): FunctionPropertyAssignmentSyntax;
- public functionExpression(functionKeyword: ISyntaxToken, identifier: ISyntaxToken, callSignature: CallSignatureSyntax, block: BlockSyntax): FunctionExpressionSyntax;
- public emptyStatement(semicolonToken: ISyntaxToken): EmptyStatementSyntax;
- public tryStatement(tryKeyword: ISyntaxToken, block: BlockSyntax, catchClause: CatchClauseSyntax, finallyClause: FinallyClauseSyntax): TryStatementSyntax;
- public catchClause(catchKeyword: ISyntaxToken, openParenToken: ISyntaxToken, identifier: ISyntaxToken, typeAnnotation: TypeAnnotationSyntax, closeParenToken: ISyntaxToken, block: BlockSyntax): CatchClauseSyntax;
- public finallyClause(finallyKeyword: ISyntaxToken, block: BlockSyntax): FinallyClauseSyntax;
- public labeledStatement(identifier: ISyntaxToken, colonToken: ISyntaxToken, statement: IStatementSyntax): LabeledStatementSyntax;
- public doStatement(doKeyword: ISyntaxToken, statement: IStatementSyntax, whileKeyword: ISyntaxToken, openParenToken: ISyntaxToken, condition: IExpressionSyntax, closeParenToken: ISyntaxToken, semicolonToken: ISyntaxToken): DoStatementSyntax;
- public typeOfExpression(typeOfKeyword: ISyntaxToken, expression: IUnaryExpressionSyntax): TypeOfExpressionSyntax;
- public deleteExpression(deleteKeyword: ISyntaxToken, expression: IUnaryExpressionSyntax): DeleteExpressionSyntax;
- public voidExpression(voidKeyword: ISyntaxToken, expression: IUnaryExpressionSyntax): VoidExpressionSyntax;
- public debuggerStatement(debuggerKeyword: ISyntaxToken, semicolonToken: ISyntaxToken): DebuggerStatementSyntax;
- }
- var normalModeFactory: IFactory;
- var strictModeFactory: IFactory;
-}
-declare module TypeScript.SyntaxFacts {
- function isDirectivePrologueElement(node: ISyntaxNodeOrToken): boolean;
- function isUseStrictDirective(node: ISyntaxNodeOrToken): boolean;
- function isIdentifierNameOrAnyKeyword(token: ISyntaxToken): boolean;
-}
-declare module TypeScript {
- interface ISyntaxList extends ISyntaxElement {
- childAt(index: number): ISyntaxNodeOrToken;
- toArray(): ISyntaxNodeOrToken[];
- insertChildrenInto(array: ISyntaxElement[], index: number): void;
- }
-}
-declare module TypeScript.Syntax {
- class EmptySyntaxList implements ISyntaxList {
- public kind(): SyntaxKind;
- public isNode(): boolean;
- public isToken(): boolean;
- public isList(): boolean;
- public isSeparatedList(): boolean;
- public toJSON(key: any): any;
- public childCount(): number;
- public childAt(index: number): ISyntaxNodeOrToken;
- public toArray(): ISyntaxNodeOrToken[];
- public collectTextElements(elements: string[]): void;
- public firstToken(): ISyntaxToken;
- public lastToken(): ISyntaxToken;
- public fullWidth(): number;
- public width(): number;
- public leadingTrivia(): ISyntaxTriviaList;
- public trailingTrivia(): ISyntaxTriviaList;
- public leadingTriviaWidth(): number;
- public trailingTriviaWidth(): number;
- public fullText(): string;
- public isTypeScriptSpecific(): boolean;
- public isIncrementallyUnusable(): boolean;
- public findTokenInternal(parent: PositionedElement, position: number, fullStart: number): PositionedToken;
- public insertChildrenInto(array: ISyntaxElement[], index: number): void;
- }
- var emptyList: ISyntaxList;
- function list(nodes: ISyntaxNodeOrToken[]): ISyntaxList;
-}
-declare module TypeScript {
- class SyntaxNode implements ISyntaxNodeOrToken {
- private _data;
- constructor(parsedInStrictMode: boolean);
- public isNode(): boolean;
- public isToken(): boolean;
- public isList(): boolean;
- public isSeparatedList(): boolean;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public firstToken(): ISyntaxToken;
- public lastToken(): ISyntaxToken;
- public insertChildrenInto(array: ISyntaxElement[], index: number): void;
- public leadingTrivia(): ISyntaxTriviaList;
- public trailingTrivia(): ISyntaxTriviaList;
- public toJSON(key: any): any;
- public accept(visitor: ISyntaxVisitor): any;
- public fullText(): string;
- public collectTextElements(elements: string[]): void;
- public replaceToken(token1: ISyntaxToken, token2: ISyntaxToken): SyntaxNode;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): SyntaxNode;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): SyntaxNode;
- public hasLeadingTrivia(): boolean;
- public hasTrailingTrivia(): boolean;
- public isTypeScriptSpecific(): boolean;
- public isIncrementallyUnusable(): boolean;
- public parsedInStrictMode(): boolean;
- public fullWidth(): number;
- private computeData();
- private data();
- public findToken(position: number, includeSkippedTokens?: boolean): PositionedToken;
- private tryGetEndOfFileAt(position);
- private findTokenInternal(parent, position, fullStart);
- public findTokenOnLeft(position: number, includeSkippedTokens?: boolean): PositionedToken;
- public findCompleteTokenOnLeft(position: number, includeSkippedTokens?: boolean): PositionedToken;
- public isModuleElement(): boolean;
- public isClassElement(): boolean;
- public isTypeMember(): boolean;
- public isStatement(): boolean;
- public isExpression(): boolean;
- public isSwitchClause(): boolean;
- public structuralEquals(node: SyntaxNode): boolean;
- public width(): number;
- public leadingTriviaWidth(): number;
- public trailingTriviaWidth(): number;
- }
-}
-declare module TypeScript {
- interface ISyntaxNodeOrToken extends ISyntaxElement {
- withLeadingTrivia(leadingTrivia: ISyntaxTriviaList): ISyntaxNodeOrToken;
- withTrailingTrivia(trailingTrivia: ISyntaxTriviaList): ISyntaxNodeOrToken;
- accept(visitor: ISyntaxVisitor): any;
- }
-}
-declare module TypeScript {
- class SourceUnitSyntax extends SyntaxNode {
- public moduleElements: ISyntaxList;
- public endOfFileToken: ISyntaxToken;
- constructor(moduleElements: ISyntaxList, endOfFileToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public update(moduleElements: ISyntaxList, endOfFileToken: ISyntaxToken): SourceUnitSyntax;
- static create(endOfFileToken: ISyntaxToken): SourceUnitSyntax;
- static create1(endOfFileToken: ISyntaxToken): SourceUnitSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): SourceUnitSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): SourceUnitSyntax;
- public withModuleElements(moduleElements: ISyntaxList): SourceUnitSyntax;
- public withModuleElement(moduleElement: IModuleElementSyntax): SourceUnitSyntax;
- public withEndOfFileToken(endOfFileToken: ISyntaxToken): SourceUnitSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ExternalModuleReferenceSyntax extends SyntaxNode implements IModuleReferenceSyntax {
- public requireKeyword: ISyntaxToken;
- public openParenToken: ISyntaxToken;
- public stringLiteral: ISyntaxToken;
- public closeParenToken: ISyntaxToken;
- constructor(requireKeyword: ISyntaxToken, openParenToken: ISyntaxToken, stringLiteral: ISyntaxToken, closeParenToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isModuleReference(): boolean;
- public update(requireKeyword: ISyntaxToken, openParenToken: ISyntaxToken, stringLiteral: ISyntaxToken, closeParenToken: ISyntaxToken): ExternalModuleReferenceSyntax;
- static create1(stringLiteral: ISyntaxToken): ExternalModuleReferenceSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ExternalModuleReferenceSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ExternalModuleReferenceSyntax;
- public withRequireKeyword(requireKeyword: ISyntaxToken): ExternalModuleReferenceSyntax;
- public withOpenParenToken(openParenToken: ISyntaxToken): ExternalModuleReferenceSyntax;
- public withStringLiteral(stringLiteral: ISyntaxToken): ExternalModuleReferenceSyntax;
- public withCloseParenToken(closeParenToken: ISyntaxToken): ExternalModuleReferenceSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ModuleNameModuleReferenceSyntax extends SyntaxNode implements IModuleReferenceSyntax {
- public moduleName: INameSyntax;
- constructor(moduleName: INameSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isModuleReference(): boolean;
- public update(moduleName: INameSyntax): ModuleNameModuleReferenceSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ModuleNameModuleReferenceSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ModuleNameModuleReferenceSyntax;
- public withModuleName(moduleName: INameSyntax): ModuleNameModuleReferenceSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ImportDeclarationSyntax extends SyntaxNode implements IModuleElementSyntax {
- public modifiers: ISyntaxList;
- public importKeyword: ISyntaxToken;
- public identifier: ISyntaxToken;
- public equalsToken: ISyntaxToken;
- public moduleReference: IModuleReferenceSyntax;
- public semicolonToken: ISyntaxToken;
- constructor(modifiers: ISyntaxList, importKeyword: ISyntaxToken, identifier: ISyntaxToken, equalsToken: ISyntaxToken, moduleReference: IModuleReferenceSyntax, semicolonToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isModuleElement(): boolean;
- public update(modifiers: ISyntaxList, importKeyword: ISyntaxToken, identifier: ISyntaxToken, equalsToken: ISyntaxToken, moduleReference: IModuleReferenceSyntax, semicolonToken: ISyntaxToken): ImportDeclarationSyntax;
- static create(importKeyword: ISyntaxToken, identifier: ISyntaxToken, equalsToken: ISyntaxToken, moduleReference: IModuleReferenceSyntax, semicolonToken: ISyntaxToken): ImportDeclarationSyntax;
- static create1(identifier: ISyntaxToken, moduleReference: IModuleReferenceSyntax): ImportDeclarationSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ImportDeclarationSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ImportDeclarationSyntax;
- public withModifiers(modifiers: ISyntaxList): ImportDeclarationSyntax;
- public withModifier(modifier: ISyntaxToken): ImportDeclarationSyntax;
- public withImportKeyword(importKeyword: ISyntaxToken): ImportDeclarationSyntax;
- public withIdentifier(identifier: ISyntaxToken): ImportDeclarationSyntax;
- public withEqualsToken(equalsToken: ISyntaxToken): ImportDeclarationSyntax;
- public withModuleReference(moduleReference: IModuleReferenceSyntax): ImportDeclarationSyntax;
- public withSemicolonToken(semicolonToken: ISyntaxToken): ImportDeclarationSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ExportAssignmentSyntax extends SyntaxNode implements IModuleElementSyntax {
- public exportKeyword: ISyntaxToken;
- public equalsToken: ISyntaxToken;
- public identifier: ISyntaxToken;
- public semicolonToken: ISyntaxToken;
- constructor(exportKeyword: ISyntaxToken, equalsToken: ISyntaxToken, identifier: ISyntaxToken, semicolonToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isModuleElement(): boolean;
- public update(exportKeyword: ISyntaxToken, equalsToken: ISyntaxToken, identifier: ISyntaxToken, semicolonToken: ISyntaxToken): ExportAssignmentSyntax;
- static create1(identifier: ISyntaxToken): ExportAssignmentSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ExportAssignmentSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ExportAssignmentSyntax;
- public withExportKeyword(exportKeyword: ISyntaxToken): ExportAssignmentSyntax;
- public withEqualsToken(equalsToken: ISyntaxToken): ExportAssignmentSyntax;
- public withIdentifier(identifier: ISyntaxToken): ExportAssignmentSyntax;
- public withSemicolonToken(semicolonToken: ISyntaxToken): ExportAssignmentSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ClassDeclarationSyntax extends SyntaxNode implements IModuleElementSyntax {
- public modifiers: ISyntaxList;
- public classKeyword: ISyntaxToken;
- public identifier: ISyntaxToken;
- public typeParameterList: TypeParameterListSyntax;
- public heritageClauses: ISyntaxList;
- public openBraceToken: ISyntaxToken;
- public classElements: ISyntaxList;
- public closeBraceToken: ISyntaxToken;
- constructor(modifiers: ISyntaxList, classKeyword: ISyntaxToken, identifier: ISyntaxToken, typeParameterList: TypeParameterListSyntax, heritageClauses: ISyntaxList, openBraceToken: ISyntaxToken, classElements: ISyntaxList, closeBraceToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isModuleElement(): boolean;
- public update(modifiers: ISyntaxList, classKeyword: ISyntaxToken, identifier: ISyntaxToken, typeParameterList: TypeParameterListSyntax, heritageClauses: ISyntaxList, openBraceToken: ISyntaxToken, classElements: ISyntaxList, closeBraceToken: ISyntaxToken): ClassDeclarationSyntax;
- static create(classKeyword: ISyntaxToken, identifier: ISyntaxToken, openBraceToken: ISyntaxToken, closeBraceToken: ISyntaxToken): ClassDeclarationSyntax;
- static create1(identifier: ISyntaxToken): ClassDeclarationSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ClassDeclarationSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ClassDeclarationSyntax;
- public withModifiers(modifiers: ISyntaxList): ClassDeclarationSyntax;
- public withModifier(modifier: ISyntaxToken): ClassDeclarationSyntax;
- public withClassKeyword(classKeyword: ISyntaxToken): ClassDeclarationSyntax;
- public withIdentifier(identifier: ISyntaxToken): ClassDeclarationSyntax;
- public withTypeParameterList(typeParameterList: TypeParameterListSyntax): ClassDeclarationSyntax;
- public withHeritageClauses(heritageClauses: ISyntaxList): ClassDeclarationSyntax;
- public withHeritageClause(heritageClause: HeritageClauseSyntax): ClassDeclarationSyntax;
- public withOpenBraceToken(openBraceToken: ISyntaxToken): ClassDeclarationSyntax;
- public withClassElements(classElements: ISyntaxList): ClassDeclarationSyntax;
- public withClassElement(classElement: IClassElementSyntax): ClassDeclarationSyntax;
- public withCloseBraceToken(closeBraceToken: ISyntaxToken): ClassDeclarationSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class InterfaceDeclarationSyntax extends SyntaxNode implements IModuleElementSyntax {
- public modifiers: ISyntaxList;
- public interfaceKeyword: ISyntaxToken;
- public identifier: ISyntaxToken;
- public typeParameterList: TypeParameterListSyntax;
- public heritageClauses: ISyntaxList;
- public body: ObjectTypeSyntax;
- constructor(modifiers: ISyntaxList, interfaceKeyword: ISyntaxToken, identifier: ISyntaxToken, typeParameterList: TypeParameterListSyntax, heritageClauses: ISyntaxList, body: ObjectTypeSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isModuleElement(): boolean;
- public update(modifiers: ISyntaxList, interfaceKeyword: ISyntaxToken, identifier: ISyntaxToken, typeParameterList: TypeParameterListSyntax, heritageClauses: ISyntaxList, body: ObjectTypeSyntax): InterfaceDeclarationSyntax;
- static create(interfaceKeyword: ISyntaxToken, identifier: ISyntaxToken, body: ObjectTypeSyntax): InterfaceDeclarationSyntax;
- static create1(identifier: ISyntaxToken): InterfaceDeclarationSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): InterfaceDeclarationSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): InterfaceDeclarationSyntax;
- public withModifiers(modifiers: ISyntaxList): InterfaceDeclarationSyntax;
- public withModifier(modifier: ISyntaxToken): InterfaceDeclarationSyntax;
- public withInterfaceKeyword(interfaceKeyword: ISyntaxToken): InterfaceDeclarationSyntax;
- public withIdentifier(identifier: ISyntaxToken): InterfaceDeclarationSyntax;
- public withTypeParameterList(typeParameterList: TypeParameterListSyntax): InterfaceDeclarationSyntax;
- public withHeritageClauses(heritageClauses: ISyntaxList): InterfaceDeclarationSyntax;
- public withHeritageClause(heritageClause: HeritageClauseSyntax): InterfaceDeclarationSyntax;
- public withBody(body: ObjectTypeSyntax): InterfaceDeclarationSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class HeritageClauseSyntax extends SyntaxNode {
- public extendsOrImplementsKeyword: ISyntaxToken;
- public typeNames: ISeparatedSyntaxList;
- private _kind;
- constructor(kind: SyntaxKind, extendsOrImplementsKeyword: ISyntaxToken, typeNames: ISeparatedSyntaxList, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public kind(): SyntaxKind;
- public update(kind: SyntaxKind, extendsOrImplementsKeyword: ISyntaxToken, typeNames: ISeparatedSyntaxList): HeritageClauseSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): HeritageClauseSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): HeritageClauseSyntax;
- public withKind(kind: SyntaxKind): HeritageClauseSyntax;
- public withExtendsOrImplementsKeyword(extendsOrImplementsKeyword: ISyntaxToken): HeritageClauseSyntax;
- public withTypeNames(typeNames: ISeparatedSyntaxList): HeritageClauseSyntax;
- public withTypeName(typeName: INameSyntax): HeritageClauseSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ModuleDeclarationSyntax extends SyntaxNode implements IModuleElementSyntax {
- public modifiers: ISyntaxList;
- public moduleKeyword: ISyntaxToken;
- public name: INameSyntax;
- public stringLiteral: ISyntaxToken;
- public openBraceToken: ISyntaxToken;
- public moduleElements: ISyntaxList;
- public closeBraceToken: ISyntaxToken;
- constructor(modifiers: ISyntaxList, moduleKeyword: ISyntaxToken, name: INameSyntax, stringLiteral: ISyntaxToken, openBraceToken: ISyntaxToken, moduleElements: ISyntaxList, closeBraceToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isModuleElement(): boolean;
- public update(modifiers: ISyntaxList, moduleKeyword: ISyntaxToken, name: INameSyntax, stringLiteral: ISyntaxToken, openBraceToken: ISyntaxToken, moduleElements: ISyntaxList, closeBraceToken: ISyntaxToken): ModuleDeclarationSyntax;
- static create(moduleKeyword: ISyntaxToken, openBraceToken: ISyntaxToken, closeBraceToken: ISyntaxToken): ModuleDeclarationSyntax;
- static create1(): ModuleDeclarationSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ModuleDeclarationSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ModuleDeclarationSyntax;
- public withModifiers(modifiers: ISyntaxList): ModuleDeclarationSyntax;
- public withModifier(modifier: ISyntaxToken): ModuleDeclarationSyntax;
- public withModuleKeyword(moduleKeyword: ISyntaxToken): ModuleDeclarationSyntax;
- public withName(name: INameSyntax): ModuleDeclarationSyntax;
- public withStringLiteral(stringLiteral: ISyntaxToken): ModuleDeclarationSyntax;
- public withOpenBraceToken(openBraceToken: ISyntaxToken): ModuleDeclarationSyntax;
- public withModuleElements(moduleElements: ISyntaxList): ModuleDeclarationSyntax;
- public withModuleElement(moduleElement: IModuleElementSyntax): ModuleDeclarationSyntax;
- public withCloseBraceToken(closeBraceToken: ISyntaxToken): ModuleDeclarationSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class FunctionDeclarationSyntax extends SyntaxNode implements IStatementSyntax {
- public modifiers: ISyntaxList;
- public functionKeyword: ISyntaxToken;
- public identifier: ISyntaxToken;
- public callSignature: CallSignatureSyntax;
- public block: BlockSyntax;
- public semicolonToken: ISyntaxToken;
- constructor(modifiers: ISyntaxList, functionKeyword: ISyntaxToken, identifier: ISyntaxToken, callSignature: CallSignatureSyntax, block: BlockSyntax, semicolonToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isStatement(): boolean;
- public isModuleElement(): boolean;
- public update(modifiers: ISyntaxList, functionKeyword: ISyntaxToken, identifier: ISyntaxToken, callSignature: CallSignatureSyntax, block: BlockSyntax, semicolonToken: ISyntaxToken): FunctionDeclarationSyntax;
- static create(functionKeyword: ISyntaxToken, identifier: ISyntaxToken, callSignature: CallSignatureSyntax): FunctionDeclarationSyntax;
- static create1(identifier: ISyntaxToken): FunctionDeclarationSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): FunctionDeclarationSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): FunctionDeclarationSyntax;
- public withModifiers(modifiers: ISyntaxList): FunctionDeclarationSyntax;
- public withModifier(modifier: ISyntaxToken): FunctionDeclarationSyntax;
- public withFunctionKeyword(functionKeyword: ISyntaxToken): FunctionDeclarationSyntax;
- public withIdentifier(identifier: ISyntaxToken): FunctionDeclarationSyntax;
- public withCallSignature(callSignature: CallSignatureSyntax): FunctionDeclarationSyntax;
- public withBlock(block: BlockSyntax): FunctionDeclarationSyntax;
- public withSemicolonToken(semicolonToken: ISyntaxToken): FunctionDeclarationSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class VariableStatementSyntax extends SyntaxNode implements IStatementSyntax {
- public modifiers: ISyntaxList;
- public variableDeclaration: VariableDeclarationSyntax;
- public semicolonToken: ISyntaxToken;
- constructor(modifiers: ISyntaxList, variableDeclaration: VariableDeclarationSyntax, semicolonToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isStatement(): boolean;
- public isModuleElement(): boolean;
- public update(modifiers: ISyntaxList, variableDeclaration: VariableDeclarationSyntax, semicolonToken: ISyntaxToken): VariableStatementSyntax;
- static create(variableDeclaration: VariableDeclarationSyntax, semicolonToken: ISyntaxToken): VariableStatementSyntax;
- static create1(variableDeclaration: VariableDeclarationSyntax): VariableStatementSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): VariableStatementSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): VariableStatementSyntax;
- public withModifiers(modifiers: ISyntaxList): VariableStatementSyntax;
- public withModifier(modifier: ISyntaxToken): VariableStatementSyntax;
- public withVariableDeclaration(variableDeclaration: VariableDeclarationSyntax): VariableStatementSyntax;
- public withSemicolonToken(semicolonToken: ISyntaxToken): VariableStatementSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class VariableDeclarationSyntax extends SyntaxNode {
- public varKeyword: ISyntaxToken;
- public variableDeclarators: ISeparatedSyntaxList;
- constructor(varKeyword: ISyntaxToken, variableDeclarators: ISeparatedSyntaxList, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public update(varKeyword: ISyntaxToken, variableDeclarators: ISeparatedSyntaxList): VariableDeclarationSyntax;
- static create1(variableDeclarators: ISeparatedSyntaxList): VariableDeclarationSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): VariableDeclarationSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): VariableDeclarationSyntax;
- public withVarKeyword(varKeyword: ISyntaxToken): VariableDeclarationSyntax;
- public withVariableDeclarators(variableDeclarators: ISeparatedSyntaxList): VariableDeclarationSyntax;
- public withVariableDeclarator(variableDeclarator: VariableDeclaratorSyntax): VariableDeclarationSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class VariableDeclaratorSyntax extends SyntaxNode {
- public propertyName: ISyntaxToken;
- public typeAnnotation: TypeAnnotationSyntax;
- public equalsValueClause: EqualsValueClauseSyntax;
- constructor(propertyName: ISyntaxToken, typeAnnotation: TypeAnnotationSyntax, equalsValueClause: EqualsValueClauseSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public update(propertyName: ISyntaxToken, typeAnnotation: TypeAnnotationSyntax, equalsValueClause: EqualsValueClauseSyntax): VariableDeclaratorSyntax;
- static create(propertyName: ISyntaxToken): VariableDeclaratorSyntax;
- static create1(propertyName: ISyntaxToken): VariableDeclaratorSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): VariableDeclaratorSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): VariableDeclaratorSyntax;
- public withPropertyName(propertyName: ISyntaxToken): VariableDeclaratorSyntax;
- public withTypeAnnotation(typeAnnotation: TypeAnnotationSyntax): VariableDeclaratorSyntax;
- public withEqualsValueClause(equalsValueClause: EqualsValueClauseSyntax): VariableDeclaratorSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class EqualsValueClauseSyntax extends SyntaxNode {
- public equalsToken: ISyntaxToken;
- public value: IExpressionSyntax;
- constructor(equalsToken: ISyntaxToken, value: IExpressionSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public update(equalsToken: ISyntaxToken, value: IExpressionSyntax): EqualsValueClauseSyntax;
- static create1(value: IExpressionSyntax): EqualsValueClauseSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): EqualsValueClauseSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): EqualsValueClauseSyntax;
- public withEqualsToken(equalsToken: ISyntaxToken): EqualsValueClauseSyntax;
- public withValue(value: IExpressionSyntax): EqualsValueClauseSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class PrefixUnaryExpressionSyntax extends SyntaxNode implements IUnaryExpressionSyntax {
- public operatorToken: ISyntaxToken;
- public operand: IUnaryExpressionSyntax;
- private _kind;
- constructor(kind: SyntaxKind, operatorToken: ISyntaxToken, operand: IUnaryExpressionSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isUnaryExpression(): boolean;
- public isExpression(): boolean;
- public kind(): SyntaxKind;
- public update(kind: SyntaxKind, operatorToken: ISyntaxToken, operand: IUnaryExpressionSyntax): PrefixUnaryExpressionSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): PrefixUnaryExpressionSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): PrefixUnaryExpressionSyntax;
- public withKind(kind: SyntaxKind): PrefixUnaryExpressionSyntax;
- public withOperatorToken(operatorToken: ISyntaxToken): PrefixUnaryExpressionSyntax;
- public withOperand(operand: IUnaryExpressionSyntax): PrefixUnaryExpressionSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ArrayLiteralExpressionSyntax extends SyntaxNode implements IPrimaryExpressionSyntax {
- public openBracketToken: ISyntaxToken;
- public expressions: ISeparatedSyntaxList;
- public closeBracketToken: ISyntaxToken;
- constructor(openBracketToken: ISyntaxToken, expressions: ISeparatedSyntaxList, closeBracketToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isPrimaryExpression(): boolean;
- public isMemberExpression(): boolean;
- public isPostfixExpression(): boolean;
- public isUnaryExpression(): boolean;
- public isExpression(): boolean;
- public update(openBracketToken: ISyntaxToken, expressions: ISeparatedSyntaxList, closeBracketToken: ISyntaxToken): ArrayLiteralExpressionSyntax;
- static create(openBracketToken: ISyntaxToken, closeBracketToken: ISyntaxToken): ArrayLiteralExpressionSyntax;
- static create1(): ArrayLiteralExpressionSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ArrayLiteralExpressionSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ArrayLiteralExpressionSyntax;
- public withOpenBracketToken(openBracketToken: ISyntaxToken): ArrayLiteralExpressionSyntax;
- public withExpressions(expressions: ISeparatedSyntaxList): ArrayLiteralExpressionSyntax;
- public withExpression(expression: IExpressionSyntax): ArrayLiteralExpressionSyntax;
- public withCloseBracketToken(closeBracketToken: ISyntaxToken): ArrayLiteralExpressionSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class OmittedExpressionSyntax extends SyntaxNode implements IExpressionSyntax {
- constructor(parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isExpression(): boolean;
- public update(): OmittedExpressionSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): OmittedExpressionSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): OmittedExpressionSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ParenthesizedExpressionSyntax extends SyntaxNode implements IPrimaryExpressionSyntax {
- public openParenToken: ISyntaxToken;
- public expression: IExpressionSyntax;
- public closeParenToken: ISyntaxToken;
- constructor(openParenToken: ISyntaxToken, expression: IExpressionSyntax, closeParenToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isPrimaryExpression(): boolean;
- public isMemberExpression(): boolean;
- public isPostfixExpression(): boolean;
- public isUnaryExpression(): boolean;
- public isExpression(): boolean;
- public update(openParenToken: ISyntaxToken, expression: IExpressionSyntax, closeParenToken: ISyntaxToken): ParenthesizedExpressionSyntax;
- static create1(expression: IExpressionSyntax): ParenthesizedExpressionSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ParenthesizedExpressionSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ParenthesizedExpressionSyntax;
- public withOpenParenToken(openParenToken: ISyntaxToken): ParenthesizedExpressionSyntax;
- public withExpression(expression: IExpressionSyntax): ParenthesizedExpressionSyntax;
- public withCloseParenToken(closeParenToken: ISyntaxToken): ParenthesizedExpressionSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class SimpleArrowFunctionExpressionSyntax extends SyntaxNode implements IArrowFunctionExpressionSyntax {
- public identifier: ISyntaxToken;
- public equalsGreaterThanToken: ISyntaxToken;
- public block: BlockSyntax;
- public expression: IExpressionSyntax;
- constructor(identifier: ISyntaxToken, equalsGreaterThanToken: ISyntaxToken, block: BlockSyntax, expression: IExpressionSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isArrowFunctionExpression(): boolean;
- public isUnaryExpression(): boolean;
- public isExpression(): boolean;
- public update(identifier: ISyntaxToken, equalsGreaterThanToken: ISyntaxToken, block: BlockSyntax, expression: IExpressionSyntax): SimpleArrowFunctionExpressionSyntax;
- static create(identifier: ISyntaxToken, equalsGreaterThanToken: ISyntaxToken): SimpleArrowFunctionExpressionSyntax;
- static create1(identifier: ISyntaxToken): SimpleArrowFunctionExpressionSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): SimpleArrowFunctionExpressionSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): SimpleArrowFunctionExpressionSyntax;
- public withIdentifier(identifier: ISyntaxToken): SimpleArrowFunctionExpressionSyntax;
- public withEqualsGreaterThanToken(equalsGreaterThanToken: ISyntaxToken): SimpleArrowFunctionExpressionSyntax;
- public withBlock(block: BlockSyntax): SimpleArrowFunctionExpressionSyntax;
- public withExpression(expression: IExpressionSyntax): SimpleArrowFunctionExpressionSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ParenthesizedArrowFunctionExpressionSyntax extends SyntaxNode implements IArrowFunctionExpressionSyntax {
- public callSignature: CallSignatureSyntax;
- public equalsGreaterThanToken: ISyntaxToken;
- public block: BlockSyntax;
- public expression: IExpressionSyntax;
- constructor(callSignature: CallSignatureSyntax, equalsGreaterThanToken: ISyntaxToken, block: BlockSyntax, expression: IExpressionSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isArrowFunctionExpression(): boolean;
- public isUnaryExpression(): boolean;
- public isExpression(): boolean;
- public update(callSignature: CallSignatureSyntax, equalsGreaterThanToken: ISyntaxToken, block: BlockSyntax, expression: IExpressionSyntax): ParenthesizedArrowFunctionExpressionSyntax;
- static create(callSignature: CallSignatureSyntax, equalsGreaterThanToken: ISyntaxToken): ParenthesizedArrowFunctionExpressionSyntax;
- static create1(): ParenthesizedArrowFunctionExpressionSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ParenthesizedArrowFunctionExpressionSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ParenthesizedArrowFunctionExpressionSyntax;
- public withCallSignature(callSignature: CallSignatureSyntax): ParenthesizedArrowFunctionExpressionSyntax;
- public withEqualsGreaterThanToken(equalsGreaterThanToken: ISyntaxToken): ParenthesizedArrowFunctionExpressionSyntax;
- public withBlock(block: BlockSyntax): ParenthesizedArrowFunctionExpressionSyntax;
- public withExpression(expression: IExpressionSyntax): ParenthesizedArrowFunctionExpressionSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class QualifiedNameSyntax extends SyntaxNode implements INameSyntax {
- public left: INameSyntax;
- public dotToken: ISyntaxToken;
- public right: ISyntaxToken;
- constructor(left: INameSyntax, dotToken: ISyntaxToken, right: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isName(): boolean;
- public isType(): boolean;
- public update(left: INameSyntax, dotToken: ISyntaxToken, right: ISyntaxToken): QualifiedNameSyntax;
- static create1(left: INameSyntax, right: ISyntaxToken): QualifiedNameSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): QualifiedNameSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): QualifiedNameSyntax;
- public withLeft(left: INameSyntax): QualifiedNameSyntax;
- public withDotToken(dotToken: ISyntaxToken): QualifiedNameSyntax;
- public withRight(right: ISyntaxToken): QualifiedNameSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class TypeArgumentListSyntax extends SyntaxNode {
- public lessThanToken: ISyntaxToken;
- public typeArguments: ISeparatedSyntaxList;
- public greaterThanToken: ISyntaxToken;
- constructor(lessThanToken: ISyntaxToken, typeArguments: ISeparatedSyntaxList, greaterThanToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public update(lessThanToken: ISyntaxToken, typeArguments: ISeparatedSyntaxList, greaterThanToken: ISyntaxToken): TypeArgumentListSyntax;
- static create(lessThanToken: ISyntaxToken, greaterThanToken: ISyntaxToken): TypeArgumentListSyntax;
- static create1(): TypeArgumentListSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): TypeArgumentListSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): TypeArgumentListSyntax;
- public withLessThanToken(lessThanToken: ISyntaxToken): TypeArgumentListSyntax;
- public withTypeArguments(typeArguments: ISeparatedSyntaxList): TypeArgumentListSyntax;
- public withTypeArgument(typeArgument: ITypeSyntax): TypeArgumentListSyntax;
- public withGreaterThanToken(greaterThanToken: ISyntaxToken): TypeArgumentListSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ConstructorTypeSyntax extends SyntaxNode implements ITypeSyntax {
- public newKeyword: ISyntaxToken;
- public typeParameterList: TypeParameterListSyntax;
- public parameterList: ParameterListSyntax;
- public equalsGreaterThanToken: ISyntaxToken;
- public type: ITypeSyntax;
- constructor(newKeyword: ISyntaxToken, typeParameterList: TypeParameterListSyntax, parameterList: ParameterListSyntax, equalsGreaterThanToken: ISyntaxToken, type: ITypeSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isType(): boolean;
- public update(newKeyword: ISyntaxToken, typeParameterList: TypeParameterListSyntax, parameterList: ParameterListSyntax, equalsGreaterThanToken: ISyntaxToken, type: ITypeSyntax): ConstructorTypeSyntax;
- static create(newKeyword: ISyntaxToken, parameterList: ParameterListSyntax, equalsGreaterThanToken: ISyntaxToken, type: ITypeSyntax): ConstructorTypeSyntax;
- static create1(type: ITypeSyntax): ConstructorTypeSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ConstructorTypeSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ConstructorTypeSyntax;
- public withNewKeyword(newKeyword: ISyntaxToken): ConstructorTypeSyntax;
- public withTypeParameterList(typeParameterList: TypeParameterListSyntax): ConstructorTypeSyntax;
- public withParameterList(parameterList: ParameterListSyntax): ConstructorTypeSyntax;
- public withEqualsGreaterThanToken(equalsGreaterThanToken: ISyntaxToken): ConstructorTypeSyntax;
- public withType(type: ITypeSyntax): ConstructorTypeSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class FunctionTypeSyntax extends SyntaxNode implements ITypeSyntax {
- public typeParameterList: TypeParameterListSyntax;
- public parameterList: ParameterListSyntax;
- public equalsGreaterThanToken: ISyntaxToken;
- public type: ITypeSyntax;
- constructor(typeParameterList: TypeParameterListSyntax, parameterList: ParameterListSyntax, equalsGreaterThanToken: ISyntaxToken, type: ITypeSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isType(): boolean;
- public update(typeParameterList: TypeParameterListSyntax, parameterList: ParameterListSyntax, equalsGreaterThanToken: ISyntaxToken, type: ITypeSyntax): FunctionTypeSyntax;
- static create(parameterList: ParameterListSyntax, equalsGreaterThanToken: ISyntaxToken, type: ITypeSyntax): FunctionTypeSyntax;
- static create1(type: ITypeSyntax): FunctionTypeSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): FunctionTypeSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): FunctionTypeSyntax;
- public withTypeParameterList(typeParameterList: TypeParameterListSyntax): FunctionTypeSyntax;
- public withParameterList(parameterList: ParameterListSyntax): FunctionTypeSyntax;
- public withEqualsGreaterThanToken(equalsGreaterThanToken: ISyntaxToken): FunctionTypeSyntax;
- public withType(type: ITypeSyntax): FunctionTypeSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ObjectTypeSyntax extends SyntaxNode implements ITypeSyntax {
- public openBraceToken: ISyntaxToken;
- public typeMembers: ISeparatedSyntaxList;
- public closeBraceToken: ISyntaxToken;
- constructor(openBraceToken: ISyntaxToken, typeMembers: ISeparatedSyntaxList, closeBraceToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isType(): boolean;
- public update(openBraceToken: ISyntaxToken, typeMembers: ISeparatedSyntaxList, closeBraceToken: ISyntaxToken): ObjectTypeSyntax;
- static create(openBraceToken: ISyntaxToken, closeBraceToken: ISyntaxToken): ObjectTypeSyntax;
- static create1(): ObjectTypeSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ObjectTypeSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ObjectTypeSyntax;
- public withOpenBraceToken(openBraceToken: ISyntaxToken): ObjectTypeSyntax;
- public withTypeMembers(typeMembers: ISeparatedSyntaxList): ObjectTypeSyntax;
- public withTypeMember(typeMember: ITypeMemberSyntax): ObjectTypeSyntax;
- public withCloseBraceToken(closeBraceToken: ISyntaxToken): ObjectTypeSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ArrayTypeSyntax extends SyntaxNode implements ITypeSyntax {
- public type: ITypeSyntax;
- public openBracketToken: ISyntaxToken;
- public closeBracketToken: ISyntaxToken;
- constructor(type: ITypeSyntax, openBracketToken: ISyntaxToken, closeBracketToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isType(): boolean;
- public update(type: ITypeSyntax, openBracketToken: ISyntaxToken, closeBracketToken: ISyntaxToken): ArrayTypeSyntax;
- static create1(type: ITypeSyntax): ArrayTypeSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ArrayTypeSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ArrayTypeSyntax;
- public withType(type: ITypeSyntax): ArrayTypeSyntax;
- public withOpenBracketToken(openBracketToken: ISyntaxToken): ArrayTypeSyntax;
- public withCloseBracketToken(closeBracketToken: ISyntaxToken): ArrayTypeSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class GenericTypeSyntax extends SyntaxNode implements ITypeSyntax {
- public name: INameSyntax;
- public typeArgumentList: TypeArgumentListSyntax;
- constructor(name: INameSyntax, typeArgumentList: TypeArgumentListSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isType(): boolean;
- public update(name: INameSyntax, typeArgumentList: TypeArgumentListSyntax): GenericTypeSyntax;
- static create1(name: INameSyntax): GenericTypeSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): GenericTypeSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): GenericTypeSyntax;
- public withName(name: INameSyntax): GenericTypeSyntax;
- public withTypeArgumentList(typeArgumentList: TypeArgumentListSyntax): GenericTypeSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class TypeQuerySyntax extends SyntaxNode implements ITypeSyntax {
- public typeOfKeyword: ISyntaxToken;
- public name: INameSyntax;
- constructor(typeOfKeyword: ISyntaxToken, name: INameSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isType(): boolean;
- public update(typeOfKeyword: ISyntaxToken, name: INameSyntax): TypeQuerySyntax;
- static create1(name: INameSyntax): TypeQuerySyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): TypeQuerySyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): TypeQuerySyntax;
- public withTypeOfKeyword(typeOfKeyword: ISyntaxToken): TypeQuerySyntax;
- public withName(name: INameSyntax): TypeQuerySyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class TypeAnnotationSyntax extends SyntaxNode {
- public colonToken: ISyntaxToken;
- public type: ITypeSyntax;
- constructor(colonToken: ISyntaxToken, type: ITypeSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public update(colonToken: ISyntaxToken, type: ITypeSyntax): TypeAnnotationSyntax;
- static create1(type: ITypeSyntax): TypeAnnotationSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): TypeAnnotationSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): TypeAnnotationSyntax;
- public withColonToken(colonToken: ISyntaxToken): TypeAnnotationSyntax;
- public withType(type: ITypeSyntax): TypeAnnotationSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class BlockSyntax extends SyntaxNode implements IStatementSyntax {
- public openBraceToken: ISyntaxToken;
- public statements: ISyntaxList;
- public closeBraceToken: ISyntaxToken;
- constructor(openBraceToken: ISyntaxToken, statements: ISyntaxList, closeBraceToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isStatement(): boolean;
- public isModuleElement(): boolean;
- public update(openBraceToken: ISyntaxToken, statements: ISyntaxList, closeBraceToken: ISyntaxToken): BlockSyntax;
- static create(openBraceToken: ISyntaxToken, closeBraceToken: ISyntaxToken): BlockSyntax;
- static create1(): BlockSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): BlockSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): BlockSyntax;
- public withOpenBraceToken(openBraceToken: ISyntaxToken): BlockSyntax;
- public withStatements(statements: ISyntaxList): BlockSyntax;
- public withStatement(statement: IStatementSyntax): BlockSyntax;
- public withCloseBraceToken(closeBraceToken: ISyntaxToken): BlockSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ParameterSyntax extends SyntaxNode {
- public dotDotDotToken: ISyntaxToken;
- public modifiers: ISyntaxList;
- public identifier: ISyntaxToken;
- public questionToken: ISyntaxToken;
- public typeAnnotation: TypeAnnotationSyntax;
- public equalsValueClause: EqualsValueClauseSyntax;
- constructor(dotDotDotToken: ISyntaxToken, modifiers: ISyntaxList, identifier: ISyntaxToken, questionToken: ISyntaxToken, typeAnnotation: TypeAnnotationSyntax, equalsValueClause: EqualsValueClauseSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public update(dotDotDotToken: ISyntaxToken, modifiers: ISyntaxList, identifier: ISyntaxToken, questionToken: ISyntaxToken, typeAnnotation: TypeAnnotationSyntax, equalsValueClause: EqualsValueClauseSyntax): ParameterSyntax;
- static create(identifier: ISyntaxToken): ParameterSyntax;
- static create1(identifier: ISyntaxToken): ParameterSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ParameterSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ParameterSyntax;
- public withDotDotDotToken(dotDotDotToken: ISyntaxToken): ParameterSyntax;
- public withModifiers(modifiers: ISyntaxList): ParameterSyntax;
- public withModifier(modifier: ISyntaxToken): ParameterSyntax;
- public withIdentifier(identifier: ISyntaxToken): ParameterSyntax;
- public withQuestionToken(questionToken: ISyntaxToken): ParameterSyntax;
- public withTypeAnnotation(typeAnnotation: TypeAnnotationSyntax): ParameterSyntax;
- public withEqualsValueClause(equalsValueClause: EqualsValueClauseSyntax): ParameterSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class MemberAccessExpressionSyntax extends SyntaxNode implements IMemberExpressionSyntax {
- public expression: IExpressionSyntax;
- public dotToken: ISyntaxToken;
- public name: ISyntaxToken;
- constructor(expression: IExpressionSyntax, dotToken: ISyntaxToken, name: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isMemberExpression(): boolean;
- public isPostfixExpression(): boolean;
- public isUnaryExpression(): boolean;
- public isExpression(): boolean;
- public update(expression: IExpressionSyntax, dotToken: ISyntaxToken, name: ISyntaxToken): MemberAccessExpressionSyntax;
- static create1(expression: IExpressionSyntax, name: ISyntaxToken): MemberAccessExpressionSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): MemberAccessExpressionSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): MemberAccessExpressionSyntax;
- public withExpression(expression: IExpressionSyntax): MemberAccessExpressionSyntax;
- public withDotToken(dotToken: ISyntaxToken): MemberAccessExpressionSyntax;
- public withName(name: ISyntaxToken): MemberAccessExpressionSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class PostfixUnaryExpressionSyntax extends SyntaxNode implements IPostfixExpressionSyntax {
- public operand: IMemberExpressionSyntax;
- public operatorToken: ISyntaxToken;
- private _kind;
- constructor(kind: SyntaxKind, operand: IMemberExpressionSyntax, operatorToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isPostfixExpression(): boolean;
- public isUnaryExpression(): boolean;
- public isExpression(): boolean;
- public kind(): SyntaxKind;
- public update(kind: SyntaxKind, operand: IMemberExpressionSyntax, operatorToken: ISyntaxToken): PostfixUnaryExpressionSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): PostfixUnaryExpressionSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): PostfixUnaryExpressionSyntax;
- public withKind(kind: SyntaxKind): PostfixUnaryExpressionSyntax;
- public withOperand(operand: IMemberExpressionSyntax): PostfixUnaryExpressionSyntax;
- public withOperatorToken(operatorToken: ISyntaxToken): PostfixUnaryExpressionSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ElementAccessExpressionSyntax extends SyntaxNode implements IMemberExpressionSyntax {
- public expression: IExpressionSyntax;
- public openBracketToken: ISyntaxToken;
- public argumentExpression: IExpressionSyntax;
- public closeBracketToken: ISyntaxToken;
- constructor(expression: IExpressionSyntax, openBracketToken: ISyntaxToken, argumentExpression: IExpressionSyntax, closeBracketToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isMemberExpression(): boolean;
- public isPostfixExpression(): boolean;
- public isUnaryExpression(): boolean;
- public isExpression(): boolean;
- public update(expression: IExpressionSyntax, openBracketToken: ISyntaxToken, argumentExpression: IExpressionSyntax, closeBracketToken: ISyntaxToken): ElementAccessExpressionSyntax;
- static create1(expression: IExpressionSyntax, argumentExpression: IExpressionSyntax): ElementAccessExpressionSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ElementAccessExpressionSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ElementAccessExpressionSyntax;
- public withExpression(expression: IExpressionSyntax): ElementAccessExpressionSyntax;
- public withOpenBracketToken(openBracketToken: ISyntaxToken): ElementAccessExpressionSyntax;
- public withArgumentExpression(argumentExpression: IExpressionSyntax): ElementAccessExpressionSyntax;
- public withCloseBracketToken(closeBracketToken: ISyntaxToken): ElementAccessExpressionSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class InvocationExpressionSyntax extends SyntaxNode implements IMemberExpressionSyntax {
- public expression: IMemberExpressionSyntax;
- public argumentList: ArgumentListSyntax;
- constructor(expression: IMemberExpressionSyntax, argumentList: ArgumentListSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isMemberExpression(): boolean;
- public isPostfixExpression(): boolean;
- public isUnaryExpression(): boolean;
- public isExpression(): boolean;
- public update(expression: IMemberExpressionSyntax, argumentList: ArgumentListSyntax): InvocationExpressionSyntax;
- static create1(expression: IMemberExpressionSyntax): InvocationExpressionSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): InvocationExpressionSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): InvocationExpressionSyntax;
- public withExpression(expression: IMemberExpressionSyntax): InvocationExpressionSyntax;
- public withArgumentList(argumentList: ArgumentListSyntax): InvocationExpressionSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ArgumentListSyntax extends SyntaxNode {
- public typeArgumentList: TypeArgumentListSyntax;
- public openParenToken: ISyntaxToken;
- public closeParenToken: ISyntaxToken;
- public arguments: ISeparatedSyntaxList;
- constructor(typeArgumentList: TypeArgumentListSyntax, openParenToken: ISyntaxToken, _arguments: ISeparatedSyntaxList, closeParenToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public update(typeArgumentList: TypeArgumentListSyntax, openParenToken: ISyntaxToken, _arguments: ISeparatedSyntaxList, closeParenToken: ISyntaxToken): ArgumentListSyntax;
- static create(openParenToken: ISyntaxToken, closeParenToken: ISyntaxToken): ArgumentListSyntax;
- static create1(): ArgumentListSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ArgumentListSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ArgumentListSyntax;
- public withTypeArgumentList(typeArgumentList: TypeArgumentListSyntax): ArgumentListSyntax;
- public withOpenParenToken(openParenToken: ISyntaxToken): ArgumentListSyntax;
- public withArguments(_arguments: ISeparatedSyntaxList): ArgumentListSyntax;
- public withArgument(_argument: IExpressionSyntax): ArgumentListSyntax;
- public withCloseParenToken(closeParenToken: ISyntaxToken): ArgumentListSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class BinaryExpressionSyntax extends SyntaxNode implements IExpressionSyntax {
- public left: IExpressionSyntax;
- public operatorToken: ISyntaxToken;
- public right: IExpressionSyntax;
- private _kind;
- constructor(kind: SyntaxKind, left: IExpressionSyntax, operatorToken: ISyntaxToken, right: IExpressionSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isExpression(): boolean;
- public kind(): SyntaxKind;
- public update(kind: SyntaxKind, left: IExpressionSyntax, operatorToken: ISyntaxToken, right: IExpressionSyntax): BinaryExpressionSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): BinaryExpressionSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): BinaryExpressionSyntax;
- public withKind(kind: SyntaxKind): BinaryExpressionSyntax;
- public withLeft(left: IExpressionSyntax): BinaryExpressionSyntax;
- public withOperatorToken(operatorToken: ISyntaxToken): BinaryExpressionSyntax;
- public withRight(right: IExpressionSyntax): BinaryExpressionSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ConditionalExpressionSyntax extends SyntaxNode implements IExpressionSyntax {
- public condition: IExpressionSyntax;
- public questionToken: ISyntaxToken;
- public whenTrue: IExpressionSyntax;
- public colonToken: ISyntaxToken;
- public whenFalse: IExpressionSyntax;
- constructor(condition: IExpressionSyntax, questionToken: ISyntaxToken, whenTrue: IExpressionSyntax, colonToken: ISyntaxToken, whenFalse: IExpressionSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isExpression(): boolean;
- public update(condition: IExpressionSyntax, questionToken: ISyntaxToken, whenTrue: IExpressionSyntax, colonToken: ISyntaxToken, whenFalse: IExpressionSyntax): ConditionalExpressionSyntax;
- static create1(condition: IExpressionSyntax, whenTrue: IExpressionSyntax, whenFalse: IExpressionSyntax): ConditionalExpressionSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ConditionalExpressionSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ConditionalExpressionSyntax;
- public withCondition(condition: IExpressionSyntax): ConditionalExpressionSyntax;
- public withQuestionToken(questionToken: ISyntaxToken): ConditionalExpressionSyntax;
- public withWhenTrue(whenTrue: IExpressionSyntax): ConditionalExpressionSyntax;
- public withColonToken(colonToken: ISyntaxToken): ConditionalExpressionSyntax;
- public withWhenFalse(whenFalse: IExpressionSyntax): ConditionalExpressionSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ConstructSignatureSyntax extends SyntaxNode implements ITypeMemberSyntax {
- public newKeyword: ISyntaxToken;
- public callSignature: CallSignatureSyntax;
- constructor(newKeyword: ISyntaxToken, callSignature: CallSignatureSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isTypeMember(): boolean;
- public update(newKeyword: ISyntaxToken, callSignature: CallSignatureSyntax): ConstructSignatureSyntax;
- static create1(): ConstructSignatureSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ConstructSignatureSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ConstructSignatureSyntax;
- public withNewKeyword(newKeyword: ISyntaxToken): ConstructSignatureSyntax;
- public withCallSignature(callSignature: CallSignatureSyntax): ConstructSignatureSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class MethodSignatureSyntax extends SyntaxNode implements ITypeMemberSyntax {
- public propertyName: ISyntaxToken;
- public questionToken: ISyntaxToken;
- public callSignature: CallSignatureSyntax;
- constructor(propertyName: ISyntaxToken, questionToken: ISyntaxToken, callSignature: CallSignatureSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isTypeMember(): boolean;
- public update(propertyName: ISyntaxToken, questionToken: ISyntaxToken, callSignature: CallSignatureSyntax): MethodSignatureSyntax;
- static create(propertyName: ISyntaxToken, callSignature: CallSignatureSyntax): MethodSignatureSyntax;
- static create1(propertyName: ISyntaxToken): MethodSignatureSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): MethodSignatureSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): MethodSignatureSyntax;
- public withPropertyName(propertyName: ISyntaxToken): MethodSignatureSyntax;
- public withQuestionToken(questionToken: ISyntaxToken): MethodSignatureSyntax;
- public withCallSignature(callSignature: CallSignatureSyntax): MethodSignatureSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class IndexSignatureSyntax extends SyntaxNode implements ITypeMemberSyntax {
- public openBracketToken: ISyntaxToken;
- public parameter: ParameterSyntax;
- public closeBracketToken: ISyntaxToken;
- public typeAnnotation: TypeAnnotationSyntax;
- constructor(openBracketToken: ISyntaxToken, parameter: ParameterSyntax, closeBracketToken: ISyntaxToken, typeAnnotation: TypeAnnotationSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isTypeMember(): boolean;
- public update(openBracketToken: ISyntaxToken, parameter: ParameterSyntax, closeBracketToken: ISyntaxToken, typeAnnotation: TypeAnnotationSyntax): IndexSignatureSyntax;
- static create(openBracketToken: ISyntaxToken, parameter: ParameterSyntax, closeBracketToken: ISyntaxToken): IndexSignatureSyntax;
- static create1(parameter: ParameterSyntax): IndexSignatureSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): IndexSignatureSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): IndexSignatureSyntax;
- public withOpenBracketToken(openBracketToken: ISyntaxToken): IndexSignatureSyntax;
- public withParameter(parameter: ParameterSyntax): IndexSignatureSyntax;
- public withCloseBracketToken(closeBracketToken: ISyntaxToken): IndexSignatureSyntax;
- public withTypeAnnotation(typeAnnotation: TypeAnnotationSyntax): IndexSignatureSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class PropertySignatureSyntax extends SyntaxNode implements ITypeMemberSyntax {
- public propertyName: ISyntaxToken;
- public questionToken: ISyntaxToken;
- public typeAnnotation: TypeAnnotationSyntax;
- constructor(propertyName: ISyntaxToken, questionToken: ISyntaxToken, typeAnnotation: TypeAnnotationSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isTypeMember(): boolean;
- public update(propertyName: ISyntaxToken, questionToken: ISyntaxToken, typeAnnotation: TypeAnnotationSyntax): PropertySignatureSyntax;
- static create(propertyName: ISyntaxToken): PropertySignatureSyntax;
- static create1(propertyName: ISyntaxToken): PropertySignatureSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): PropertySignatureSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): PropertySignatureSyntax;
- public withPropertyName(propertyName: ISyntaxToken): PropertySignatureSyntax;
- public withQuestionToken(questionToken: ISyntaxToken): PropertySignatureSyntax;
- public withTypeAnnotation(typeAnnotation: TypeAnnotationSyntax): PropertySignatureSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class CallSignatureSyntax extends SyntaxNode implements ITypeMemberSyntax {
- public typeParameterList: TypeParameterListSyntax;
- public parameterList: ParameterListSyntax;
- public typeAnnotation: TypeAnnotationSyntax;
- constructor(typeParameterList: TypeParameterListSyntax, parameterList: ParameterListSyntax, typeAnnotation: TypeAnnotationSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isTypeMember(): boolean;
- public update(typeParameterList: TypeParameterListSyntax, parameterList: ParameterListSyntax, typeAnnotation: TypeAnnotationSyntax): CallSignatureSyntax;
- static create(parameterList: ParameterListSyntax): CallSignatureSyntax;
- static create1(): CallSignatureSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): CallSignatureSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): CallSignatureSyntax;
- public withTypeParameterList(typeParameterList: TypeParameterListSyntax): CallSignatureSyntax;
- public withParameterList(parameterList: ParameterListSyntax): CallSignatureSyntax;
- public withTypeAnnotation(typeAnnotation: TypeAnnotationSyntax): CallSignatureSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ParameterListSyntax extends SyntaxNode {
- public openParenToken: ISyntaxToken;
- public parameters: ISeparatedSyntaxList;
- public closeParenToken: ISyntaxToken;
- constructor(openParenToken: ISyntaxToken, parameters: ISeparatedSyntaxList, closeParenToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public update(openParenToken: ISyntaxToken, parameters: ISeparatedSyntaxList, closeParenToken: ISyntaxToken): ParameterListSyntax;
- static create(openParenToken: ISyntaxToken, closeParenToken: ISyntaxToken): ParameterListSyntax;
- static create1(): ParameterListSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ParameterListSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ParameterListSyntax;
- public withOpenParenToken(openParenToken: ISyntaxToken): ParameterListSyntax;
- public withParameters(parameters: ISeparatedSyntaxList): ParameterListSyntax;
- public withParameter(parameter: ParameterSyntax): ParameterListSyntax;
- public withCloseParenToken(closeParenToken: ISyntaxToken): ParameterListSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class TypeParameterListSyntax extends SyntaxNode {
- public lessThanToken: ISyntaxToken;
- public typeParameters: ISeparatedSyntaxList;
- public greaterThanToken: ISyntaxToken;
- constructor(lessThanToken: ISyntaxToken, typeParameters: ISeparatedSyntaxList, greaterThanToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public update(lessThanToken: ISyntaxToken, typeParameters: ISeparatedSyntaxList, greaterThanToken: ISyntaxToken): TypeParameterListSyntax;
- static create(lessThanToken: ISyntaxToken, greaterThanToken: ISyntaxToken): TypeParameterListSyntax;
- static create1(): TypeParameterListSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): TypeParameterListSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): TypeParameterListSyntax;
- public withLessThanToken(lessThanToken: ISyntaxToken): TypeParameterListSyntax;
- public withTypeParameters(typeParameters: ISeparatedSyntaxList): TypeParameterListSyntax;
- public withTypeParameter(typeParameter: TypeParameterSyntax): TypeParameterListSyntax;
- public withGreaterThanToken(greaterThanToken: ISyntaxToken): TypeParameterListSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class TypeParameterSyntax extends SyntaxNode {
- public identifier: ISyntaxToken;
- public constraint: ConstraintSyntax;
- constructor(identifier: ISyntaxToken, constraint: ConstraintSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public update(identifier: ISyntaxToken, constraint: ConstraintSyntax): TypeParameterSyntax;
- static create(identifier: ISyntaxToken): TypeParameterSyntax;
- static create1(identifier: ISyntaxToken): TypeParameterSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): TypeParameterSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): TypeParameterSyntax;
- public withIdentifier(identifier: ISyntaxToken): TypeParameterSyntax;
- public withConstraint(constraint: ConstraintSyntax): TypeParameterSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ConstraintSyntax extends SyntaxNode {
- public extendsKeyword: ISyntaxToken;
- public type: ITypeSyntax;
- constructor(extendsKeyword: ISyntaxToken, type: ITypeSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public update(extendsKeyword: ISyntaxToken, type: ITypeSyntax): ConstraintSyntax;
- static create1(type: ITypeSyntax): ConstraintSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ConstraintSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ConstraintSyntax;
- public withExtendsKeyword(extendsKeyword: ISyntaxToken): ConstraintSyntax;
- public withType(type: ITypeSyntax): ConstraintSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ElseClauseSyntax extends SyntaxNode {
- public elseKeyword: ISyntaxToken;
- public statement: IStatementSyntax;
- constructor(elseKeyword: ISyntaxToken, statement: IStatementSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public update(elseKeyword: ISyntaxToken, statement: IStatementSyntax): ElseClauseSyntax;
- static create1(statement: IStatementSyntax): ElseClauseSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ElseClauseSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ElseClauseSyntax;
- public withElseKeyword(elseKeyword: ISyntaxToken): ElseClauseSyntax;
- public withStatement(statement: IStatementSyntax): ElseClauseSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class IfStatementSyntax extends SyntaxNode implements IStatementSyntax {
- public ifKeyword: ISyntaxToken;
- public openParenToken: ISyntaxToken;
- public condition: IExpressionSyntax;
- public closeParenToken: ISyntaxToken;
- public statement: IStatementSyntax;
- public elseClause: ElseClauseSyntax;
- constructor(ifKeyword: ISyntaxToken, openParenToken: ISyntaxToken, condition: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax, elseClause: ElseClauseSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isStatement(): boolean;
- public isModuleElement(): boolean;
- public update(ifKeyword: ISyntaxToken, openParenToken: ISyntaxToken, condition: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax, elseClause: ElseClauseSyntax): IfStatementSyntax;
- static create(ifKeyword: ISyntaxToken, openParenToken: ISyntaxToken, condition: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax): IfStatementSyntax;
- static create1(condition: IExpressionSyntax, statement: IStatementSyntax): IfStatementSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): IfStatementSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): IfStatementSyntax;
- public withIfKeyword(ifKeyword: ISyntaxToken): IfStatementSyntax;
- public withOpenParenToken(openParenToken: ISyntaxToken): IfStatementSyntax;
- public withCondition(condition: IExpressionSyntax): IfStatementSyntax;
- public withCloseParenToken(closeParenToken: ISyntaxToken): IfStatementSyntax;
- public withStatement(statement: IStatementSyntax): IfStatementSyntax;
- public withElseClause(elseClause: ElseClauseSyntax): IfStatementSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ExpressionStatementSyntax extends SyntaxNode implements IStatementSyntax {
- public expression: IExpressionSyntax;
- public semicolonToken: ISyntaxToken;
- constructor(expression: IExpressionSyntax, semicolonToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isStatement(): boolean;
- public isModuleElement(): boolean;
- public update(expression: IExpressionSyntax, semicolonToken: ISyntaxToken): ExpressionStatementSyntax;
- static create1(expression: IExpressionSyntax): ExpressionStatementSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ExpressionStatementSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ExpressionStatementSyntax;
- public withExpression(expression: IExpressionSyntax): ExpressionStatementSyntax;
- public withSemicolonToken(semicolonToken: ISyntaxToken): ExpressionStatementSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ConstructorDeclarationSyntax extends SyntaxNode implements IClassElementSyntax {
- public modifiers: ISyntaxList;
- public constructorKeyword: ISyntaxToken;
- public callSignature: CallSignatureSyntax;
- public block: BlockSyntax;
- public semicolonToken: ISyntaxToken;
- constructor(modifiers: ISyntaxList, constructorKeyword: ISyntaxToken, callSignature: CallSignatureSyntax, block: BlockSyntax, semicolonToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isClassElement(): boolean;
- public update(modifiers: ISyntaxList, constructorKeyword: ISyntaxToken, callSignature: CallSignatureSyntax, block: BlockSyntax, semicolonToken: ISyntaxToken): ConstructorDeclarationSyntax;
- static create(constructorKeyword: ISyntaxToken, callSignature: CallSignatureSyntax): ConstructorDeclarationSyntax;
- static create1(): ConstructorDeclarationSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ConstructorDeclarationSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ConstructorDeclarationSyntax;
- public withModifiers(modifiers: ISyntaxList): ConstructorDeclarationSyntax;
- public withModifier(modifier: ISyntaxToken): ConstructorDeclarationSyntax;
- public withConstructorKeyword(constructorKeyword: ISyntaxToken): ConstructorDeclarationSyntax;
- public withCallSignature(callSignature: CallSignatureSyntax): ConstructorDeclarationSyntax;
- public withBlock(block: BlockSyntax): ConstructorDeclarationSyntax;
- public withSemicolonToken(semicolonToken: ISyntaxToken): ConstructorDeclarationSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class MemberFunctionDeclarationSyntax extends SyntaxNode implements IMemberDeclarationSyntax {
- public modifiers: ISyntaxList;
- public propertyName: ISyntaxToken;
- public callSignature: CallSignatureSyntax;
- public block: BlockSyntax;
- public semicolonToken: ISyntaxToken;
- constructor(modifiers: ISyntaxList, propertyName: ISyntaxToken, callSignature: CallSignatureSyntax, block: BlockSyntax, semicolonToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isMemberDeclaration(): boolean;
- public isClassElement(): boolean;
- public update(modifiers: ISyntaxList, propertyName: ISyntaxToken, callSignature: CallSignatureSyntax, block: BlockSyntax, semicolonToken: ISyntaxToken): MemberFunctionDeclarationSyntax;
- static create(propertyName: ISyntaxToken, callSignature: CallSignatureSyntax): MemberFunctionDeclarationSyntax;
- static create1(propertyName: ISyntaxToken): MemberFunctionDeclarationSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): MemberFunctionDeclarationSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): MemberFunctionDeclarationSyntax;
- public withModifiers(modifiers: ISyntaxList): MemberFunctionDeclarationSyntax;
- public withModifier(modifier: ISyntaxToken): MemberFunctionDeclarationSyntax;
- public withPropertyName(propertyName: ISyntaxToken): MemberFunctionDeclarationSyntax;
- public withCallSignature(callSignature: CallSignatureSyntax): MemberFunctionDeclarationSyntax;
- public withBlock(block: BlockSyntax): MemberFunctionDeclarationSyntax;
- public withSemicolonToken(semicolonToken: ISyntaxToken): MemberFunctionDeclarationSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class GetAccessorSyntax extends SyntaxNode implements IMemberDeclarationSyntax, IPropertyAssignmentSyntax {
- public modifiers: ISyntaxList;
- public getKeyword: ISyntaxToken;
- public propertyName: ISyntaxToken;
- public parameterList: ParameterListSyntax;
- public typeAnnotation: TypeAnnotationSyntax;
- public block: BlockSyntax;
- constructor(modifiers: ISyntaxList, getKeyword: ISyntaxToken, propertyName: ISyntaxToken, parameterList: ParameterListSyntax, typeAnnotation: TypeAnnotationSyntax, block: BlockSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isMemberDeclaration(): boolean;
- public isPropertyAssignment(): boolean;
- public isClassElement(): boolean;
- public update(modifiers: ISyntaxList, getKeyword: ISyntaxToken, propertyName: ISyntaxToken, parameterList: ParameterListSyntax, typeAnnotation: TypeAnnotationSyntax, block: BlockSyntax): GetAccessorSyntax;
- static create(getKeyword: ISyntaxToken, propertyName: ISyntaxToken, parameterList: ParameterListSyntax, block: BlockSyntax): GetAccessorSyntax;
- static create1(propertyName: ISyntaxToken): GetAccessorSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): GetAccessorSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): GetAccessorSyntax;
- public withModifiers(modifiers: ISyntaxList): GetAccessorSyntax;
- public withModifier(modifier: ISyntaxToken): GetAccessorSyntax;
- public withGetKeyword(getKeyword: ISyntaxToken): GetAccessorSyntax;
- public withPropertyName(propertyName: ISyntaxToken): GetAccessorSyntax;
- public withParameterList(parameterList: ParameterListSyntax): GetAccessorSyntax;
- public withTypeAnnotation(typeAnnotation: TypeAnnotationSyntax): GetAccessorSyntax;
- public withBlock(block: BlockSyntax): GetAccessorSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class SetAccessorSyntax extends SyntaxNode implements IMemberDeclarationSyntax, IPropertyAssignmentSyntax {
- public modifiers: ISyntaxList;
- public setKeyword: ISyntaxToken;
- public propertyName: ISyntaxToken;
- public parameterList: ParameterListSyntax;
- public block: BlockSyntax;
- constructor(modifiers: ISyntaxList, setKeyword: ISyntaxToken, propertyName: ISyntaxToken, parameterList: ParameterListSyntax, block: BlockSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isMemberDeclaration(): boolean;
- public isPropertyAssignment(): boolean;
- public isClassElement(): boolean;
- public update(modifiers: ISyntaxList, setKeyword: ISyntaxToken, propertyName: ISyntaxToken, parameterList: ParameterListSyntax, block: BlockSyntax): SetAccessorSyntax;
- static create(setKeyword: ISyntaxToken, propertyName: ISyntaxToken, parameterList: ParameterListSyntax, block: BlockSyntax): SetAccessorSyntax;
- static create1(propertyName: ISyntaxToken): SetAccessorSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): SetAccessorSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): SetAccessorSyntax;
- public withModifiers(modifiers: ISyntaxList): SetAccessorSyntax;
- public withModifier(modifier: ISyntaxToken): SetAccessorSyntax;
- public withSetKeyword(setKeyword: ISyntaxToken): SetAccessorSyntax;
- public withPropertyName(propertyName: ISyntaxToken): SetAccessorSyntax;
- public withParameterList(parameterList: ParameterListSyntax): SetAccessorSyntax;
- public withBlock(block: BlockSyntax): SetAccessorSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class MemberVariableDeclarationSyntax extends SyntaxNode implements IMemberDeclarationSyntax {
- public modifiers: ISyntaxList;
- public variableDeclarator: VariableDeclaratorSyntax;
- public semicolonToken: ISyntaxToken;
- constructor(modifiers: ISyntaxList, variableDeclarator: VariableDeclaratorSyntax, semicolonToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isMemberDeclaration(): boolean;
- public isClassElement(): boolean;
- public update(modifiers: ISyntaxList, variableDeclarator: VariableDeclaratorSyntax, semicolonToken: ISyntaxToken): MemberVariableDeclarationSyntax;
- static create(variableDeclarator: VariableDeclaratorSyntax, semicolonToken: ISyntaxToken): MemberVariableDeclarationSyntax;
- static create1(variableDeclarator: VariableDeclaratorSyntax): MemberVariableDeclarationSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): MemberVariableDeclarationSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): MemberVariableDeclarationSyntax;
- public withModifiers(modifiers: ISyntaxList): MemberVariableDeclarationSyntax;
- public withModifier(modifier: ISyntaxToken): MemberVariableDeclarationSyntax;
- public withVariableDeclarator(variableDeclarator: VariableDeclaratorSyntax): MemberVariableDeclarationSyntax;
- public withSemicolonToken(semicolonToken: ISyntaxToken): MemberVariableDeclarationSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class IndexMemberDeclarationSyntax extends SyntaxNode implements IClassElementSyntax {
- public modifiers: ISyntaxList;
- public indexSignature: IndexSignatureSyntax;
- public semicolonToken: ISyntaxToken;
- constructor(modifiers: ISyntaxList, indexSignature: IndexSignatureSyntax, semicolonToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isClassElement(): boolean;
- public update(modifiers: ISyntaxList, indexSignature: IndexSignatureSyntax, semicolonToken: ISyntaxToken): IndexMemberDeclarationSyntax;
- static create(indexSignature: IndexSignatureSyntax, semicolonToken: ISyntaxToken): IndexMemberDeclarationSyntax;
- static create1(indexSignature: IndexSignatureSyntax): IndexMemberDeclarationSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): IndexMemberDeclarationSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): IndexMemberDeclarationSyntax;
- public withModifiers(modifiers: ISyntaxList): IndexMemberDeclarationSyntax;
- public withModifier(modifier: ISyntaxToken): IndexMemberDeclarationSyntax;
- public withIndexSignature(indexSignature: IndexSignatureSyntax): IndexMemberDeclarationSyntax;
- public withSemicolonToken(semicolonToken: ISyntaxToken): IndexMemberDeclarationSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ThrowStatementSyntax extends SyntaxNode implements IStatementSyntax {
- public throwKeyword: ISyntaxToken;
- public expression: IExpressionSyntax;
- public semicolonToken: ISyntaxToken;
- constructor(throwKeyword: ISyntaxToken, expression: IExpressionSyntax, semicolonToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isStatement(): boolean;
- public isModuleElement(): boolean;
- public update(throwKeyword: ISyntaxToken, expression: IExpressionSyntax, semicolonToken: ISyntaxToken): ThrowStatementSyntax;
- static create1(expression: IExpressionSyntax): ThrowStatementSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ThrowStatementSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ThrowStatementSyntax;
- public withThrowKeyword(throwKeyword: ISyntaxToken): ThrowStatementSyntax;
- public withExpression(expression: IExpressionSyntax): ThrowStatementSyntax;
- public withSemicolonToken(semicolonToken: ISyntaxToken): ThrowStatementSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ReturnStatementSyntax extends SyntaxNode implements IStatementSyntax {
- public returnKeyword: ISyntaxToken;
- public expression: IExpressionSyntax;
- public semicolonToken: ISyntaxToken;
- constructor(returnKeyword: ISyntaxToken, expression: IExpressionSyntax, semicolonToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isStatement(): boolean;
- public isModuleElement(): boolean;
- public update(returnKeyword: ISyntaxToken, expression: IExpressionSyntax, semicolonToken: ISyntaxToken): ReturnStatementSyntax;
- static create(returnKeyword: ISyntaxToken, semicolonToken: ISyntaxToken): ReturnStatementSyntax;
- static create1(): ReturnStatementSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ReturnStatementSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ReturnStatementSyntax;
- public withReturnKeyword(returnKeyword: ISyntaxToken): ReturnStatementSyntax;
- public withExpression(expression: IExpressionSyntax): ReturnStatementSyntax;
- public withSemicolonToken(semicolonToken: ISyntaxToken): ReturnStatementSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ObjectCreationExpressionSyntax extends SyntaxNode implements IMemberExpressionSyntax {
- public newKeyword: ISyntaxToken;
- public expression: IMemberExpressionSyntax;
- public argumentList: ArgumentListSyntax;
- constructor(newKeyword: ISyntaxToken, expression: IMemberExpressionSyntax, argumentList: ArgumentListSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isMemberExpression(): boolean;
- public isPostfixExpression(): boolean;
- public isUnaryExpression(): boolean;
- public isExpression(): boolean;
- public update(newKeyword: ISyntaxToken, expression: IMemberExpressionSyntax, argumentList: ArgumentListSyntax): ObjectCreationExpressionSyntax;
- static create(newKeyword: ISyntaxToken, expression: IMemberExpressionSyntax): ObjectCreationExpressionSyntax;
- static create1(expression: IMemberExpressionSyntax): ObjectCreationExpressionSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ObjectCreationExpressionSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ObjectCreationExpressionSyntax;
- public withNewKeyword(newKeyword: ISyntaxToken): ObjectCreationExpressionSyntax;
- public withExpression(expression: IMemberExpressionSyntax): ObjectCreationExpressionSyntax;
- public withArgumentList(argumentList: ArgumentListSyntax): ObjectCreationExpressionSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class SwitchStatementSyntax extends SyntaxNode implements IStatementSyntax {
- public switchKeyword: ISyntaxToken;
- public openParenToken: ISyntaxToken;
- public expression: IExpressionSyntax;
- public closeParenToken: ISyntaxToken;
- public openBraceToken: ISyntaxToken;
- public switchClauses: ISyntaxList;
- public closeBraceToken: ISyntaxToken;
- constructor(switchKeyword: ISyntaxToken, openParenToken: ISyntaxToken, expression: IExpressionSyntax, closeParenToken: ISyntaxToken, openBraceToken: ISyntaxToken, switchClauses: ISyntaxList, closeBraceToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isStatement(): boolean;
- public isModuleElement(): boolean;
- public update(switchKeyword: ISyntaxToken, openParenToken: ISyntaxToken, expression: IExpressionSyntax, closeParenToken: ISyntaxToken, openBraceToken: ISyntaxToken, switchClauses: ISyntaxList, closeBraceToken: ISyntaxToken): SwitchStatementSyntax;
- static create(switchKeyword: ISyntaxToken, openParenToken: ISyntaxToken, expression: IExpressionSyntax, closeParenToken: ISyntaxToken, openBraceToken: ISyntaxToken, closeBraceToken: ISyntaxToken): SwitchStatementSyntax;
- static create1(expression: IExpressionSyntax): SwitchStatementSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): SwitchStatementSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): SwitchStatementSyntax;
- public withSwitchKeyword(switchKeyword: ISyntaxToken): SwitchStatementSyntax;
- public withOpenParenToken(openParenToken: ISyntaxToken): SwitchStatementSyntax;
- public withExpression(expression: IExpressionSyntax): SwitchStatementSyntax;
- public withCloseParenToken(closeParenToken: ISyntaxToken): SwitchStatementSyntax;
- public withOpenBraceToken(openBraceToken: ISyntaxToken): SwitchStatementSyntax;
- public withSwitchClauses(switchClauses: ISyntaxList): SwitchStatementSyntax;
- public withSwitchClause(switchClause: ISwitchClauseSyntax): SwitchStatementSyntax;
- public withCloseBraceToken(closeBraceToken: ISyntaxToken): SwitchStatementSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class CaseSwitchClauseSyntax extends SyntaxNode implements ISwitchClauseSyntax {
- public caseKeyword: ISyntaxToken;
- public expression: IExpressionSyntax;
- public colonToken: ISyntaxToken;
- public statements: ISyntaxList;
- constructor(caseKeyword: ISyntaxToken, expression: IExpressionSyntax, colonToken: ISyntaxToken, statements: ISyntaxList, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isSwitchClause(): boolean;
- public update(caseKeyword: ISyntaxToken, expression: IExpressionSyntax, colonToken: ISyntaxToken, statements: ISyntaxList): CaseSwitchClauseSyntax;
- static create(caseKeyword: ISyntaxToken, expression: IExpressionSyntax, colonToken: ISyntaxToken): CaseSwitchClauseSyntax;
- static create1(expression: IExpressionSyntax): CaseSwitchClauseSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): CaseSwitchClauseSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): CaseSwitchClauseSyntax;
- public withCaseKeyword(caseKeyword: ISyntaxToken): CaseSwitchClauseSyntax;
- public withExpression(expression: IExpressionSyntax): CaseSwitchClauseSyntax;
- public withColonToken(colonToken: ISyntaxToken): CaseSwitchClauseSyntax;
- public withStatements(statements: ISyntaxList): CaseSwitchClauseSyntax;
- public withStatement(statement: IStatementSyntax): CaseSwitchClauseSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class DefaultSwitchClauseSyntax extends SyntaxNode implements ISwitchClauseSyntax {
- public defaultKeyword: ISyntaxToken;
- public colonToken: ISyntaxToken;
- public statements: ISyntaxList;
- constructor(defaultKeyword: ISyntaxToken, colonToken: ISyntaxToken, statements: ISyntaxList, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isSwitchClause(): boolean;
- public update(defaultKeyword: ISyntaxToken, colonToken: ISyntaxToken, statements: ISyntaxList): DefaultSwitchClauseSyntax;
- static create(defaultKeyword: ISyntaxToken, colonToken: ISyntaxToken): DefaultSwitchClauseSyntax;
- static create1(): DefaultSwitchClauseSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): DefaultSwitchClauseSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): DefaultSwitchClauseSyntax;
- public withDefaultKeyword(defaultKeyword: ISyntaxToken): DefaultSwitchClauseSyntax;
- public withColonToken(colonToken: ISyntaxToken): DefaultSwitchClauseSyntax;
- public withStatements(statements: ISyntaxList): DefaultSwitchClauseSyntax;
- public withStatement(statement: IStatementSyntax): DefaultSwitchClauseSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class BreakStatementSyntax extends SyntaxNode implements IStatementSyntax {
- public breakKeyword: ISyntaxToken;
- public identifier: ISyntaxToken;
- public semicolonToken: ISyntaxToken;
- constructor(breakKeyword: ISyntaxToken, identifier: ISyntaxToken, semicolonToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isStatement(): boolean;
- public isModuleElement(): boolean;
- public update(breakKeyword: ISyntaxToken, identifier: ISyntaxToken, semicolonToken: ISyntaxToken): BreakStatementSyntax;
- static create(breakKeyword: ISyntaxToken, semicolonToken: ISyntaxToken): BreakStatementSyntax;
- static create1(): BreakStatementSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): BreakStatementSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): BreakStatementSyntax;
- public withBreakKeyword(breakKeyword: ISyntaxToken): BreakStatementSyntax;
- public withIdentifier(identifier: ISyntaxToken): BreakStatementSyntax;
- public withSemicolonToken(semicolonToken: ISyntaxToken): BreakStatementSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ContinueStatementSyntax extends SyntaxNode implements IStatementSyntax {
- public continueKeyword: ISyntaxToken;
- public identifier: ISyntaxToken;
- public semicolonToken: ISyntaxToken;
- constructor(continueKeyword: ISyntaxToken, identifier: ISyntaxToken, semicolonToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isStatement(): boolean;
- public isModuleElement(): boolean;
- public update(continueKeyword: ISyntaxToken, identifier: ISyntaxToken, semicolonToken: ISyntaxToken): ContinueStatementSyntax;
- static create(continueKeyword: ISyntaxToken, semicolonToken: ISyntaxToken): ContinueStatementSyntax;
- static create1(): ContinueStatementSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ContinueStatementSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ContinueStatementSyntax;
- public withContinueKeyword(continueKeyword: ISyntaxToken): ContinueStatementSyntax;
- public withIdentifier(identifier: ISyntaxToken): ContinueStatementSyntax;
- public withSemicolonToken(semicolonToken: ISyntaxToken): ContinueStatementSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ForStatementSyntax extends SyntaxNode implements IIterationStatementSyntax {
- public forKeyword: ISyntaxToken;
- public openParenToken: ISyntaxToken;
- public variableDeclaration: VariableDeclarationSyntax;
- public initializer: IExpressionSyntax;
- public firstSemicolonToken: ISyntaxToken;
- public condition: IExpressionSyntax;
- public secondSemicolonToken: ISyntaxToken;
- public incrementor: IExpressionSyntax;
- public closeParenToken: ISyntaxToken;
- public statement: IStatementSyntax;
- constructor(forKeyword: ISyntaxToken, openParenToken: ISyntaxToken, variableDeclaration: VariableDeclarationSyntax, initializer: IExpressionSyntax, firstSemicolonToken: ISyntaxToken, condition: IExpressionSyntax, secondSemicolonToken: ISyntaxToken, incrementor: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isIterationStatement(): boolean;
- public isStatement(): boolean;
- public isModuleElement(): boolean;
- public update(forKeyword: ISyntaxToken, openParenToken: ISyntaxToken, variableDeclaration: VariableDeclarationSyntax, initializer: IExpressionSyntax, firstSemicolonToken: ISyntaxToken, condition: IExpressionSyntax, secondSemicolonToken: ISyntaxToken, incrementor: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax): ForStatementSyntax;
- static create(forKeyword: ISyntaxToken, openParenToken: ISyntaxToken, firstSemicolonToken: ISyntaxToken, secondSemicolonToken: ISyntaxToken, closeParenToken: ISyntaxToken, statement: IStatementSyntax): ForStatementSyntax;
- static create1(statement: IStatementSyntax): ForStatementSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ForStatementSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ForStatementSyntax;
- public withForKeyword(forKeyword: ISyntaxToken): ForStatementSyntax;
- public withOpenParenToken(openParenToken: ISyntaxToken): ForStatementSyntax;
- public withVariableDeclaration(variableDeclaration: VariableDeclarationSyntax): ForStatementSyntax;
- public withInitializer(initializer: IExpressionSyntax): ForStatementSyntax;
- public withFirstSemicolonToken(firstSemicolonToken: ISyntaxToken): ForStatementSyntax;
- public withCondition(condition: IExpressionSyntax): ForStatementSyntax;
- public withSecondSemicolonToken(secondSemicolonToken: ISyntaxToken): ForStatementSyntax;
- public withIncrementor(incrementor: IExpressionSyntax): ForStatementSyntax;
- public withCloseParenToken(closeParenToken: ISyntaxToken): ForStatementSyntax;
- public withStatement(statement: IStatementSyntax): ForStatementSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ForInStatementSyntax extends SyntaxNode implements IIterationStatementSyntax {
- public forKeyword: ISyntaxToken;
- public openParenToken: ISyntaxToken;
- public variableDeclaration: VariableDeclarationSyntax;
- public left: IExpressionSyntax;
- public inKeyword: ISyntaxToken;
- public expression: IExpressionSyntax;
- public closeParenToken: ISyntaxToken;
- public statement: IStatementSyntax;
- constructor(forKeyword: ISyntaxToken, openParenToken: ISyntaxToken, variableDeclaration: VariableDeclarationSyntax, left: IExpressionSyntax, inKeyword: ISyntaxToken, expression: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isIterationStatement(): boolean;
- public isStatement(): boolean;
- public isModuleElement(): boolean;
- public update(forKeyword: ISyntaxToken, openParenToken: ISyntaxToken, variableDeclaration: VariableDeclarationSyntax, left: IExpressionSyntax, inKeyword: ISyntaxToken, expression: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax): ForInStatementSyntax;
- static create(forKeyword: ISyntaxToken, openParenToken: ISyntaxToken, inKeyword: ISyntaxToken, expression: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax): ForInStatementSyntax;
- static create1(expression: IExpressionSyntax, statement: IStatementSyntax): ForInStatementSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ForInStatementSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ForInStatementSyntax;
- public withForKeyword(forKeyword: ISyntaxToken): ForInStatementSyntax;
- public withOpenParenToken(openParenToken: ISyntaxToken): ForInStatementSyntax;
- public withVariableDeclaration(variableDeclaration: VariableDeclarationSyntax): ForInStatementSyntax;
- public withLeft(left: IExpressionSyntax): ForInStatementSyntax;
- public withInKeyword(inKeyword: ISyntaxToken): ForInStatementSyntax;
- public withExpression(expression: IExpressionSyntax): ForInStatementSyntax;
- public withCloseParenToken(closeParenToken: ISyntaxToken): ForInStatementSyntax;
- public withStatement(statement: IStatementSyntax): ForInStatementSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class WhileStatementSyntax extends SyntaxNode implements IIterationStatementSyntax {
- public whileKeyword: ISyntaxToken;
- public openParenToken: ISyntaxToken;
- public condition: IExpressionSyntax;
- public closeParenToken: ISyntaxToken;
- public statement: IStatementSyntax;
- constructor(whileKeyword: ISyntaxToken, openParenToken: ISyntaxToken, condition: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isIterationStatement(): boolean;
- public isStatement(): boolean;
- public isModuleElement(): boolean;
- public update(whileKeyword: ISyntaxToken, openParenToken: ISyntaxToken, condition: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax): WhileStatementSyntax;
- static create1(condition: IExpressionSyntax, statement: IStatementSyntax): WhileStatementSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): WhileStatementSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): WhileStatementSyntax;
- public withWhileKeyword(whileKeyword: ISyntaxToken): WhileStatementSyntax;
- public withOpenParenToken(openParenToken: ISyntaxToken): WhileStatementSyntax;
- public withCondition(condition: IExpressionSyntax): WhileStatementSyntax;
- public withCloseParenToken(closeParenToken: ISyntaxToken): WhileStatementSyntax;
- public withStatement(statement: IStatementSyntax): WhileStatementSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class WithStatementSyntax extends SyntaxNode implements IStatementSyntax {
- public withKeyword: ISyntaxToken;
- public openParenToken: ISyntaxToken;
- public condition: IExpressionSyntax;
- public closeParenToken: ISyntaxToken;
- public statement: IStatementSyntax;
- constructor(withKeyword: ISyntaxToken, openParenToken: ISyntaxToken, condition: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isStatement(): boolean;
- public isModuleElement(): boolean;
- public update(withKeyword: ISyntaxToken, openParenToken: ISyntaxToken, condition: IExpressionSyntax, closeParenToken: ISyntaxToken, statement: IStatementSyntax): WithStatementSyntax;
- static create1(condition: IExpressionSyntax, statement: IStatementSyntax): WithStatementSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): WithStatementSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): WithStatementSyntax;
- public withWithKeyword(withKeyword: ISyntaxToken): WithStatementSyntax;
- public withOpenParenToken(openParenToken: ISyntaxToken): WithStatementSyntax;
- public withCondition(condition: IExpressionSyntax): WithStatementSyntax;
- public withCloseParenToken(closeParenToken: ISyntaxToken): WithStatementSyntax;
- public withStatement(statement: IStatementSyntax): WithStatementSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class EnumDeclarationSyntax extends SyntaxNode implements IModuleElementSyntax {
- public modifiers: ISyntaxList;
- public enumKeyword: ISyntaxToken;
- public identifier: ISyntaxToken;
- public openBraceToken: ISyntaxToken;
- public enumElements: ISeparatedSyntaxList;
- public closeBraceToken: ISyntaxToken;
- constructor(modifiers: ISyntaxList, enumKeyword: ISyntaxToken, identifier: ISyntaxToken, openBraceToken: ISyntaxToken, enumElements: ISeparatedSyntaxList, closeBraceToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isModuleElement(): boolean;
- public update(modifiers: ISyntaxList, enumKeyword: ISyntaxToken, identifier: ISyntaxToken, openBraceToken: ISyntaxToken, enumElements: ISeparatedSyntaxList, closeBraceToken: ISyntaxToken): EnumDeclarationSyntax;
- static create(enumKeyword: ISyntaxToken, identifier: ISyntaxToken, openBraceToken: ISyntaxToken, closeBraceToken: ISyntaxToken): EnumDeclarationSyntax;
- static create1(identifier: ISyntaxToken): EnumDeclarationSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): EnumDeclarationSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): EnumDeclarationSyntax;
- public withModifiers(modifiers: ISyntaxList): EnumDeclarationSyntax;
- public withModifier(modifier: ISyntaxToken): EnumDeclarationSyntax;
- public withEnumKeyword(enumKeyword: ISyntaxToken): EnumDeclarationSyntax;
- public withIdentifier(identifier: ISyntaxToken): EnumDeclarationSyntax;
- public withOpenBraceToken(openBraceToken: ISyntaxToken): EnumDeclarationSyntax;
- public withEnumElements(enumElements: ISeparatedSyntaxList): EnumDeclarationSyntax;
- public withEnumElement(enumElement: EnumElementSyntax): EnumDeclarationSyntax;
- public withCloseBraceToken(closeBraceToken: ISyntaxToken): EnumDeclarationSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class EnumElementSyntax extends SyntaxNode {
- public propertyName: ISyntaxToken;
- public equalsValueClause: EqualsValueClauseSyntax;
- constructor(propertyName: ISyntaxToken, equalsValueClause: EqualsValueClauseSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public update(propertyName: ISyntaxToken, equalsValueClause: EqualsValueClauseSyntax): EnumElementSyntax;
- static create(propertyName: ISyntaxToken): EnumElementSyntax;
- static create1(propertyName: ISyntaxToken): EnumElementSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): EnumElementSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): EnumElementSyntax;
- public withPropertyName(propertyName: ISyntaxToken): EnumElementSyntax;
- public withEqualsValueClause(equalsValueClause: EqualsValueClauseSyntax): EnumElementSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class CastExpressionSyntax extends SyntaxNode implements IUnaryExpressionSyntax {
- public lessThanToken: ISyntaxToken;
- public type: ITypeSyntax;
- public greaterThanToken: ISyntaxToken;
- public expression: IUnaryExpressionSyntax;
- constructor(lessThanToken: ISyntaxToken, type: ITypeSyntax, greaterThanToken: ISyntaxToken, expression: IUnaryExpressionSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isUnaryExpression(): boolean;
- public isExpression(): boolean;
- public update(lessThanToken: ISyntaxToken, type: ITypeSyntax, greaterThanToken: ISyntaxToken, expression: IUnaryExpressionSyntax): CastExpressionSyntax;
- static create1(type: ITypeSyntax, expression: IUnaryExpressionSyntax): CastExpressionSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): CastExpressionSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): CastExpressionSyntax;
- public withLessThanToken(lessThanToken: ISyntaxToken): CastExpressionSyntax;
- public withType(type: ITypeSyntax): CastExpressionSyntax;
- public withGreaterThanToken(greaterThanToken: ISyntaxToken): CastExpressionSyntax;
- public withExpression(expression: IUnaryExpressionSyntax): CastExpressionSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class ObjectLiteralExpressionSyntax extends SyntaxNode implements IPrimaryExpressionSyntax {
- public openBraceToken: ISyntaxToken;
- public propertyAssignments: ISeparatedSyntaxList;
- public closeBraceToken: ISyntaxToken;
- constructor(openBraceToken: ISyntaxToken, propertyAssignments: ISeparatedSyntaxList, closeBraceToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isPrimaryExpression(): boolean;
- public isMemberExpression(): boolean;
- public isPostfixExpression(): boolean;
- public isUnaryExpression(): boolean;
- public isExpression(): boolean;
- public update(openBraceToken: ISyntaxToken, propertyAssignments: ISeparatedSyntaxList, closeBraceToken: ISyntaxToken): ObjectLiteralExpressionSyntax;
- static create(openBraceToken: ISyntaxToken, closeBraceToken: ISyntaxToken): ObjectLiteralExpressionSyntax;
- static create1(): ObjectLiteralExpressionSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): ObjectLiteralExpressionSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): ObjectLiteralExpressionSyntax;
- public withOpenBraceToken(openBraceToken: ISyntaxToken): ObjectLiteralExpressionSyntax;
- public withPropertyAssignments(propertyAssignments: ISeparatedSyntaxList): ObjectLiteralExpressionSyntax;
- public withPropertyAssignment(propertyAssignment: IPropertyAssignmentSyntax): ObjectLiteralExpressionSyntax;
- public withCloseBraceToken(closeBraceToken: ISyntaxToken): ObjectLiteralExpressionSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class SimplePropertyAssignmentSyntax extends SyntaxNode implements IPropertyAssignmentSyntax {
- public propertyName: ISyntaxToken;
- public colonToken: ISyntaxToken;
- public expression: IExpressionSyntax;
- constructor(propertyName: ISyntaxToken, colonToken: ISyntaxToken, expression: IExpressionSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isPropertyAssignment(): boolean;
- public update(propertyName: ISyntaxToken, colonToken: ISyntaxToken, expression: IExpressionSyntax): SimplePropertyAssignmentSyntax;
- static create1(propertyName: ISyntaxToken, expression: IExpressionSyntax): SimplePropertyAssignmentSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): SimplePropertyAssignmentSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): SimplePropertyAssignmentSyntax;
- public withPropertyName(propertyName: ISyntaxToken): SimplePropertyAssignmentSyntax;
- public withColonToken(colonToken: ISyntaxToken): SimplePropertyAssignmentSyntax;
- public withExpression(expression: IExpressionSyntax): SimplePropertyAssignmentSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class FunctionPropertyAssignmentSyntax extends SyntaxNode implements IPropertyAssignmentSyntax {
- public propertyName: ISyntaxToken;
- public callSignature: CallSignatureSyntax;
- public block: BlockSyntax;
- constructor(propertyName: ISyntaxToken, callSignature: CallSignatureSyntax, block: BlockSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isPropertyAssignment(): boolean;
- public update(propertyName: ISyntaxToken, callSignature: CallSignatureSyntax, block: BlockSyntax): FunctionPropertyAssignmentSyntax;
- static create1(propertyName: ISyntaxToken): FunctionPropertyAssignmentSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): FunctionPropertyAssignmentSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): FunctionPropertyAssignmentSyntax;
- public withPropertyName(propertyName: ISyntaxToken): FunctionPropertyAssignmentSyntax;
- public withCallSignature(callSignature: CallSignatureSyntax): FunctionPropertyAssignmentSyntax;
- public withBlock(block: BlockSyntax): FunctionPropertyAssignmentSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class FunctionExpressionSyntax extends SyntaxNode implements IPrimaryExpressionSyntax {
- public functionKeyword: ISyntaxToken;
- public identifier: ISyntaxToken;
- public callSignature: CallSignatureSyntax;
- public block: BlockSyntax;
- constructor(functionKeyword: ISyntaxToken, identifier: ISyntaxToken, callSignature: CallSignatureSyntax, block: BlockSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isPrimaryExpression(): boolean;
- public isMemberExpression(): boolean;
- public isPostfixExpression(): boolean;
- public isUnaryExpression(): boolean;
- public isExpression(): boolean;
- public update(functionKeyword: ISyntaxToken, identifier: ISyntaxToken, callSignature: CallSignatureSyntax, block: BlockSyntax): FunctionExpressionSyntax;
- static create(functionKeyword: ISyntaxToken, callSignature: CallSignatureSyntax, block: BlockSyntax): FunctionExpressionSyntax;
- static create1(): FunctionExpressionSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): FunctionExpressionSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): FunctionExpressionSyntax;
- public withFunctionKeyword(functionKeyword: ISyntaxToken): FunctionExpressionSyntax;
- public withIdentifier(identifier: ISyntaxToken): FunctionExpressionSyntax;
- public withCallSignature(callSignature: CallSignatureSyntax): FunctionExpressionSyntax;
- public withBlock(block: BlockSyntax): FunctionExpressionSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class EmptyStatementSyntax extends SyntaxNode implements IStatementSyntax {
- public semicolonToken: ISyntaxToken;
- constructor(semicolonToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isStatement(): boolean;
- public isModuleElement(): boolean;
- public update(semicolonToken: ISyntaxToken): EmptyStatementSyntax;
- static create1(): EmptyStatementSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): EmptyStatementSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): EmptyStatementSyntax;
- public withSemicolonToken(semicolonToken: ISyntaxToken): EmptyStatementSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class TryStatementSyntax extends SyntaxNode implements IStatementSyntax {
- public tryKeyword: ISyntaxToken;
- public block: BlockSyntax;
- public catchClause: CatchClauseSyntax;
- public finallyClause: FinallyClauseSyntax;
- constructor(tryKeyword: ISyntaxToken, block: BlockSyntax, catchClause: CatchClauseSyntax, finallyClause: FinallyClauseSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isStatement(): boolean;
- public isModuleElement(): boolean;
- public update(tryKeyword: ISyntaxToken, block: BlockSyntax, catchClause: CatchClauseSyntax, finallyClause: FinallyClauseSyntax): TryStatementSyntax;
- static create(tryKeyword: ISyntaxToken, block: BlockSyntax): TryStatementSyntax;
- static create1(): TryStatementSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): TryStatementSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): TryStatementSyntax;
- public withTryKeyword(tryKeyword: ISyntaxToken): TryStatementSyntax;
- public withBlock(block: BlockSyntax): TryStatementSyntax;
- public withCatchClause(catchClause: CatchClauseSyntax): TryStatementSyntax;
- public withFinallyClause(finallyClause: FinallyClauseSyntax): TryStatementSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class CatchClauseSyntax extends SyntaxNode {
- public catchKeyword: ISyntaxToken;
- public openParenToken: ISyntaxToken;
- public identifier: ISyntaxToken;
- public typeAnnotation: TypeAnnotationSyntax;
- public closeParenToken: ISyntaxToken;
- public block: BlockSyntax;
- constructor(catchKeyword: ISyntaxToken, openParenToken: ISyntaxToken, identifier: ISyntaxToken, typeAnnotation: TypeAnnotationSyntax, closeParenToken: ISyntaxToken, block: BlockSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public update(catchKeyword: ISyntaxToken, openParenToken: ISyntaxToken, identifier: ISyntaxToken, typeAnnotation: TypeAnnotationSyntax, closeParenToken: ISyntaxToken, block: BlockSyntax): CatchClauseSyntax;
- static create(catchKeyword: ISyntaxToken, openParenToken: ISyntaxToken, identifier: ISyntaxToken, closeParenToken: ISyntaxToken, block: BlockSyntax): CatchClauseSyntax;
- static create1(identifier: ISyntaxToken): CatchClauseSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): CatchClauseSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): CatchClauseSyntax;
- public withCatchKeyword(catchKeyword: ISyntaxToken): CatchClauseSyntax;
- public withOpenParenToken(openParenToken: ISyntaxToken): CatchClauseSyntax;
- public withIdentifier(identifier: ISyntaxToken): CatchClauseSyntax;
- public withTypeAnnotation(typeAnnotation: TypeAnnotationSyntax): CatchClauseSyntax;
- public withCloseParenToken(closeParenToken: ISyntaxToken): CatchClauseSyntax;
- public withBlock(block: BlockSyntax): CatchClauseSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class FinallyClauseSyntax extends SyntaxNode {
- public finallyKeyword: ISyntaxToken;
- public block: BlockSyntax;
- constructor(finallyKeyword: ISyntaxToken, block: BlockSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public update(finallyKeyword: ISyntaxToken, block: BlockSyntax): FinallyClauseSyntax;
- static create1(): FinallyClauseSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): FinallyClauseSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): FinallyClauseSyntax;
- public withFinallyKeyword(finallyKeyword: ISyntaxToken): FinallyClauseSyntax;
- public withBlock(block: BlockSyntax): FinallyClauseSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class LabeledStatementSyntax extends SyntaxNode implements IStatementSyntax {
- public identifier: ISyntaxToken;
- public colonToken: ISyntaxToken;
- public statement: IStatementSyntax;
- constructor(identifier: ISyntaxToken, colonToken: ISyntaxToken, statement: IStatementSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isStatement(): boolean;
- public isModuleElement(): boolean;
- public update(identifier: ISyntaxToken, colonToken: ISyntaxToken, statement: IStatementSyntax): LabeledStatementSyntax;
- static create1(identifier: ISyntaxToken, statement: IStatementSyntax): LabeledStatementSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): LabeledStatementSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): LabeledStatementSyntax;
- public withIdentifier(identifier: ISyntaxToken): LabeledStatementSyntax;
- public withColonToken(colonToken: ISyntaxToken): LabeledStatementSyntax;
- public withStatement(statement: IStatementSyntax): LabeledStatementSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class DoStatementSyntax extends SyntaxNode implements IIterationStatementSyntax {
- public doKeyword: ISyntaxToken;
- public statement: IStatementSyntax;
- public whileKeyword: ISyntaxToken;
- public openParenToken: ISyntaxToken;
- public condition: IExpressionSyntax;
- public closeParenToken: ISyntaxToken;
- public semicolonToken: ISyntaxToken;
- constructor(doKeyword: ISyntaxToken, statement: IStatementSyntax, whileKeyword: ISyntaxToken, openParenToken: ISyntaxToken, condition: IExpressionSyntax, closeParenToken: ISyntaxToken, semicolonToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isIterationStatement(): boolean;
- public isStatement(): boolean;
- public isModuleElement(): boolean;
- public update(doKeyword: ISyntaxToken, statement: IStatementSyntax, whileKeyword: ISyntaxToken, openParenToken: ISyntaxToken, condition: IExpressionSyntax, closeParenToken: ISyntaxToken, semicolonToken: ISyntaxToken): DoStatementSyntax;
- static create1(statement: IStatementSyntax, condition: IExpressionSyntax): DoStatementSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): DoStatementSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): DoStatementSyntax;
- public withDoKeyword(doKeyword: ISyntaxToken): DoStatementSyntax;
- public withStatement(statement: IStatementSyntax): DoStatementSyntax;
- public withWhileKeyword(whileKeyword: ISyntaxToken): DoStatementSyntax;
- public withOpenParenToken(openParenToken: ISyntaxToken): DoStatementSyntax;
- public withCondition(condition: IExpressionSyntax): DoStatementSyntax;
- public withCloseParenToken(closeParenToken: ISyntaxToken): DoStatementSyntax;
- public withSemicolonToken(semicolonToken: ISyntaxToken): DoStatementSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class TypeOfExpressionSyntax extends SyntaxNode implements IUnaryExpressionSyntax {
- public typeOfKeyword: ISyntaxToken;
- public expression: IUnaryExpressionSyntax;
- constructor(typeOfKeyword: ISyntaxToken, expression: IUnaryExpressionSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isUnaryExpression(): boolean;
- public isExpression(): boolean;
- public update(typeOfKeyword: ISyntaxToken, expression: IUnaryExpressionSyntax): TypeOfExpressionSyntax;
- static create1(expression: IUnaryExpressionSyntax): TypeOfExpressionSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): TypeOfExpressionSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): TypeOfExpressionSyntax;
- public withTypeOfKeyword(typeOfKeyword: ISyntaxToken): TypeOfExpressionSyntax;
- public withExpression(expression: IUnaryExpressionSyntax): TypeOfExpressionSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class DeleteExpressionSyntax extends SyntaxNode implements IUnaryExpressionSyntax {
- public deleteKeyword: ISyntaxToken;
- public expression: IUnaryExpressionSyntax;
- constructor(deleteKeyword: ISyntaxToken, expression: IUnaryExpressionSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isUnaryExpression(): boolean;
- public isExpression(): boolean;
- public update(deleteKeyword: ISyntaxToken, expression: IUnaryExpressionSyntax): DeleteExpressionSyntax;
- static create1(expression: IUnaryExpressionSyntax): DeleteExpressionSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): DeleteExpressionSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): DeleteExpressionSyntax;
- public withDeleteKeyword(deleteKeyword: ISyntaxToken): DeleteExpressionSyntax;
- public withExpression(expression: IUnaryExpressionSyntax): DeleteExpressionSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class VoidExpressionSyntax extends SyntaxNode implements IUnaryExpressionSyntax {
- public voidKeyword: ISyntaxToken;
- public expression: IUnaryExpressionSyntax;
- constructor(voidKeyword: ISyntaxToken, expression: IUnaryExpressionSyntax, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isUnaryExpression(): boolean;
- public isExpression(): boolean;
- public update(voidKeyword: ISyntaxToken, expression: IUnaryExpressionSyntax): VoidExpressionSyntax;
- static create1(expression: IUnaryExpressionSyntax): VoidExpressionSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): VoidExpressionSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): VoidExpressionSyntax;
- public withVoidKeyword(voidKeyword: ISyntaxToken): VoidExpressionSyntax;
- public withExpression(expression: IUnaryExpressionSyntax): VoidExpressionSyntax;
- public isTypeScriptSpecific(): boolean;
- }
- class DebuggerStatementSyntax extends SyntaxNode implements IStatementSyntax {
- public debuggerKeyword: ISyntaxToken;
- public semicolonToken: ISyntaxToken;
- constructor(debuggerKeyword: ISyntaxToken, semicolonToken: ISyntaxToken, parsedInStrictMode: boolean);
- public accept(visitor: ISyntaxVisitor): any;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(slot: number): ISyntaxElement;
- public isStatement(): boolean;
- public isModuleElement(): boolean;
- public update(debuggerKeyword: ISyntaxToken, semicolonToken: ISyntaxToken): DebuggerStatementSyntax;
- static create1(): DebuggerStatementSyntax;
- public withLeadingTrivia(trivia: ISyntaxTriviaList): DebuggerStatementSyntax;
- public withTrailingTrivia(trivia: ISyntaxTriviaList): DebuggerStatementSyntax;
- public withDebuggerKeyword(debuggerKeyword: ISyntaxToken): DebuggerStatementSyntax;
- public withSemicolonToken(semicolonToken: ISyntaxToken): DebuggerStatementSyntax;
- public isTypeScriptSpecific(): boolean;
- }
-}
-declare module TypeScript {
- class SyntaxRewriter implements ISyntaxVisitor {
- public visitToken(token: ISyntaxToken): ISyntaxToken;
- public visitNode(node: SyntaxNode): SyntaxNode;
- public visitNodeOrToken(node: ISyntaxNodeOrToken): ISyntaxNodeOrToken;
- public visitList(list: ISyntaxList): ISyntaxList;
- public visitSeparatedList(list: ISeparatedSyntaxList): ISeparatedSyntaxList;
- public visitSourceUnit(node: SourceUnitSyntax): any;
- public visitExternalModuleReference(node: ExternalModuleReferenceSyntax): any;
- public visitModuleNameModuleReference(node: ModuleNameModuleReferenceSyntax): any;
- public visitImportDeclaration(node: ImportDeclarationSyntax): any;
- public visitExportAssignment(node: ExportAssignmentSyntax): any;
- public visitClassDeclaration(node: ClassDeclarationSyntax): any;
- public visitInterfaceDeclaration(node: InterfaceDeclarationSyntax): any;
- public visitHeritageClause(node: HeritageClauseSyntax): any;
- public visitModuleDeclaration(node: ModuleDeclarationSyntax): any;
- public visitFunctionDeclaration(node: FunctionDeclarationSyntax): any;
- public visitVariableStatement(node: VariableStatementSyntax): any;
- public visitVariableDeclaration(node: VariableDeclarationSyntax): any;
- public visitVariableDeclarator(node: VariableDeclaratorSyntax): any;
- public visitEqualsValueClause(node: EqualsValueClauseSyntax): any;
- public visitPrefixUnaryExpression(node: PrefixUnaryExpressionSyntax): any;
- public visitArrayLiteralExpression(node: ArrayLiteralExpressionSyntax): any;
- public visitOmittedExpression(node: OmittedExpressionSyntax): any;
- public visitParenthesizedExpression(node: ParenthesizedExpressionSyntax): any;
- public visitSimpleArrowFunctionExpression(node: SimpleArrowFunctionExpressionSyntax): any;
- public visitParenthesizedArrowFunctionExpression(node: ParenthesizedArrowFunctionExpressionSyntax): any;
- public visitQualifiedName(node: QualifiedNameSyntax): any;
- public visitTypeArgumentList(node: TypeArgumentListSyntax): any;
- public visitConstructorType(node: ConstructorTypeSyntax): any;
- public visitFunctionType(node: FunctionTypeSyntax): any;
- public visitObjectType(node: ObjectTypeSyntax): any;
- public visitArrayType(node: ArrayTypeSyntax): any;
- public visitGenericType(node: GenericTypeSyntax): any;
- public visitTypeQuery(node: TypeQuerySyntax): any;
- public visitTypeAnnotation(node: TypeAnnotationSyntax): any;
- public visitBlock(node: BlockSyntax): any;
- public visitParameter(node: ParameterSyntax): any;
- public visitMemberAccessExpression(node: MemberAccessExpressionSyntax): any;
- public visitPostfixUnaryExpression(node: PostfixUnaryExpressionSyntax): any;
- public visitElementAccessExpression(node: ElementAccessExpressionSyntax): any;
- public visitInvocationExpression(node: InvocationExpressionSyntax): any;
- public visitArgumentList(node: ArgumentListSyntax): any;
- public visitBinaryExpression(node: BinaryExpressionSyntax): any;
- public visitConditionalExpression(node: ConditionalExpressionSyntax): any;
- public visitConstructSignature(node: ConstructSignatureSyntax): any;
- public visitMethodSignature(node: MethodSignatureSyntax): any;
- public visitIndexSignature(node: IndexSignatureSyntax): any;
- public visitPropertySignature(node: PropertySignatureSyntax): any;
- public visitCallSignature(node: CallSignatureSyntax): any;
- public visitParameterList(node: ParameterListSyntax): any;
- public visitTypeParameterList(node: TypeParameterListSyntax): any;
- public visitTypeParameter(node: TypeParameterSyntax): any;
- public visitConstraint(node: ConstraintSyntax): any;
- public visitElseClause(node: ElseClauseSyntax): any;
- public visitIfStatement(node: IfStatementSyntax): any;
- public visitExpressionStatement(node: ExpressionStatementSyntax): any;
- public visitConstructorDeclaration(node: ConstructorDeclarationSyntax): any;
- public visitMemberFunctionDeclaration(node: MemberFunctionDeclarationSyntax): any;
- public visitGetAccessor(node: GetAccessorSyntax): any;
- public visitSetAccessor(node: SetAccessorSyntax): any;
- public visitMemberVariableDeclaration(node: MemberVariableDeclarationSyntax): any;
- public visitIndexMemberDeclaration(node: IndexMemberDeclarationSyntax): any;
- public visitThrowStatement(node: ThrowStatementSyntax): any;
- public visitReturnStatement(node: ReturnStatementSyntax): any;
- public visitObjectCreationExpression(node: ObjectCreationExpressionSyntax): any;
- public visitSwitchStatement(node: SwitchStatementSyntax): any;
- public visitCaseSwitchClause(node: CaseSwitchClauseSyntax): any;
- public visitDefaultSwitchClause(node: DefaultSwitchClauseSyntax): any;
- public visitBreakStatement(node: BreakStatementSyntax): any;
- public visitContinueStatement(node: ContinueStatementSyntax): any;
- public visitForStatement(node: ForStatementSyntax): any;
- public visitForInStatement(node: ForInStatementSyntax): any;
- public visitWhileStatement(node: WhileStatementSyntax): any;
- public visitWithStatement(node: WithStatementSyntax): any;
- public visitEnumDeclaration(node: EnumDeclarationSyntax): any;
- public visitEnumElement(node: EnumElementSyntax): any;
- public visitCastExpression(node: CastExpressionSyntax): any;
- public visitObjectLiteralExpression(node: ObjectLiteralExpressionSyntax): any;
- public visitSimplePropertyAssignment(node: SimplePropertyAssignmentSyntax): any;
- public visitFunctionPropertyAssignment(node: FunctionPropertyAssignmentSyntax): any;
- public visitFunctionExpression(node: FunctionExpressionSyntax): any;
- public visitEmptyStatement(node: EmptyStatementSyntax): any;
- public visitTryStatement(node: TryStatementSyntax): any;
- public visitCatchClause(node: CatchClauseSyntax): any;
- public visitFinallyClause(node: FinallyClauseSyntax): any;
- public visitLabeledStatement(node: LabeledStatementSyntax): any;
- public visitDoStatement(node: DoStatementSyntax): any;
- public visitTypeOfExpression(node: TypeOfExpressionSyntax): any;
- public visitDeleteExpression(node: DeleteExpressionSyntax): any;
- public visitVoidExpression(node: VoidExpressionSyntax): any;
- public visitDebuggerStatement(node: DebuggerStatementSyntax): any;
- }
-}
-declare module TypeScript {
- class SyntaxDedenter extends SyntaxRewriter {
- private dedentationAmount;
- private minimumIndent;
- private options;
- private lastTriviaWasNewLine;
- constructor(dedentFirstToken: boolean, dedentationAmount: number, minimumIndent: number, options: FormattingOptions);
- private abort();
- private isAborted();
- public visitToken(token: ISyntaxToken): ISyntaxToken;
- private dedentTriviaList(triviaList);
- private dedentSegment(segment, hasFollowingNewLineTrivia);
- private dedentWhitespace(trivia, hasFollowingNewLineTrivia);
- private dedentMultiLineComment(trivia);
- static dedentNode(node: ISyntaxNode, dedentFirstToken: boolean, dedentAmount: number, minimumIndent: number, options: FormattingOptions): ISyntaxNode;
- }
-}
-declare module TypeScript {
- class SyntaxIndenter extends SyntaxRewriter {
- private indentationAmount;
- private options;
- private lastTriviaWasNewLine;
- private indentationTrivia;
- constructor(indentFirstToken: boolean, indentationAmount: number, options: FormattingOptions);
- public visitToken(token: ISyntaxToken): ISyntaxToken;
- public indentTriviaList(triviaList: ISyntaxTriviaList): ISyntaxTriviaList;
- private indentSegment(segment);
- private indentWhitespace(trivia, indentThisTrivia, result);
- private indentSingleLineOrSkippedText(trivia, indentThisTrivia, result);
- private indentMultiLineComment(trivia, indentThisTrivia, result);
- static indentNode(node: ISyntaxNode, indentFirstToken: boolean, indentAmount: number, options: FormattingOptions): SyntaxNode;
- static indentNodes(nodes: SyntaxNode[], indentFirstToken: boolean, indentAmount: number, options: FormattingOptions): SyntaxNode[];
- }
-}
-declare module TypeScript.Syntax {
- class VariableWidthTokenWithNoTrivia implements ISyntaxToken {
- private _fullText;
- public tokenKind: SyntaxKind;
- constructor(fullText: string, kind: SyntaxKind);
- public clone(): ISyntaxToken;
- public isNode(): boolean;
- public isToken(): boolean;
- public isList(): boolean;
- public isSeparatedList(): boolean;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(index: number): ISyntaxElement;
- public fullWidth(): number;
- public width(): number;
- public text(): string;
- public fullText(): string;
- public value(): any;
- public valueText(): string;
- public hasLeadingTrivia(): boolean;
- public hasLeadingComment(): boolean;
- public hasLeadingNewLine(): boolean;
- public hasLeadingSkippedText(): boolean;
- public leadingTriviaWidth(): number;
- public leadingTrivia(): ISyntaxTriviaList;
- public hasTrailingTrivia(): boolean;
- public hasTrailingComment(): boolean;
- public hasTrailingNewLine(): boolean;
- public hasTrailingSkippedText(): boolean;
- public trailingTriviaWidth(): number;
- public trailingTrivia(): ISyntaxTriviaList;
- public hasSkippedToken(): boolean;
- public toJSON(key: any): any;
- public firstToken(): ISyntaxToken;
- public lastToken(): ISyntaxToken;
- public isTypeScriptSpecific(): boolean;
- public isIncrementallyUnusable(): boolean;
- public accept(visitor: ISyntaxVisitor): any;
- private realize();
- public collectTextElements(elements: string[]): void;
- private findTokenInternal(parent, position, fullStart);
- public withLeadingTrivia(leadingTrivia: ISyntaxTriviaList): ISyntaxToken;
- public withTrailingTrivia(trailingTrivia: ISyntaxTriviaList): ISyntaxToken;
- public isExpression(): boolean;
- public isPrimaryExpression(): boolean;
- public isMemberExpression(): boolean;
- public isPostfixExpression(): boolean;
- public isUnaryExpression(): boolean;
- }
- class VariableWidthTokenWithLeadingTrivia implements ISyntaxToken {
- private _fullText;
- public tokenKind: SyntaxKind;
- private _leadingTriviaInfo;
- constructor(fullText: string, kind: SyntaxKind, leadingTriviaInfo: number);
- public clone(): ISyntaxToken;
- public isNode(): boolean;
- public isToken(): boolean;
- public isList(): boolean;
- public isSeparatedList(): boolean;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(index: number): ISyntaxElement;
- public fullWidth(): number;
- public width(): number;
- public text(): string;
- public fullText(): string;
- public value(): any;
- public valueText(): string;
- public hasLeadingTrivia(): boolean;
- public hasLeadingComment(): boolean;
- public hasLeadingNewLine(): boolean;
- public hasLeadingSkippedText(): boolean;
- public leadingTriviaWidth(): number;
- public leadingTrivia(): ISyntaxTriviaList;
- public hasTrailingTrivia(): boolean;
- public hasTrailingComment(): boolean;
- public hasTrailingNewLine(): boolean;
- public hasTrailingSkippedText(): boolean;
- public trailingTriviaWidth(): number;
- public trailingTrivia(): ISyntaxTriviaList;
- public hasSkippedToken(): boolean;
- public toJSON(key: any): any;
- public firstToken(): ISyntaxToken;
- public lastToken(): ISyntaxToken;
- public isTypeScriptSpecific(): boolean;
- public isIncrementallyUnusable(): boolean;
- public accept(visitor: ISyntaxVisitor): any;
- private realize();
- public collectTextElements(elements: string[]): void;
- private findTokenInternal(parent, position, fullStart);
- public withLeadingTrivia(leadingTrivia: ISyntaxTriviaList): ISyntaxToken;
- public withTrailingTrivia(trailingTrivia: ISyntaxTriviaList): ISyntaxToken;
- public isExpression(): boolean;
- public isPrimaryExpression(): boolean;
- public isMemberExpression(): boolean;
- public isPostfixExpression(): boolean;
- public isUnaryExpression(): boolean;
- }
- class VariableWidthTokenWithTrailingTrivia implements ISyntaxToken {
- private _fullText;
- public tokenKind: SyntaxKind;
- private _trailingTriviaInfo;
- constructor(fullText: string, kind: SyntaxKind, trailingTriviaInfo: number);
- public clone(): ISyntaxToken;
- public isNode(): boolean;
- public isToken(): boolean;
- public isList(): boolean;
- public isSeparatedList(): boolean;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(index: number): ISyntaxElement;
- public fullWidth(): number;
- public width(): number;
- public text(): string;
- public fullText(): string;
- public value(): any;
- public valueText(): string;
- public hasLeadingTrivia(): boolean;
- public hasLeadingComment(): boolean;
- public hasLeadingNewLine(): boolean;
- public hasLeadingSkippedText(): boolean;
- public leadingTriviaWidth(): number;
- public leadingTrivia(): ISyntaxTriviaList;
- public hasTrailingTrivia(): boolean;
- public hasTrailingComment(): boolean;
- public hasTrailingNewLine(): boolean;
- public hasTrailingSkippedText(): boolean;
- public trailingTriviaWidth(): number;
- public trailingTrivia(): ISyntaxTriviaList;
- public hasSkippedToken(): boolean;
- public toJSON(key: any): any;
- public firstToken(): ISyntaxToken;
- public lastToken(): ISyntaxToken;
- public isTypeScriptSpecific(): boolean;
- public isIncrementallyUnusable(): boolean;
- public accept(visitor: ISyntaxVisitor): any;
- private realize();
- public collectTextElements(elements: string[]): void;
- private findTokenInternal(parent, position, fullStart);
- public withLeadingTrivia(leadingTrivia: ISyntaxTriviaList): ISyntaxToken;
- public withTrailingTrivia(trailingTrivia: ISyntaxTriviaList): ISyntaxToken;
- public isExpression(): boolean;
- public isPrimaryExpression(): boolean;
- public isMemberExpression(): boolean;
- public isPostfixExpression(): boolean;
- public isUnaryExpression(): boolean;
- }
- class VariableWidthTokenWithLeadingAndTrailingTrivia implements ISyntaxToken {
- private _fullText;
- public tokenKind: SyntaxKind;
- private _leadingTriviaInfo;
- private _trailingTriviaInfo;
- constructor(fullText: string, kind: SyntaxKind, leadingTriviaInfo: number, trailingTriviaInfo: number);
- public clone(): ISyntaxToken;
- public isNode(): boolean;
- public isToken(): boolean;
- public isList(): boolean;
- public isSeparatedList(): boolean;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(index: number): ISyntaxElement;
- public fullWidth(): number;
- public width(): number;
- public text(): string;
- public fullText(): string;
- public value(): any;
- public valueText(): string;
- public hasLeadingTrivia(): boolean;
- public hasLeadingComment(): boolean;
- public hasLeadingNewLine(): boolean;
- public hasLeadingSkippedText(): boolean;
- public leadingTriviaWidth(): number;
- public leadingTrivia(): ISyntaxTriviaList;
- public hasTrailingTrivia(): boolean;
- public hasTrailingComment(): boolean;
- public hasTrailingNewLine(): boolean;
- public hasTrailingSkippedText(): boolean;
- public trailingTriviaWidth(): number;
- public trailingTrivia(): ISyntaxTriviaList;
- public hasSkippedToken(): boolean;
- public toJSON(key: any): any;
- public firstToken(): ISyntaxToken;
- public lastToken(): ISyntaxToken;
- public isTypeScriptSpecific(): boolean;
- public isIncrementallyUnusable(): boolean;
- public accept(visitor: ISyntaxVisitor): any;
- private realize();
- public collectTextElements(elements: string[]): void;
- private findTokenInternal(parent, position, fullStart);
- public withLeadingTrivia(leadingTrivia: ISyntaxTriviaList): ISyntaxToken;
- public withTrailingTrivia(trailingTrivia: ISyntaxTriviaList): ISyntaxToken;
- public isExpression(): boolean;
- public isPrimaryExpression(): boolean;
- public isMemberExpression(): boolean;
- public isPostfixExpression(): boolean;
- public isUnaryExpression(): boolean;
- }
- class FixedWidthTokenWithNoTrivia implements ISyntaxToken {
- public tokenKind: SyntaxKind;
- constructor(kind: SyntaxKind);
- public clone(): ISyntaxToken;
- public isNode(): boolean;
- public isToken(): boolean;
- public isList(): boolean;
- public isSeparatedList(): boolean;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(index: number): ISyntaxElement;
- public fullWidth(): number;
- public width(): number;
- public text(): string;
- public fullText(): string;
- public value(): any;
- public valueText(): string;
- public hasLeadingTrivia(): boolean;
- public hasLeadingComment(): boolean;
- public hasLeadingNewLine(): boolean;
- public hasLeadingSkippedText(): boolean;
- public leadingTriviaWidth(): number;
- public leadingTrivia(): ISyntaxTriviaList;
- public hasTrailingTrivia(): boolean;
- public hasTrailingComment(): boolean;
- public hasTrailingNewLine(): boolean;
- public hasTrailingSkippedText(): boolean;
- public trailingTriviaWidth(): number;
- public trailingTrivia(): ISyntaxTriviaList;
- public hasSkippedToken(): boolean;
- public toJSON(key: any): any;
- public firstToken(): ISyntaxToken;
- public lastToken(): ISyntaxToken;
- public isTypeScriptSpecific(): boolean;
- public isIncrementallyUnusable(): boolean;
- public accept(visitor: ISyntaxVisitor): any;
- private realize();
- public collectTextElements(elements: string[]): void;
- private findTokenInternal(parent, position, fullStart);
- public withLeadingTrivia(leadingTrivia: ISyntaxTriviaList): ISyntaxToken;
- public withTrailingTrivia(trailingTrivia: ISyntaxTriviaList): ISyntaxToken;
- public isExpression(): boolean;
- public isPrimaryExpression(): boolean;
- public isMemberExpression(): boolean;
- public isPostfixExpression(): boolean;
- public isUnaryExpression(): boolean;
- }
- class FixedWidthTokenWithLeadingTrivia implements ISyntaxToken {
- private _fullText;
- public tokenKind: SyntaxKind;
- private _leadingTriviaInfo;
- constructor(fullText: string, kind: SyntaxKind, leadingTriviaInfo: number);
- public clone(): ISyntaxToken;
- public isNode(): boolean;
- public isToken(): boolean;
- public isList(): boolean;
- public isSeparatedList(): boolean;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(index: number): ISyntaxElement;
- public fullWidth(): number;
- public width(): number;
- public text(): string;
- public fullText(): string;
- public value(): any;
- public valueText(): string;
- public hasLeadingTrivia(): boolean;
- public hasLeadingComment(): boolean;
- public hasLeadingNewLine(): boolean;
- public hasLeadingSkippedText(): boolean;
- public leadingTriviaWidth(): number;
- public leadingTrivia(): ISyntaxTriviaList;
- public hasTrailingTrivia(): boolean;
- public hasTrailingComment(): boolean;
- public hasTrailingNewLine(): boolean;
- public hasTrailingSkippedText(): boolean;
- public trailingTriviaWidth(): number;
- public trailingTrivia(): ISyntaxTriviaList;
- public hasSkippedToken(): boolean;
- public toJSON(key: any): any;
- public firstToken(): ISyntaxToken;
- public lastToken(): ISyntaxToken;
- public isTypeScriptSpecific(): boolean;
- public isIncrementallyUnusable(): boolean;
- public accept(visitor: ISyntaxVisitor): any;
- private realize();
- public collectTextElements(elements: string[]): void;
- private findTokenInternal(parent, position, fullStart);
- public withLeadingTrivia(leadingTrivia: ISyntaxTriviaList): ISyntaxToken;
- public withTrailingTrivia(trailingTrivia: ISyntaxTriviaList): ISyntaxToken;
- public isExpression(): boolean;
- public isPrimaryExpression(): boolean;
- public isMemberExpression(): boolean;
- public isPostfixExpression(): boolean;
- public isUnaryExpression(): boolean;
- }
- class FixedWidthTokenWithTrailingTrivia implements ISyntaxToken {
- private _fullText;
- public tokenKind: SyntaxKind;
- private _trailingTriviaInfo;
- constructor(fullText: string, kind: SyntaxKind, trailingTriviaInfo: number);
- public clone(): ISyntaxToken;
- public isNode(): boolean;
- public isToken(): boolean;
- public isList(): boolean;
- public isSeparatedList(): boolean;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(index: number): ISyntaxElement;
- public fullWidth(): number;
- public width(): number;
- public text(): string;
- public fullText(): string;
- public value(): any;
- public valueText(): string;
- public hasLeadingTrivia(): boolean;
- public hasLeadingComment(): boolean;
- public hasLeadingNewLine(): boolean;
- public hasLeadingSkippedText(): boolean;
- public leadingTriviaWidth(): number;
- public leadingTrivia(): ISyntaxTriviaList;
- public hasTrailingTrivia(): boolean;
- public hasTrailingComment(): boolean;
- public hasTrailingNewLine(): boolean;
- public hasTrailingSkippedText(): boolean;
- public trailingTriviaWidth(): number;
- public trailingTrivia(): ISyntaxTriviaList;
- public hasSkippedToken(): boolean;
- public toJSON(key: any): any;
- public firstToken(): ISyntaxToken;
- public lastToken(): ISyntaxToken;
- public isTypeScriptSpecific(): boolean;
- public isIncrementallyUnusable(): boolean;
- public accept(visitor: ISyntaxVisitor): any;
- private realize();
- public collectTextElements(elements: string[]): void;
- private findTokenInternal(parent, position, fullStart);
- public withLeadingTrivia(leadingTrivia: ISyntaxTriviaList): ISyntaxToken;
- public withTrailingTrivia(trailingTrivia: ISyntaxTriviaList): ISyntaxToken;
- public isExpression(): boolean;
- public isPrimaryExpression(): boolean;
- public isMemberExpression(): boolean;
- public isPostfixExpression(): boolean;
- public isUnaryExpression(): boolean;
- }
- class FixedWidthTokenWithLeadingAndTrailingTrivia implements ISyntaxToken {
- private _fullText;
- public tokenKind: SyntaxKind;
- private _leadingTriviaInfo;
- private _trailingTriviaInfo;
- constructor(fullText: string, kind: SyntaxKind, leadingTriviaInfo: number, trailingTriviaInfo: number);
- public clone(): ISyntaxToken;
- public isNode(): boolean;
- public isToken(): boolean;
- public isList(): boolean;
- public isSeparatedList(): boolean;
- public kind(): SyntaxKind;
- public childCount(): number;
- public childAt(index: number): ISyntaxElement;
- public fullWidth(): number;
- public width(): number;
- public text(): string;
- public fullText(): string;
- public value(): any;
- public valueText(): string;
- public hasLeadingTrivia(): boolean;
- public hasLeadingComment(): boolean;
- public hasLeadingNewLine(): boolean;
- public hasLeadingSkippedText(): boolean;
- public leadingTriviaWidth(): number;
- public leadingTrivia(): ISyntaxTriviaList;
- public hasTrailingTrivia(): boolean;
- public hasTrailingComment(): boolean;
- public hasTrailingNewLine(): boolean;
- public hasTrailingSkippedText(): boolean;
- public trailingTriviaWidth(): number;
- public trailingTrivia(): ISyntaxTriviaList;
- public hasSkippedToken(): boolean;
- public toJSON(key: any): any;
- public firstToken(): ISyntaxToken;
- public lastToken(): ISyntaxToken;
- public isTypeScriptSpecific(): boolean;
- public isIncrementallyUnusable(): boolean;
- public accept(visitor: ISyntaxVisitor): any;
- private realize();
- public collectTextElements(elements: string[]): void;
- private findTokenInternal(parent, position, fullStart);
- public withLeadingTrivia(leadingTrivia: ISyntaxTriviaList): ISyntaxToken;
- public withTrailingTrivia(trailingTrivia: ISyntaxTriviaList): ISyntaxToken;
- public isExpression(): boolean;
- public isPrimaryExpression(): boolean;
- public isMemberExpression(): boolean;
- public isPostfixExpression(): boolean;
- public isUnaryExpression(): boolean;
- }
-}
-declare module TypeScript {
- interface ISyntaxToken extends ISyntaxNodeOrToken, INameSyntax, IPrimaryExpressionSyntax {
- tokenKind: SyntaxKind;
- text(): string;
- value(): any;
- valueText(): string;
- hasLeadingTrivia(): boolean;
- hasLeadingComment(): boolean;
- hasLeadingNewLine(): boolean;
- hasLeadingSkippedText(): boolean;
- hasTrailingTrivia(): boolean;
- hasTrailingComment(): boolean;
- hasTrailingNewLine(): boolean;
- hasTrailingSkippedText(): boolean;
- hasSkippedToken(): boolean;
- leadingTrivia(): ISyntaxTriviaList;
- trailingTrivia(): ISyntaxTriviaList;
- withLeadingTrivia(leadingTrivia: ISyntaxTriviaList): ISyntaxToken;
- withTrailingTrivia(trailingTrivia: ISyntaxTriviaList): ISyntaxToken;
- clone(): ISyntaxToken;
- }
- interface ITokenInfo {
- leadingTrivia?: ISyntaxTrivia[];
- text?: string;
- trailingTrivia?: ISyntaxTrivia[];
- }
-}
-declare module TypeScript.Syntax {
- function isExpression(token: ISyntaxToken): boolean;
- function realizeToken(token: ISyntaxToken): ISyntaxToken;
- function convertToIdentifierName(token: ISyntaxToken): ISyntaxToken;
- function tokenToJSON(token: ISyntaxToken): any;
- function value(token: ISyntaxToken): any;
- function massageEscapes(text: string): string;
- function valueText(token: ISyntaxToken): string;
- function emptyToken(kind: SyntaxKind): ISyntaxToken;
- function token(kind: SyntaxKind, info?: ITokenInfo): ISyntaxToken;
- function identifier(text: string, info?: ITokenInfo): ISyntaxToken;
-}
-declare module TypeScript {
- class SyntaxTokenReplacer extends SyntaxRewriter {
- private token1;
- private token2;
- constructor(token1: ISyntaxToken, token2: ISyntaxToken);
- public visitToken(token: ISyntaxToken): ISyntaxToken;
- public visitNode(node: SyntaxNode): SyntaxNode;
- public visitList(list: ISyntaxList): ISyntaxList;
- public visitSeparatedList(list: ISeparatedSyntaxList): ISeparatedSyntaxList;
- }
-}
-declare module TypeScript {
- interface ISyntaxTrivia {
- kind(): SyntaxKind;
- isWhitespace(): boolean;
- isComment(): boolean;
- isNewLine(): boolean;
- isSkippedToken(): boolean;
- fullWidth(): number;
- fullText(): string;
- skippedToken(): ISyntaxToken;
- }
-}
-declare module TypeScript.Syntax {
- function deferredTrivia(kind: SyntaxKind, text: ISimpleText, fullStart: number, fullWidth: number): ISyntaxTrivia;
- function trivia(kind: SyntaxKind, text: string): ISyntaxTrivia;
- function skippedTokenTrivia(token: ISyntaxToken): ISyntaxTrivia;
- function spaces(count: number): ISyntaxTrivia;
- function whitespace(text: string): ISyntaxTrivia;
- function multiLineComment(text: string): ISyntaxTrivia;
- function singleLineComment(text: string): ISyntaxTrivia;
- var spaceTrivia: ISyntaxTrivia;
- var lineFeedTrivia: ISyntaxTrivia;
- var carriageReturnTrivia: ISyntaxTrivia;
- var carriageReturnLineFeedTrivia: ISyntaxTrivia;
- function splitMultiLineCommentTriviaIntoMultipleLines(trivia: ISyntaxTrivia): string[];
-}
-declare module TypeScript {
- interface ISyntaxTriviaList {
- count(): number;
- syntaxTriviaAt(index: number): ISyntaxTrivia;
- fullWidth(): number;
- fullText(): string;
- hasComment(): boolean;
- hasNewLine(): boolean;
- hasSkippedToken(): boolean;
- last(): ISyntaxTrivia;
- toArray(): ISyntaxTrivia[];
- concat(trivia: ISyntaxTriviaList): ISyntaxTriviaList;
- collectTextElements(elements: string[]): void;
- }
-}
-declare module TypeScript.Syntax {
- var emptyTriviaList: ISyntaxTriviaList;
- function triviaList(trivia: ISyntaxTrivia[]): ISyntaxTriviaList;
- var spaceTriviaList: ISyntaxTriviaList;
-}
-declare module TypeScript {
- class SyntaxUtilities {
- static isAngleBracket(positionedElement: PositionedElement): boolean;
- static getToken(list: ISyntaxList, kind: SyntaxKind): ISyntaxToken;
- static containsToken(list: ISyntaxList, kind: SyntaxKind): boolean;
- static hasExportKeyword(moduleElement: IModuleElementSyntax): boolean;
- static getExportKeyword(moduleElement: IModuleElementSyntax): ISyntaxToken;
- static isAmbientDeclarationSyntax(positionNode: PositionedNode): boolean;
- }
-}
-declare module TypeScript {
- interface ISyntaxVisitor {
- visitToken(token: ISyntaxToken): any;
- visitSourceUnit(node: SourceUnitSyntax): any;
- visitExternalModuleReference(node: ExternalModuleReferenceSyntax): any;
- visitModuleNameModuleReference(node: ModuleNameModuleReferenceSyntax): any;
- visitImportDeclaration(node: ImportDeclarationSyntax): any;
- visitExportAssignment(node: ExportAssignmentSyntax): any;
- visitClassDeclaration(node: ClassDeclarationSyntax): any;
- visitInterfaceDeclaration(node: InterfaceDeclarationSyntax): any;
- visitHeritageClause(node: HeritageClauseSyntax): any;
- visitModuleDeclaration(node: ModuleDeclarationSyntax): any;
- visitFunctionDeclaration(node: FunctionDeclarationSyntax): any;
- visitVariableStatement(node: VariableStatementSyntax): any;
- visitVariableDeclaration(node: VariableDeclarationSyntax): any;
- visitVariableDeclarator(node: VariableDeclaratorSyntax): any;
- visitEqualsValueClause(node: EqualsValueClauseSyntax): any;
- visitPrefixUnaryExpression(node: PrefixUnaryExpressionSyntax): any;
- visitArrayLiteralExpression(node: ArrayLiteralExpressionSyntax): any;
- visitOmittedExpression(node: OmittedExpressionSyntax): any;
- visitParenthesizedExpression(node: ParenthesizedExpressionSyntax): any;
- visitSimpleArrowFunctionExpression(node: SimpleArrowFunctionExpressionSyntax): any;
- visitParenthesizedArrowFunctionExpression(node: ParenthesizedArrowFunctionExpressionSyntax): any;
- visitQualifiedName(node: QualifiedNameSyntax): any;
- visitTypeArgumentList(node: TypeArgumentListSyntax): any;
- visitConstructorType(node: ConstructorTypeSyntax): any;
- visitFunctionType(node: FunctionTypeSyntax): any;
- visitObjectType(node: ObjectTypeSyntax): any;
- visitArrayType(node: ArrayTypeSyntax): any;
- visitGenericType(node: GenericTypeSyntax): any;
- visitTypeQuery(node: TypeQuerySyntax): any;
- visitTypeAnnotation(node: TypeAnnotationSyntax): any;
- visitBlock(node: BlockSyntax): any;
- visitParameter(node: ParameterSyntax): any;
- visitMemberAccessExpression(node: MemberAccessExpressionSyntax): any;
- visitPostfixUnaryExpression(node: PostfixUnaryExpressionSyntax): any;
- visitElementAccessExpression(node: ElementAccessExpressionSyntax): any;
- visitInvocationExpression(node: InvocationExpressionSyntax): any;
- visitArgumentList(node: ArgumentListSyntax): any;
- visitBinaryExpression(node: BinaryExpressionSyntax): any;
- visitConditionalExpression(node: ConditionalExpressionSyntax): any;
- visitConstructSignature(node: ConstructSignatureSyntax): any;
- visitMethodSignature(node: MethodSignatureSyntax): any;
- visitIndexSignature(node: IndexSignatureSyntax): any;
- visitPropertySignature(node: PropertySignatureSyntax): any;
- visitCallSignature(node: CallSignatureSyntax): any;
- visitParameterList(node: ParameterListSyntax): any;
- visitTypeParameterList(node: TypeParameterListSyntax): any;
- visitTypeParameter(node: TypeParameterSyntax): any;
- visitConstraint(node: ConstraintSyntax): any;
- visitElseClause(node: ElseClauseSyntax): any;
- visitIfStatement(node: IfStatementSyntax): any;
- visitExpressionStatement(node: ExpressionStatementSyntax): any;
- visitConstructorDeclaration(node: ConstructorDeclarationSyntax): any;
- visitMemberFunctionDeclaration(node: MemberFunctionDeclarationSyntax): any;
- visitGetAccessor(node: GetAccessorSyntax): any;
- visitSetAccessor(node: SetAccessorSyntax): any;
- visitMemberVariableDeclaration(node: MemberVariableDeclarationSyntax): any;
- visitIndexMemberDeclaration(node: IndexMemberDeclarationSyntax): any;
- visitThrowStatement(node: ThrowStatementSyntax): any;
- visitReturnStatement(node: ReturnStatementSyntax): any;
- visitObjectCreationExpression(node: ObjectCreationExpressionSyntax): any;
- visitSwitchStatement(node: SwitchStatementSyntax): any;
- visitCaseSwitchClause(node: CaseSwitchClauseSyntax): any;
- visitDefaultSwitchClause(node: DefaultSwitchClauseSyntax): any;
- visitBreakStatement(node: BreakStatementSyntax): any;
- visitContinueStatement(node: ContinueStatementSyntax): any;
- visitForStatement(node: ForStatementSyntax): any;
- visitForInStatement(node: ForInStatementSyntax): any;
- visitWhileStatement(node: WhileStatementSyntax): any;
- visitWithStatement(node: WithStatementSyntax): any;
- visitEnumDeclaration(node: EnumDeclarationSyntax): any;
- visitEnumElement(node: EnumElementSyntax): any;
- visitCastExpression(node: CastExpressionSyntax): any;
- visitObjectLiteralExpression(node: ObjectLiteralExpressionSyntax): any;
- visitSimplePropertyAssignment(node: SimplePropertyAssignmentSyntax): any;
- visitFunctionPropertyAssignment(node: FunctionPropertyAssignmentSyntax): any;
- visitFunctionExpression(node: FunctionExpressionSyntax): any;
- visitEmptyStatement(node: EmptyStatementSyntax): any;
- visitTryStatement(node: TryStatementSyntax): any;
- visitCatchClause(node: CatchClauseSyntax): any;
- visitFinallyClause(node: FinallyClauseSyntax): any;
- visitLabeledStatement(node: LabeledStatementSyntax): any;
- visitDoStatement(node: DoStatementSyntax): any;
- visitTypeOfExpression(node: TypeOfExpressionSyntax): any;
- visitDeleteExpression(node: DeleteExpressionSyntax): any;
- visitVoidExpression(node: VoidExpressionSyntax): any;
- visitDebuggerStatement(node: DebuggerStatementSyntax): any;
- }
- class SyntaxVisitor implements ISyntaxVisitor {
- public defaultVisit(node: ISyntaxNodeOrToken): any;
- public visitToken(token: ISyntaxToken): any;
- public visitSourceUnit(node: SourceUnitSyntax): any;
- public visitExternalModuleReference(node: ExternalModuleReferenceSyntax): any;
- public visitModuleNameModuleReference(node: ModuleNameModuleReferenceSyntax): any;
- public visitImportDeclaration(node: ImportDeclarationSyntax): any;
- public visitExportAssignment(node: ExportAssignmentSyntax): any;
- public visitClassDeclaration(node: ClassDeclarationSyntax): any;
- public visitInterfaceDeclaration(node: InterfaceDeclarationSyntax): any;
- public visitHeritageClause(node: HeritageClauseSyntax): any;
- public visitModuleDeclaration(node: ModuleDeclarationSyntax): any;
- public visitFunctionDeclaration(node: FunctionDeclarationSyntax): any;
- public visitVariableStatement(node: VariableStatementSyntax): any;
- public visitVariableDeclaration(node: VariableDeclarationSyntax): any;
- public visitVariableDeclarator(node: VariableDeclaratorSyntax): any;
- public visitEqualsValueClause(node: EqualsValueClauseSyntax): any;
- public visitPrefixUnaryExpression(node: PrefixUnaryExpressionSyntax): any;
- public visitArrayLiteralExpression(node: ArrayLiteralExpressionSyntax): any;
- public visitOmittedExpression(node: OmittedExpressionSyntax): any;
- public visitParenthesizedExpression(node: ParenthesizedExpressionSyntax): any;
- public visitSimpleArrowFunctionExpression(node: SimpleArrowFunctionExpressionSyntax): any;
- public visitParenthesizedArrowFunctionExpression(node: ParenthesizedArrowFunctionExpressionSyntax): any;
- public visitQualifiedName(node: QualifiedNameSyntax): any;
- public visitTypeArgumentList(node: TypeArgumentListSyntax): any;
- public visitConstructorType(node: ConstructorTypeSyntax): any;
- public visitFunctionType(node: FunctionTypeSyntax): any;
- public visitObjectType(node: ObjectTypeSyntax): any;
- public visitArrayType(node: ArrayTypeSyntax): any;
- public visitGenericType(node: GenericTypeSyntax): any;
- public visitTypeQuery(node: TypeQuerySyntax): any;
- public visitTypeAnnotation(node: TypeAnnotationSyntax): any;
- public visitBlock(node: BlockSyntax): any;
- public visitParameter(node: ParameterSyntax): any;
- public visitMemberAccessExpression(node: MemberAccessExpressionSyntax): any;
- public visitPostfixUnaryExpression(node: PostfixUnaryExpressionSyntax): any;
- public visitElementAccessExpression(node: ElementAccessExpressionSyntax): any;
- public visitInvocationExpression(node: InvocationExpressionSyntax): any;
- public visitArgumentList(node: ArgumentListSyntax): any;
- public visitBinaryExpression(node: BinaryExpressionSyntax): any;
- public visitConditionalExpression(node: ConditionalExpressionSyntax): any;
- public visitConstructSignature(node: ConstructSignatureSyntax): any;
- public visitMethodSignature(node: MethodSignatureSyntax): any;
- public visitIndexSignature(node: IndexSignatureSyntax): any;
- public visitPropertySignature(node: PropertySignatureSyntax): any;
- public visitCallSignature(node: CallSignatureSyntax): any;
- public visitParameterList(node: ParameterListSyntax): any;
- public visitTypeParameterList(node: TypeParameterListSyntax): any;
- public visitTypeParameter(node: TypeParameterSyntax): any;
- public visitConstraint(node: ConstraintSyntax): any;
- public visitElseClause(node: ElseClauseSyntax): any;
- public visitIfStatement(node: IfStatementSyntax): any;
- public visitExpressionStatement(node: ExpressionStatementSyntax): any;
- public visitConstructorDeclaration(node: ConstructorDeclarationSyntax): any;
- public visitMemberFunctionDeclaration(node: MemberFunctionDeclarationSyntax): any;
- public visitGetAccessor(node: GetAccessorSyntax): any;
- public visitSetAccessor(node: SetAccessorSyntax): any;
- public visitMemberVariableDeclaration(node: MemberVariableDeclarationSyntax): any;
- public visitIndexMemberDeclaration(node: IndexMemberDeclarationSyntax): any;
- public visitThrowStatement(node: ThrowStatementSyntax): any;
- public visitReturnStatement(node: ReturnStatementSyntax): any;
- public visitObjectCreationExpression(node: ObjectCreationExpressionSyntax): any;
- public visitSwitchStatement(node: SwitchStatementSyntax): any;
- public visitCaseSwitchClause(node: CaseSwitchClauseSyntax): any;
- public visitDefaultSwitchClause(node: DefaultSwitchClauseSyntax): any;
- public visitBreakStatement(node: BreakStatementSyntax): any;
- public visitContinueStatement(node: ContinueStatementSyntax): any;
- public visitForStatement(node: ForStatementSyntax): any;
- public visitForInStatement(node: ForInStatementSyntax): any;
- public visitWhileStatement(node: WhileStatementSyntax): any;
- public visitWithStatement(node: WithStatementSyntax): any;
- public visitEnumDeclaration(node: EnumDeclarationSyntax): any;
- public visitEnumElement(node: EnumElementSyntax): any;
- public visitCastExpression(node: CastExpressionSyntax): any;
- public visitObjectLiteralExpression(node: ObjectLiteralExpressionSyntax): any;
- public visitSimplePropertyAssignment(node: SimplePropertyAssignmentSyntax): any;
- public visitFunctionPropertyAssignment(node: FunctionPropertyAssignmentSyntax): any;
- public visitFunctionExpression(node: FunctionExpressionSyntax): any;
- public visitEmptyStatement(node: EmptyStatementSyntax): any;
- public visitTryStatement(node: TryStatementSyntax): any;
- public visitCatchClause(node: CatchClauseSyntax): any;
- public visitFinallyClause(node: FinallyClauseSyntax): any;
- public visitLabeledStatement(node: LabeledStatementSyntax): any;
- public visitDoStatement(node: DoStatementSyntax): any;
- public visitTypeOfExpression(node: TypeOfExpressionSyntax): any;
- public visitDeleteExpression(node: DeleteExpressionSyntax): any;
- public visitVoidExpression(node: VoidExpressionSyntax): any;
- public visitDebuggerStatement(node: DebuggerStatementSyntax): any;
- }
-}
-declare module TypeScript {
- class SyntaxWalker implements ISyntaxVisitor {
- public visitToken(token: ISyntaxToken): void;
- public visitNode(node: SyntaxNode): void;
- public visitNodeOrToken(nodeOrToken: ISyntaxNodeOrToken): void;
- private visitOptionalToken(token);
- public visitOptionalNode(node: SyntaxNode): void;
- public visitOptionalNodeOrToken(nodeOrToken: ISyntaxNodeOrToken): void;
- public visitList(list: ISyntaxList): void;
- public visitSeparatedList(list: ISeparatedSyntaxList): void;
- public visitSourceUnit(node: SourceUnitSyntax): void;
- public visitExternalModuleReference(node: ExternalModuleReferenceSyntax): void;
- public visitModuleNameModuleReference(node: ModuleNameModuleReferenceSyntax): void;
- public visitImportDeclaration(node: ImportDeclarationSyntax): void;
- public visitExportAssignment(node: ExportAssignmentSyntax): void;
- public visitClassDeclaration(node: ClassDeclarationSyntax): void;
- public visitInterfaceDeclaration(node: InterfaceDeclarationSyntax): void;
- public visitHeritageClause(node: HeritageClauseSyntax): void;
- public visitModuleDeclaration(node: ModuleDeclarationSyntax): void;
- public visitFunctionDeclaration(node: FunctionDeclarationSyntax): void;
- public visitVariableStatement(node: VariableStatementSyntax): void;
- public visitVariableDeclaration(node: VariableDeclarationSyntax): void;
- public visitVariableDeclarator(node: VariableDeclaratorSyntax): void;
- public visitEqualsValueClause(node: EqualsValueClauseSyntax): void;
- public visitPrefixUnaryExpression(node: PrefixUnaryExpressionSyntax): void;
- public visitArrayLiteralExpression(node: ArrayLiteralExpressionSyntax): void;
- public visitOmittedExpression(node: OmittedExpressionSyntax): void;
- public visitParenthesizedExpression(node: ParenthesizedExpressionSyntax): void;
- public visitSimpleArrowFunctionExpression(node: SimpleArrowFunctionExpressionSyntax): void;
- public visitParenthesizedArrowFunctionExpression(node: ParenthesizedArrowFunctionExpressionSyntax): void;
- public visitQualifiedName(node: QualifiedNameSyntax): void;
- public visitTypeArgumentList(node: TypeArgumentListSyntax): void;
- public visitConstructorType(node: ConstructorTypeSyntax): void;
- public visitFunctionType(node: FunctionTypeSyntax): void;
- public visitObjectType(node: ObjectTypeSyntax): void;
- public visitArrayType(node: ArrayTypeSyntax): void;
- public visitGenericType(node: GenericTypeSyntax): void;
- public visitTypeQuery(node: TypeQuerySyntax): void;
- public visitTypeAnnotation(node: TypeAnnotationSyntax): void;
- public visitBlock(node: BlockSyntax): void;
- public visitParameter(node: ParameterSyntax): void;
- public visitMemberAccessExpression(node: MemberAccessExpressionSyntax): void;
- public visitPostfixUnaryExpression(node: PostfixUnaryExpressionSyntax): void;
- public visitElementAccessExpression(node: ElementAccessExpressionSyntax): void;
- public visitInvocationExpression(node: InvocationExpressionSyntax): void;
- public visitArgumentList(node: ArgumentListSyntax): void;
- public visitBinaryExpression(node: BinaryExpressionSyntax): void;
- public visitConditionalExpression(node: ConditionalExpressionSyntax): void;
- public visitConstructSignature(node: ConstructSignatureSyntax): void;
- public visitMethodSignature(node: MethodSignatureSyntax): void;
- public visitIndexSignature(node: IndexSignatureSyntax): void;
- public visitPropertySignature(node: PropertySignatureSyntax): void;
- public visitCallSignature(node: CallSignatureSyntax): void;
- public visitParameterList(node: ParameterListSyntax): void;
- public visitTypeParameterList(node: TypeParameterListSyntax): void;
- public visitTypeParameter(node: TypeParameterSyntax): void;
- public visitConstraint(node: ConstraintSyntax): void;
- public visitElseClause(node: ElseClauseSyntax): void;
- public visitIfStatement(node: IfStatementSyntax): void;
- public visitExpressionStatement(node: ExpressionStatementSyntax): void;
- public visitConstructorDeclaration(node: ConstructorDeclarationSyntax): void;
- public visitMemberFunctionDeclaration(node: MemberFunctionDeclarationSyntax): void;
- public visitGetAccessor(node: GetAccessorSyntax): void;
- public visitSetAccessor(node: SetAccessorSyntax): void;
- public visitMemberVariableDeclaration(node: MemberVariableDeclarationSyntax): void;
- public visitIndexMemberDeclaration(node: IndexMemberDeclarationSyntax): void;
- public visitThrowStatement(node: ThrowStatementSyntax): void;
- public visitReturnStatement(node: ReturnStatementSyntax): void;
- public visitObjectCreationExpression(node: ObjectCreationExpressionSyntax): void;
- public visitSwitchStatement(node: SwitchStatementSyntax): void;
- public visitCaseSwitchClause(node: CaseSwitchClauseSyntax): void;
- public visitDefaultSwitchClause(node: DefaultSwitchClauseSyntax): void;
- public visitBreakStatement(node: BreakStatementSyntax): void;
- public visitContinueStatement(node: ContinueStatementSyntax): void;
- public visitForStatement(node: ForStatementSyntax): void;
- public visitForInStatement(node: ForInStatementSyntax): void;
- public visitWhileStatement(node: WhileStatementSyntax): void;
- public visitWithStatement(node: WithStatementSyntax): void;
- public visitEnumDeclaration(node: EnumDeclarationSyntax): void;
- public visitEnumElement(node: EnumElementSyntax): void;
- public visitCastExpression(node: CastExpressionSyntax): void;
- public visitObjectLiteralExpression(node: ObjectLiteralExpressionSyntax): void;
- public visitSimplePropertyAssignment(node: SimplePropertyAssignmentSyntax): void;
- public visitFunctionPropertyAssignment(node: FunctionPropertyAssignmentSyntax): void;
- public visitFunctionExpression(node: FunctionExpressionSyntax): void;
- public visitEmptyStatement(node: EmptyStatementSyntax): void;
- public visitTryStatement(node: TryStatementSyntax): void;
- public visitCatchClause(node: CatchClauseSyntax): void;
- public visitFinallyClause(node: FinallyClauseSyntax): void;
- public visitLabeledStatement(node: LabeledStatementSyntax): void;
- public visitDoStatement(node: DoStatementSyntax): void;
- public visitTypeOfExpression(node: TypeOfExpressionSyntax): void;
- public visitDeleteExpression(node: DeleteExpressionSyntax): void;
- public visitVoidExpression(node: VoidExpressionSyntax): void;
- public visitDebuggerStatement(node: DebuggerStatementSyntax): void;
- }
-}
-declare module TypeScript {
- class PositionTrackingWalker extends SyntaxWalker {
- private _position;
- public visitToken(token: ISyntaxToken): void;
- public position(): number;
- public skip(element: ISyntaxElement): void;
- }
-}
-declare module TypeScript {
- interface ITokenInformation {
- previousToken: ISyntaxToken;
- nextToken: ISyntaxToken;
- }
- class SyntaxInformationMap extends SyntaxWalker {
- private trackParents;
- private trackPreviousToken;
- private tokenToInformation;
- private elementToPosition;
- private _previousToken;
- private _previousTokenInformation;
- private _currentPosition;
- private _elementToParent;
- private _parentStack;
- constructor(trackParents: boolean, trackPreviousToken: boolean);
- static create(node: SyntaxNode, trackParents: boolean, trackPreviousToken: boolean): SyntaxInformationMap;
- public visitNode(node: SyntaxNode): void;
- public visitToken(token: ISyntaxToken): void;
- public parent(element: ISyntaxElement): SyntaxNode;
- public fullStart(element: ISyntaxElement): number;
- public start(element: ISyntaxElement): number;
- public end(element: ISyntaxElement): number;
- public previousToken(token: ISyntaxToken): ISyntaxToken;
- public tokenInformation(token: ISyntaxToken): ITokenInformation;
- public firstTokenInLineContainingToken(token: ISyntaxToken): ISyntaxToken;
- public isFirstTokenInLine(token: ISyntaxToken): boolean;
- private isFirstTokenInLineWorker(information);
- }
-}
-declare module TypeScript {
- class SyntaxNodeInvariantsChecker extends SyntaxWalker {
- private tokenTable;
- static checkInvariants(node: SyntaxNode): void;
- public visitToken(token: ISyntaxToken): void;
- }
-}
-declare module TypeScript {
- class DepthLimitedWalker extends PositionTrackingWalker {
- private _depth;
- private _maximumDepth;
- constructor(maximumDepth: number);
- public visitNode(node: SyntaxNode): void;
- }
-}
-declare module TypeScript.Parser {
- function parse(fileName: string, text: ISimpleText, isDeclaration: boolean, options: ParseOptions): SyntaxTree;
- function incrementalParse(oldSyntaxTree: SyntaxTree, textChangeRange: TextChangeRange, newText: ISimpleText): SyntaxTree;
-}
-declare module TypeScript {
- class SyntaxTree {
- private _sourceUnit;
- private _isDeclaration;
- private _parserDiagnostics;
- private _allDiagnostics;
- private _fileName;
- private _lineMap;
- private _parseOptions;
- constructor(sourceUnit: SourceUnitSyntax, isDeclaration: boolean, diagnostics: Diagnostic[], fileName: string, lineMap: LineMap, parseOtions: ParseOptions);
- public toJSON(key: any): any;
- public sourceUnit(): SourceUnitSyntax;
- public isDeclaration(): boolean;
- private computeDiagnostics();
- public diagnostics(): Diagnostic[];
- public fileName(): string;
- public lineMap(): LineMap;
- public parseOptions(): ParseOptions;
- public structuralEquals(tree: SyntaxTree): boolean;
- }
-}
-declare module TypeScript {
- class Unicode {
- static unicodeES3IdentifierStart: number[];
- static unicodeES3IdentifierPart: number[];
- static unicodeES5IdentifierStart: number[];
- static unicodeES5IdentifierPart: number[];
- static lookupInUnicodeMap(code: number, map: number[]): boolean;
- static isIdentifierStart(code: number, languageVersion: LanguageVersion): boolean;
- static isIdentifierPart(code: number, languageVersion: LanguageVersion): boolean;
- }
-}
-declare module TypeScript {
- module CompilerDiagnostics {
- var debug: boolean;
- interface IDiagnosticWriter {
- Alert(output: string): void;
- }
- var diagnosticWriter: IDiagnosticWriter;
- var analysisPass: number;
- function Alert(output: string): void;
- function debugPrint(s: string): void;
- function assert(condition: boolean, s: string): void;
- }
- interface ILogger {
- information(): boolean;
- debug(): boolean;
- warning(): boolean;
- error(): boolean;
- fatal(): boolean;
- log(s: string): void;
- }
- class NullLogger implements ILogger {
- public information(): boolean;
- public debug(): boolean;
- public warning(): boolean;
- public error(): boolean;
- public fatal(): boolean;
- public log(s: string): void;
- }
- function timeFunction(logger: ILogger, funcDescription: string, func: () => any): any;
-}
-declare module TypeScript {
- class Document {
- private _compiler;
- private _semanticInfoChain;
- public fileName: string;
- public referencedFiles: string[];
- private _scriptSnapshot;
- public byteOrderMark: ByteOrderMark;
- public version: number;
- public isOpen: boolean;
- private _syntaxTree;
- private _topLevelDecl;
- private _diagnostics;
- private _bloomFilter;
- private _sourceUnit;
- private _lineMap;
- private _declASTMap;
- private _astDeclMap;
- private _amdDependencies;
- private _externalModuleIndicatorSpan;
- constructor(_compiler: TypeScriptCompiler, _semanticInfoChain: SemanticInfoChain, fileName: string, referencedFiles: string[], _scriptSnapshot: IScriptSnapshot, byteOrderMark: ByteOrderMark, version: number, isOpen: boolean, _syntaxTree: SyntaxTree, _topLevelDecl: PullDecl);
- public invalidate(): void;
- public isDeclareFile(): boolean;
- private cacheSyntaxTreeInfo(syntaxTree);
- private getAmdDependency(comment);
- private getImplicitImportSpan(sourceUnitLeadingTrivia);
- private getImplicitImportSpanWorker(trivia, position);
- private getTopLevelImportOrExportSpan(node);
- public sourceUnit(): SourceUnit;
- public diagnostics(): Diagnostic[];
- public lineMap(): LineMap;
- public isExternalModule(): boolean;
- public externalModuleIndicatorSpan(): TextSpan;
- public amdDependencies(): string[];
- public syntaxTree(): SyntaxTree;
- public bloomFilter(): BloomFilter;
- public emitToOwnOutputFile(): boolean;
- public update(scriptSnapshot: IScriptSnapshot, version: number, isOpen: boolean, textChangeRange: TextChangeRange): Document;
- static create(compiler: TypeScriptCompiler, semanticInfoChain: SemanticInfoChain, fileName: string, scriptSnapshot: IScriptSnapshot, byteOrderMark: ByteOrderMark, version: number, isOpen: boolean, referencedFiles: string[]): Document;
- public topLevelDecl(): PullDecl;
- public _getDeclForAST(ast: AST): PullDecl;
- public getEnclosingDecl(ast: AST): PullDecl;
- public _setDeclForAST(ast: AST, decl: PullDecl): void;
- public _getASTForDecl(decl: PullDecl): AST;
- public _setASTForDecl(decl: PullDecl, ast: AST): void;
- }
-}
-declare module TypeScript {
- function hasFlag(val: number, flag: number): boolean;
- enum TypeRelationshipFlags {
- SuccessfulComparison = 0,
- RequiredPropertyIsMissing = 2,
- IncompatibleSignatures = 4,
- SourceSignatureHasTooManyParameters = 3,
- IncompatibleReturnTypes = 16,
- IncompatiblePropertyTypes = 32,
- IncompatibleParameterTypes = 64,
- InconsistantPropertyAccesibility = 128,
- }
- enum ModuleGenTarget {
- Unspecified = 0,
- Synchronous = 1,
- Asynchronous = 2,
- }
-}
-declare module TypeScript {
- function createIntrinsicsObject(): IIndexable;
- interface IHashTable {
- getAllKeys(): string[];
- add(key: string, data: T): boolean;
- addOrUpdate(key: string, data: T): boolean;
- map(fn: (k: string, value: T, context: any) => void, context: any): void;
- every(fn: (k: string, value: T, context: any) => void, context: any): boolean;
- some(fn: (k: string, value: T, context: any) => void, context: any): boolean;
- count(): number;
- lookup(key: string): T;
- }
- class StringHashTable implements IHashTable {
- private itemCount;
- private table;
- public getAllKeys(): string[];
- public add(key: string, data: T): boolean;
- public addOrUpdate(key: string, data: T): boolean;
- public map(fn: (k: string, value: T, context: any) => void, context: any): void;
- public every(fn: (k: string, value: T, context: any) => void, context: any): boolean;
- public some(fn: (k: string, value: T, context: any) => void, context: any): boolean;
- public count(): number;
- public lookup(key: string): T;
- public remove(key: string): void;
- }
- class IdentiferNameHashTable extends StringHashTable {
- public getAllKeys(): string[];
- public add(key: string, data: T): boolean;
- public addOrUpdate(key: string, data: T): boolean;
- public map(fn: (k: string, value: T, context: any) => void, context: any): void;
- public every(fn: (k: string, value: T, context: any) => void, context: any): boolean;
- public some(fn: (k: string, value: any, context: any) => void, context: any): boolean;
- public lookup(key: string): T;
- }
-}
-declare module TypeScript {
- interface IParameters {
- length: number;
- lastParameterIsRest(): boolean;
- ast: AST;
- astAt(index: number): AST;
- identifierAt(index: number): Identifier;
- typeAt(index: number): AST;
- initializerAt(index: number): EqualsValueClause;
- isOptionalAt(index: number): boolean;
- }
-}
-declare module TypeScript.ASTHelpers {
- function scriptIsElided(sourceUnit: SourceUnit): boolean;
- function moduleIsElided(declaration: ModuleDeclaration): boolean;
- function enumIsElided(declaration: EnumDeclaration): boolean;
- function isValidAstNode(ast: IASTSpan): boolean;
- function getAstAtPosition(script: AST, pos: number, useTrailingTriviaAsLimChar?: boolean, forceInclusive?: boolean): AST;
- function getExtendsHeritageClause(clauses: ISyntaxList2): HeritageClause;
- function getImplementsHeritageClause(clauses: ISyntaxList2): HeritageClause;
- function isCallExpression(ast: AST): boolean;
- function isCallExpressionTarget(ast: AST): boolean;
- function isDeclarationASTOrDeclarationNameAST(ast: AST): boolean;
- function getEnclosingParameterForInitializer(ast: AST): Parameter;
- function getEnclosingMemberVariableDeclaration(ast: AST): MemberVariableDeclaration;
- function isNameOfFunction(ast: AST): boolean;
- function isNameOfMemberFunction(ast: AST): boolean;
- function isNameOfMemberAccessExpression(ast: AST): boolean;
- function isRightSideOfQualifiedName(ast: AST): boolean;
- function parentIsModuleDeclaration(ast: AST): boolean;
- function parametersFromIdentifier(id: Identifier): IParameters;
- function parametersFromParameter(parameter: Parameter): IParameters;
- function parametersFromParameterList(list: ParameterList): IParameters;
- function isDeclarationAST(ast: AST): boolean;
- function docComments(ast: AST): Comment[];
- function getParameterList(ast: AST): ParameterList;
- function getType(ast: AST): AST;
- function getVariableDeclaratorModifiers(variableDeclarator: VariableDeclarator): PullElementFlags[];
- function isIntegerLiteralAST(expression: AST): boolean;
- function getEnclosingModuleDeclaration(ast: AST): ModuleDeclaration;
- function getModuleDeclarationFromNameAST(ast: AST): ModuleDeclaration;
- function isLastNameOfModule(ast: ModuleDeclaration, astName: AST): boolean;
- function getNameOfIdenfierOrQualifiedName(name: AST): string;
- function getModuleNames(name: AST, result?: Identifier[]): Identifier[];
-}
-declare module TypeScript {
- class AstWalkOptions {
- public goChildren: boolean;
- public stopWalking: boolean;
- }
- interface IAstWalker {
- options: AstWalkOptions;
- state: any;
- }
- class AstWalkerFactory {
- public walk(ast: AST, pre: (ast: AST, walker: IAstWalker) => void, post?: (ast: AST, walker: IAstWalker) => void, state?: any): void;
- public simpleWalk(ast: AST, pre: (ast: AST, state: any) => void, post?: (ast: AST, state: any) => void, state?: any): void;
- }
- function getAstWalkerFactory(): AstWalkerFactory;
-}
-declare module TypeScript {
- class Base64VLQFormat {
- static encode(inValue: number): string;
- static decode(inString: string): {
- value: number;
- rest: string;
- };
- }
-}
-declare module TypeScript {
- class SourceMapPosition {
- public sourceLine: number;
- public sourceColumn: number;
- public emittedLine: number;
- public emittedColumn: number;
- }
- class SourceMapping {
- public start: SourceMapPosition;
- public end: SourceMapPosition;
- public nameIndex: number;
- public childMappings: SourceMapping[];
- }
- class SourceMapEntry {
- public emittedFile: string;
- public emittedLine: number;
- public emittedColumn: number;
- public sourceFile: string;
- public sourceLine: number;
- public sourceColumn: number;
- public sourceName: string;
- constructor(emittedFile: string, emittedLine: number, emittedColumn: number, sourceFile: string, sourceLine: number, sourceColumn: number, sourceName: string);
- }
- class SourceMapper {
- private jsFile;
- private sourceMapOut;
- static MapFileExtension: string;
- private jsFileName;
- private sourceMapPath;
- private sourceMapDirectory;
- private sourceRoot;
- public names: string[];
- private mappingLevel;
- private tsFilePaths;
- private allSourceMappings;
- public currentMappings: SourceMapping[][];
- public currentNameIndex: number[];
- private sourceMapEntries;
- constructor(jsFile: TextWriter, sourceMapOut: TextWriter, document: Document, jsFilePath: string, emitOptions: EmitOptions, resolvePath: (path: string) => string);
- public getOutputFile(): OutputFile;
- public increaseMappingLevel(ast: IASTSpan): void;
- public decreaseMappingLevel(ast: IASTSpan): void;
- public setNewSourceFile(document: Document, emitOptions: EmitOptions): void;
- private setSourceMapOptions(document, jsFilePath, emitOptions, resolvePath);
- private setNewSourceFilePath(document, emitOptions);
- public emitSourceMapping(): void;
- }
-}
-declare module TypeScript {
- enum EmitContainer {
- Prog = 0,
- Module = 1,
- DynamicModule = 2,
- Class = 3,
- Constructor = 4,
- Function = 5,
- Args = 6,
- Interface = 7,
- }
- class EmitState {
- public column: number;
- public line: number;
- public container: EmitContainer;
- constructor();
- }
- class EmitOptions {
- public resolvePath: (path: string) => string;
- private _diagnostic;
- private _settings;
- private _commonDirectoryPath;
- private _sharedOutputFile;
- private _sourceRootDirectory;
- private _sourceMapRootDirectory;
- private _outputDirectory;
- public diagnostic(): Diagnostic;
- public commonDirectoryPath(): string;
- public sharedOutputFile(): string;
- public sourceRootDirectory(): string;
- public sourceMapRootDirectory(): string;
- public outputDirectory(): string;
- public compilationSettings(): ImmutableCompilationSettings;
- constructor(compiler: TypeScriptCompiler, resolvePath: (path: string) => string);
- private determineCommonDirectoryPath(compiler);
- }
- class Indenter {
- static indentStep: number;
- static indentStepString: string;
- static indentStrings: string[];
- public indentAmt: number;
- public increaseIndent(): void;
- public decreaseIndent(): void;
- public getIndent(): string;
- }
- function lastParameterIsRest(parameterList: ParameterList): boolean;
- class Emitter {
- public emittingFileName: string;
- public outfile: TextWriter;
- public emitOptions: EmitOptions;
- private semanticInfoChain;
- public globalThisCapturePrologueEmitted: boolean;
- public extendsPrologueEmitted: boolean;
- public thisClassNode: ClassDeclaration;
- public inArrowFunction: boolean;
- public moduleName: string;
- public emitState: EmitState;
- public indenter: Indenter;
- public sourceMapper: SourceMapper;
- public captureThisStmtString: string;
- private currentVariableDeclaration;
- private declStack;
- private exportAssignment;
- private inWithBlock;
- public document: Document;
- private detachedCommentsElement;
- constructor(emittingFileName: string, outfile: TextWriter, emitOptions: EmitOptions, semanticInfoChain: SemanticInfoChain);
- private pushDecl(decl);
- private popDecl(decl);
- private getEnclosingDecl();
- public setExportAssignment(exportAssignment: ExportAssignment): void;
- public getExportAssignment(): ExportAssignment;
- public setDocument(document: Document): void;
- public shouldEmitImportDeclaration(importDeclAST: ImportDeclaration): boolean;
- public emitImportDeclaration(importDeclAST: ImportDeclaration): void;
- public createSourceMapper(document: Document, jsFileName: string, jsFile: TextWriter, sourceMapOut: TextWriter, resolvePath: (path: string) => string): void;
- public setSourceMapperNewSourceFile(document: Document): void;
- private updateLineAndColumn(s);
- public writeToOutputWithSourceMapRecord(s: string, astSpan: IASTSpan): void;
- public writeToOutput(s: string): void;
- public writeLineToOutput(s: string, force?: boolean): void;
- public writeCaptureThisStatement(ast: AST): void;
- public setContainer(c: number): number;
- private getIndentString();
- public emitIndent(): void;
- public emitComment(comment: Comment, trailing: boolean, first: boolean): void;
- public emitComments(ast: AST, pre: boolean, onlyPinnedOrTripleSlashComments?: boolean): void;
- private isPinnedOrTripleSlash(comment);
- public emitCommentsArray(comments: Comment[], trailing: boolean): void;
- public emitObjectLiteralExpression(objectLiteral: ObjectLiteralExpression): void;
- public emitArrayLiteralExpression(arrayLiteral: ArrayLiteralExpression): void;
- public emitObjectCreationExpression(objectCreationExpression: ObjectCreationExpression): void;
- public getConstantDecl(dotExpr: MemberAccessExpression): PullEnumElementDecl;
- public tryEmitConstant(dotExpr: MemberAccessExpression): boolean;
- public emitInvocationExpression(callNode: InvocationExpression): void;
- private emitParameterList(list);
- private emitFunctionParameters(parameters);
- private emitFunctionBodyStatements(name, funcDecl, parameterList, block, bodyExpression);
- private emitDefaultValueAssignments(parameters);
- private emitRestParameterInitializer(parameters);
- private getImportDecls(fileName);
- public getModuleImportAndDependencyList(sourceUnit: SourceUnit): {
- importList: string;
- dependencyList: string;
- };
- public shouldCaptureThis(ast: AST): boolean;
- public emitEnum(moduleDecl: EnumDeclaration): void;
- private getModuleDeclToVerifyChildNameCollision(moduleDecl, changeNameIfAnyDeclarationInContext);
- private hasChildNameCollision(moduleName, parentDecl);
- private getModuleName(moduleDecl, changeNameIfAnyDeclarationInContext?);
- private emitModuleDeclarationWorker(moduleDecl);
- public emitSingleModuleDeclaration(moduleDecl: ModuleDeclaration, moduleName: IASTToken): void;
- public emitEnumElement(varDecl: EnumElement): void;
- public emitElementAccessExpression(expression: ElementAccessExpression): void;
- public emitSimpleArrowFunctionExpression(arrowFunction: SimpleArrowFunctionExpression): void;
- public emitParenthesizedArrowFunctionExpression(arrowFunction: ParenthesizedArrowFunctionExpression): void;
- private emitAnyArrowFunctionExpression(arrowFunction, funcName, parameters, block, expression);
- public emitConstructor(funcDecl: ConstructorDeclaration): void;
- public emitGetAccessor(accessor: GetAccessor): void;
- public emitSetAccessor(accessor: SetAccessor): void;
- public emitFunctionExpression(funcDecl: FunctionExpression): void;
- public emitFunction(funcDecl: FunctionDeclaration): void;
- public emitAmbientVarDecl(varDecl: VariableDeclarator): void;
- public emitVarDeclVar(): void;
- public emitVariableDeclaration(declaration: VariableDeclaration): void;
- private emitMemberVariableDeclaration(varDecl);
- public emitVariableDeclarator(varDecl: VariableDeclarator): void;
- private symbolIsUsedInItsEnclosingContainer(symbol, dynamic?);
- private shouldQualifySymbolNameWithParentName(symbol);
- private getSymbolForEmit(ast);
- public emitName(name: Identifier, addThis: boolean): void;
- public recordSourceMappingNameStart(name: string): void;
- public recordSourceMappingNameEnd(): void;
- public recordSourceMappingStart(ast: IASTSpan): void;
- public recordSourceMappingEnd(ast: IASTSpan): void;
- public getOutputFiles(): OutputFile[];
- private emitParameterPropertyAndMemberVariableAssignments();
- private isOnSameLine(pos1, pos2);
- private emitCommaSeparatedList(parent, list, buffer, preserveNewLines);
- public emitList(list: ISyntaxList2, useNewLineSeparator?: boolean, startInclusive?: number, endExclusive?: number): void;
- public emitSeparatedList(list: ISeparatedSyntaxList2, useNewLineSeparator?: boolean, startInclusive?: number, endExclusive?: number): void;
- private isDirectivePrologueElement(node);
- public emitSpaceBetweenConstructs(node1: AST, node2: AST): void;
- private getDetachedComments(element);
- private emitPossibleCopyrightHeaders(script);
- private emitDetachedComments(list);
- public emitScriptElements(sourceUnit: SourceUnit): void;
- public emitConstructorStatements(funcDecl: ConstructorDeclaration): void;
- public emitJavascript(ast: AST, startLine: boolean): void;
- public emitAccessorMemberDeclaration(funcDecl: AST, name: IASTToken, className: string, isProto: boolean): void;
- private emitAccessorBody(funcDecl, parameterList, block);
- public emitClass(classDecl: ClassDeclaration): void;
- private emitClassMembers(classDecl);
- private emitClassMemberFunctionDeclaration(classDecl, funcDecl);
- private requiresExtendsBlock(moduleElements);
- public emitPrologue(sourceUnit: SourceUnit): void;
- public emitThis(): void;
- public emitBlockOrStatement(node: AST): void;
- public emitLiteralExpression(expression: LiteralExpression): void;
- public emitThisExpression(expression: ThisExpression): void;
- public emitSuperExpression(expression: SuperExpression): void;
- public emitParenthesizedExpression(parenthesizedExpression: ParenthesizedExpression): void;
- public emitCastExpression(expression: CastExpression): void;
- public emitPrefixUnaryExpression(expression: PrefixUnaryExpression): void;
- public emitPostfixUnaryExpression(expression: PostfixUnaryExpression): void;
- public emitTypeOfExpression(expression: TypeOfExpression): void;
- public emitDeleteExpression(expression: DeleteExpression): void;
- public emitVoidExpression(expression: VoidExpression): void;
- private canEmitDottedNameMemberAccessExpression(expression);
- private emitDottedNameMemberAccessExpression(expression);
- private emitDottedNameMemberAccessExpressionRecurse(expression);
- public emitMemberAccessExpression(expression: MemberAccessExpression): void;
- public emitQualifiedName(name: QualifiedName): void;
- public emitBinaryExpression(expression: BinaryExpression): void;
- public emitSimplePropertyAssignment(property: SimplePropertyAssignment): void;
- public emitFunctionPropertyAssignment(funcProp: FunctionPropertyAssignment): void;
- public emitConditionalExpression(expression: ConditionalExpression): void;
- public emitThrowStatement(statement: ThrowStatement): void;
- public emitExpressionStatement(statement: ExpressionStatement): void;
- public emitLabeledStatement(statement: LabeledStatement): void;
- public emitBlock(block: Block): void;
- public emitBreakStatement(jump: BreakStatement): void;
- public emitContinueStatement(jump: ContinueStatement): void;
- public emitWhileStatement(statement: WhileStatement): void;
- public emitDoStatement(statement: DoStatement): void;
- public emitIfStatement(statement: IfStatement): void;
- public emitElseClause(elseClause: ElseClause): void;
- public emitReturnStatement(statement: ReturnStatement): void;
- public emitForInStatement(statement: ForInStatement): void;
- public emitForStatement(statement: ForStatement): void;
- public emitWithStatement(statement: WithStatement): void;
- public emitSwitchStatement(statement: SwitchStatement): void;
- public emitCaseSwitchClause(clause: CaseSwitchClause): void;
- private emitSwitchClauseBody(body);
- public emitDefaultSwitchClause(clause: DefaultSwitchClause): void;
- public emitTryStatement(statement: TryStatement): void;
- public emitCatchClause(clause: CatchClause): void;
- public emitFinallyClause(clause: FinallyClause): void;
- public emitDebuggerStatement(statement: DebuggerStatement): void;
- public emitNumericLiteral(literal: NumericLiteral): void;
- public emitRegularExpressionLiteral(literal: RegularExpressionLiteral): void;
- public emitStringLiteral(literal: StringLiteral): void;
- public emitEqualsValueClause(clause: EqualsValueClause): void;
- public emitParameter(parameter: Parameter): void;
- public emitConstructorDeclaration(declaration: ConstructorDeclaration): void;
- public shouldEmitFunctionDeclaration(declaration: FunctionDeclaration): boolean;
- public emitFunctionDeclaration(declaration: FunctionDeclaration): void;
- private emitSourceUnit(sourceUnit);
- public shouldEmitEnumDeclaration(declaration: EnumDeclaration): boolean;
- public emitEnumDeclaration(declaration: EnumDeclaration): void;
- public shouldEmitModuleDeclaration(declaration: ModuleDeclaration): boolean;
- private emitModuleDeclaration(declaration);
- public shouldEmitClassDeclaration(declaration: ClassDeclaration): boolean;
- public emitClassDeclaration(declaration: ClassDeclaration): void;
- public shouldEmitInterfaceDeclaration(declaration: InterfaceDeclaration): boolean;
- public emitInterfaceDeclaration(declaration: InterfaceDeclaration): void;
- private firstVariableDeclarator(statement);
- private isNotAmbientOrHasInitializer(variableStatement);
- public shouldEmitVariableStatement(statement: VariableStatement): boolean;
- public emitVariableStatement(statement: VariableStatement): void;
- public emitGenericType(type: GenericType): void;
- private shouldEmit(ast);
- private emit(ast);
- private emitWorker(ast);
- }
- function getLastConstructor(classDecl: ClassDeclaration): ConstructorDeclaration;
- function getTrimmedTextLines(comment: Comment): string[];
-}
-declare module TypeScript {
- class MemberName {
- public prefix: string;
- public suffix: string;
- public isString(): boolean;
- public isArray(): boolean;
- public isMarker(): boolean;
- public toString(): string;
- static memberNameToString(memberName: MemberName, markerInfo?: number[], markerBaseLength?: number): string;
- static create(text: string): MemberName;
- static create(entry: MemberName, prefix: string, suffix: string): MemberName;
- }
- class MemberNameString extends MemberName {
- public text: string;
- constructor(text: string);
- public isString(): boolean;
- }
- class MemberNameArray extends MemberName {
- public delim: string;
- public entries: MemberName[];
- public isArray(): boolean;
- public add(entry: MemberName): void;
- public addAll(entries: MemberName[]): void;
- constructor();
- }
-}
-declare module TypeScript {
- function stripStartAndEndQuotes(str: string): string;
- function isSingleQuoted(str: string): boolean;
- function isDoubleQuoted(str: string): boolean;
- function isQuoted(str: string): boolean;
- function quoteStr(str: string): string;
- function switchToForwardSlashes(path: string): string;
- function trimModName(modName: string): string;
- function getDeclareFilePath(fname: string): string;
- function isTSFile(fname: string): boolean;
- function isDTSFile(fname: string): boolean;
- function getPrettyName(modPath: string, quote?: boolean, treatAsFileName?: boolean): any;
- function getPathComponents(path: string): string[];
- function getRelativePathToFixedPath(fixedModFilePath: string, absoluteModPath: string, isAbsoultePathURL?: boolean): string;
- function changePathToDTS(modPath: string): string;
- function isRelative(path: string): boolean;
- function isRooted(path: string): boolean;
- function getRootFilePath(outFname: string): string;
- function filePathComponents(fullPath: string): string[];
- function filePath(fullPath: string): string;
- function convertToDirectoryPath(dirPath: string): string;
- function normalizePath(path: string): string;
-}
-declare module TypeScript {
- interface IFileReference extends ILineAndCharacter {
- path: string;
- isResident: boolean;
- position: number;
- length: number;
- }
-}
-declare module TypeScript {
- interface IPreProcessedFileInfo {
- referencedFiles: IFileReference[];
- importedFiles: IFileReference[];
- diagnostics: Diagnostic[];
- isLibFile: boolean;
- }
- var tripleSlashReferenceRegExp: RegExp;
- function preProcessFile(fileName: string, sourceText: IScriptSnapshot, readImportFiles?: boolean): IPreProcessedFileInfo;
- function getParseOptions(settings: ImmutableCompilationSettings): ParseOptions;
- function getReferencedFiles(fileName: string, sourceText: IScriptSnapshot): IFileReference[];
-}
-declare module TypeScript {
- interface IResolvedFile {
- path: string;
- referencedFiles: string[];
- importedFiles: string[];
- }
- interface IReferenceResolverHost {
- getScriptSnapshot(fileName: string): IScriptSnapshot;
- resolveRelativePath(path: string, directory: string): string;
- fileExists(path: string): boolean;
- directoryExists(path: string): boolean;
- getParentDirectory(path: string): string;
- }
- class ReferenceResolutionResult {
- public resolvedFiles: IResolvedFile[];
- public diagnostics: Diagnostic[];
- public seenNoDefaultLibTag: boolean;
- }
- class ReferenceResolver {
- private useCaseSensitiveFileResolution;
- private inputFileNames;
- private host;
- private visited;
- constructor(inputFileNames: string[], host: IReferenceResolverHost, useCaseSensitiveFileResolution: boolean);
- static resolve(inputFileNames: string[], host: IReferenceResolverHost, useCaseSensitiveFileResolution: boolean): ReferenceResolutionResult;
- public resolveInputFiles(): ReferenceResolutionResult;
- private resolveIncludedFile(path, referenceLocation, resolutionResult);
- private resolveImportedFile(path, referenceLocation, resolutionResult);
- private resolveFile(normalizedPath, resolutionResult);
- private getNormalizedFilePath(path, parentFilePath);
- private getUniqueFileId(filePath);
- private recordVisitedFile(filePath);
- private isVisited(filePath);
- private isSameFile(filePath1, filePath2);
- }
-}
-declare module TypeScript {
- class TextWriter {
- private name;
- private writeByteOrderMark;
- private outputFileType;
- private contents;
- public onNewLine: boolean;
- constructor(name: string, writeByteOrderMark: boolean, outputFileType: OutputFileType);
- public Write(s: string): void;
- public WriteLine(s: string): void;
- public Close(): void;
- public getOutputFile(): OutputFile;
- }
- class DeclarationEmitter {
- private emittingFileName;
- public document: Document;
- private compiler;
- private emitOptions;
- private semanticInfoChain;
- private declFile;
- private indenter;
- private emittedReferencePaths;
- constructor(emittingFileName: string, document: Document, compiler: TypeScriptCompiler, emitOptions: EmitOptions, semanticInfoChain: SemanticInfoChain);
- public getOutputFile(): OutputFile;
- public emitDeclarations(sourceUnit: SourceUnit): void;
- private emitDeclarationsForList(list);
- private emitSeparatedList(list);
- private emitDeclarationsForAST(ast);
- private getIndentString(declIndent?);
- private emitIndent();
- private canEmitDeclarations(declAST);
- private getDeclFlagsString(pullDecl, typeString);
- private emitDeclFlags(declarationAST, typeString);
- private emitTypeNamesMember(memberName, emitIndent?);
- private emitTypeSignature(ast, type);
- private emitComment(comment);
- private emitDeclarationComments(ast, endLine?);
- private writeDeclarationComments(declComments, endLine?);
- private emitTypeOfVariableDeclaratorOrParameter(boundDecl);
- private emitPropertySignature(varDecl);
- private emitVariableDeclarator(varDecl, isFirstVarInList, isLastVarInList);
- private emitClassElementModifiers(modifiers);
- private emitDeclarationsForMemberVariableDeclaration(varDecl);
- private emitDeclarationsForVariableStatement(variableStatement);
- private emitDeclarationsForVariableDeclaration(variableDeclaration);
- private emitArgDecl(argDecl, id, isOptional, isPrivate);
- private isOverloadedCallSignature(funcDecl);
- private emitDeclarationsForConstructorDeclaration(funcDecl);
- private emitParameterList(isPrivate, parameterList);
- private emitParameters(isPrivate, parameterList);
- private emitMemberFunctionDeclaration(funcDecl);
- private emitCallSignature(funcDecl);
- private emitConstructSignature(funcDecl);
- private emitMethodSignature(funcDecl);
- private emitDeclarationsForFunctionDeclaration(funcDecl);
- private emitIndexMemberDeclaration(funcDecl);
- private emitIndexSignature(funcDecl);
- private emitBaseList(bases, useExtendsList);
- private emitAccessorDeclarationComments(funcDecl);
- private emitDeclarationsForGetAccessor(funcDecl);
- private emitDeclarationsForSetAccessor(funcDecl);
- private emitMemberAccessorDeclaration(funcDecl, modifiers, name);
- private emitClassMembersFromConstructorDefinition(funcDecl);
- private emitDeclarationsForClassDeclaration(classDecl);
- private emitHeritageClauses(clauses);
- private emitHeritageClause(clause);
- static getEnclosingContainer(ast: AST): AST;
- private emitTypeParameters(typeParams, funcSignature?);
- private emitDeclarationsForInterfaceDeclaration(interfaceDecl);
- private emitDeclarationsForImportDeclaration(importDeclAST);
- private emitDeclarationsForEnumDeclaration(moduleDecl);
- private emitDeclarationsForModuleDeclaration(moduleDecl);
- private emitDeclarationsForExportAssignment(ast);
- private resolveScriptReference(document, reference);
- private emitReferencePaths(sourceUnit);
- private emitDeclarationsForSourceUnit(sourceUnit);
- }
-}
-declare module TypeScript {
- class BloomFilter {
- private bitArray;
- private hashFunctionCount;
- static falsePositiveProbability: number;
- constructor(expectedCount: number);
- static computeM(expectedCount: number): number;
- static computeK(expectedCount: number): number;
- private computeHash(key, seed);
- public addKeys(keys: IIndexable): void;
- public add(value: string): void;
- public probablyContains(value: string): boolean;
- public isEquivalent(filter: BloomFilter): boolean;
- static isEquivalent(array1: boolean[], array2: boolean[]): boolean;
- }
-}
-declare module TypeScript {
- class IdentifierWalker extends SyntaxWalker {
- public list: IIndexable;
- constructor(list: IIndexable);
- public visitToken(token: ISyntaxToken): void;
- }
-}
-declare module TypeScript {
- class CompilationSettings {
- public propagateEnumConstants: boolean;
- public removeComments: boolean;
- public watch: boolean;
- public noResolve: boolean;
- public allowAutomaticSemicolonInsertion: boolean;
- public noImplicitAny: boolean;
- public noLib: boolean;
- public codeGenTarget: LanguageVersion;
- public moduleGenTarget: ModuleGenTarget;
- public outFileOption: string;
- public outDirOption: string;
- public mapSourceFiles: boolean;
- public mapRoot: string;
- public sourceRoot: string;
- public generateDeclarationFiles: boolean;
- public useCaseSensitiveFileResolution: boolean;
- public gatherDiagnostics: boolean;
- public codepage: number;
- public createFileLog: boolean;
- }
- class ImmutableCompilationSettings {
- private static _defaultSettings;
- private _propagateEnumConstants;
- private _removeComments;
- private _watch;
- private _noResolve;
- private _allowAutomaticSemicolonInsertion;
- private _noImplicitAny;
- private _noLib;
- private _codeGenTarget;
- private _moduleGenTarget;
- private _outFileOption;
- private _outDirOption;
- private _mapSourceFiles;
- private _mapRoot;
- private _sourceRoot;
- private _generateDeclarationFiles;
- private _useCaseSensitiveFileResolution;
- private _gatherDiagnostics;
- private _codepage;
- private _createFileLog;
- public propagateEnumConstants(): boolean;
- public removeComments(): boolean;
- public watch(): boolean;
- public noResolve(): boolean;
- public allowAutomaticSemicolonInsertion(): boolean;
- public noImplicitAny(): boolean;
- public noLib(): boolean;
- public codeGenTarget(): LanguageVersion;
- public moduleGenTarget(): ModuleGenTarget;
- public outFileOption(): string;
- public outDirOption(): string;
- public mapSourceFiles(): boolean;
- public mapRoot(): string;
- public sourceRoot(): string;
- public generateDeclarationFiles(): boolean;
- public useCaseSensitiveFileResolution(): boolean;
- public gatherDiagnostics(): boolean;
- public codepage(): number;
- public createFileLog(): boolean;
- constructor(propagateEnumConstants: boolean, removeComments: boolean, watch: boolean, noResolve: boolean, allowAutomaticSemicolonInsertion: boolean, noImplicitAny: boolean, noLib: boolean, codeGenTarget: LanguageVersion, moduleGenTarget: ModuleGenTarget, outFileOption: string, outDirOption: string, mapSourceFiles: boolean, mapRoot: string, sourceRoot: string, generateDeclarationFiles: boolean, useCaseSensitiveFileResolution: boolean, gatherDiagnostics: boolean, codepage: number, createFileLog: boolean);
- static defaultSettings(): ImmutableCompilationSettings;
- static fromCompilationSettings(settings: CompilationSettings): ImmutableCompilationSettings;
- public toCompilationSettings(): any;
- }
-}
-declare module TypeScript {
- enum PullElementFlags {
- None = 0,
- Exported = 1,
- Private = 2,
- Public = 4,
- Ambient = 8,
- Static = 16,
- Optional = 128,
- Signature = 2048,
- Enum = 4096,
- ArrowFunction = 8192,
- ClassConstructorVariable = 16384,
- InitializedModule = 32768,
- InitializedDynamicModule = 65536,
- MustCaptureThis = 262144,
- DeclaredInAWithBlock = 2097152,
- HasReturnStatement = 4194304,
- PropertyParameter = 8388608,
- IsAnnotatedWithAny = 16777216,
- HasDefaultArgs = 33554432,
- ConstructorParameter = 67108864,
- ImplicitVariable = 118784,
- SomeInitializedModule = 102400,
- }
- function hasModifier(modifiers: PullElementFlags[], flag: PullElementFlags): boolean;
- enum PullElementKind {
- None = 0,
- Global = 0,
- Script = 1,
- Primitive = 2,
- Container = 4,
- Class = 8,
- Interface = 16,
- DynamicModule = 32,
- Enum = 64,
- TypeAlias = 128,
- ObjectLiteral = 256,
- Variable = 512,
- CatchVariable = 1024,
- Parameter = 2048,
- Property = 4096,
- TypeParameter = 8192,
- Function = 16384,
- ConstructorMethod = 32768,
- Method = 65536,
- FunctionExpression = 131072,
- GetAccessor = 262144,
- SetAccessor = 524288,
- CallSignature = 1048576,
- ConstructSignature = 2097152,
- IndexSignature = 4194304,
- ObjectType = 8388608,
- FunctionType = 16777216,
- ConstructorType = 33554432,
- EnumMember = 67108864,
- WithBlock = 134217728,
- CatchBlock = 268435456,
- All = 536869887,
- SomeFunction = 1032192,
- SomeValue = 68147712,
- SomeType = 58728795,
- AcceptableAlias = 59753052,
- SomeContainer = 164,
- SomeSignature = 7340032,
- SomeTypeReference = 58720272,
- SomeInstantiatableType = 8216,
- }
-}
-declare module TypeScript {
- class PullDecl {
- public kind: PullElementKind;
- public name: string;
- private declDisplayName;
- public semanticInfoChain: SemanticInfoChain;
- public declID: number;
- public flags: PullElementFlags;
- private declGroups;
- private childDecls;
- private typeParameters;
- private synthesizedValDecl;
- private containerDecl;
- public childDeclTypeCache: IIndexable;
- public childDeclValueCache: IIndexable;
- public childDeclNamespaceCache: IIndexable;
- public childDeclTypeParameterCache: IIndexable;
- constructor(declName: string, displayName: string, kind: PullElementKind, declFlags: PullElementFlags, semanticInfoChain: SemanticInfoChain);
- public fileName(): string;
- public getParentPath(): PullDecl[];
- public getParentDecl(): PullDecl;
- public isExternalModule(): boolean;
- public getEnclosingDecl(): PullDecl;
- public _getEnclosingDeclFromParentDecl(): PullDecl;
- public getDisplayName(): string;
- public setSymbol(symbol: PullSymbol): void;
- public ensureSymbolIsBound(): void;
- public getSymbol(): PullSymbol;
- public hasSymbol(): boolean;
- public setSignatureSymbol(signatureSymbol: PullSignatureSymbol): void;
- public getSignatureSymbol(): PullSignatureSymbol;
- public hasSignatureSymbol(): boolean;
- public setFlags(flags: PullElementFlags): void;
- public setFlag(flags: PullElementFlags): void;
- public setValueDecl(valDecl: PullDecl): void;
- public getValueDecl(): PullDecl;
- public getContainerDecl(): PullDecl;
- private getChildDeclCache(declKind);
- public addChildDecl(childDecl: PullDecl): void;
- public searchChildDecls(declName: string, searchKind: PullElementKind): PullDecl[];
- public getChildDecls(): PullDecl[];
- public getTypeParameters(): PullDecl[];
- public addVariableDeclToGroup(decl: PullDecl): void;
- public getVariableDeclGroups(): PullDecl[][];
- public hasBeenBound(): boolean;
- public isSynthesized(): boolean;
- public ast(): AST;
- public isRootDecl(): boolean;
- }
- class RootPullDecl extends PullDecl {
- private _isExternalModule;
- private _fileName;
- constructor(name: string, fileName: string, kind: PullElementKind, declFlags: PullElementFlags, semanticInfoChain: SemanticInfoChain, isExternalModule: boolean);
- public fileName(): string;
- public getParentPath(): PullDecl[];
- public getParentDecl(): PullDecl;
- public isExternalModule(): boolean;
- public getEnclosingDecl(): RootPullDecl;
- public isRootDecl(): boolean;
- }
- class NormalPullDecl extends PullDecl {
- private parentDecl;
- public _rootDecl: RootPullDecl;
- private parentPath;
- constructor(declName: string, displayName: string, kind: PullElementKind, declFlags: PullElementFlags, parentDecl: PullDecl, addToParent?: boolean);
- public fileName(): string;
- public getParentDecl(): PullDecl;
- public getParentPath(): PullDecl[];
- public isExternalModule(): boolean;
- public getEnclosingDecl(): PullDecl;
- public isRootDecl(): boolean;
- }
- class PullEnumElementDecl extends NormalPullDecl {
- public constantValue: number;
- constructor(declName: string, displayName: string, parentDecl: PullDecl);
- }
- class PullFunctionExpressionDecl extends NormalPullDecl {
- private functionExpressionName;
- constructor(expressionName: string, declFlags: PullElementFlags, parentDecl: PullDecl, displayName?: string);
- public getFunctionExpressionName(): string;
- }
- class PullSynthesizedDecl extends NormalPullDecl {
- constructor(declName: string, displayName: string, kind: PullElementKind, declFlags: PullElementFlags, parentDecl: PullDecl, semanticInfoChain: SemanticInfoChain);
- public isSynthesized(): boolean;
- public fileName(): string;
- }
- class PullDeclGroup {
- public name: string;
- private _decls;
- constructor(name: string);
- public addDecl(decl: PullDecl): void;
- public getDecls(): PullDecl[];
- }
-}
-declare module TypeScript {
- var pullSymbolID: number;
- var sentinelEmptyArray: any[];
- class PullSymbol {
- public pullSymbolID: number;
- public name: string;
- public kind: PullElementKind;
- private _container;
- public type: PullTypeSymbol;
- private _declarations;
- public isResolved: boolean;
- public isOptional: boolean;
- public inResolution: boolean;
- private isSynthesized;
- public isVarArg: boolean;
- private rootSymbol;
- private _enclosingSignature;
- private _docComments;
- public isPrinting: boolean;
- public isAny(): boolean;
- public isType(): boolean;
- public isTypeReference(): boolean;
- public isSignature(): boolean;
- public isArrayNamedTypeReference(): boolean;
- public isPrimitive(): boolean;
- public isAccessor(): boolean;
- public isError(): boolean;
- public isInterface(): boolean;
- public isMethod(): boolean;
- public isProperty(): boolean;
- public isAlias(): boolean;
- public isContainer(): boolean;
- constructor(name: string, declKind: PullElementKind);
- private findAliasedTypeSymbols(scopeSymbol, skipScopeSymbolAliasesLookIn?, lookIntoOnlyExportedAlias?, aliasSymbols?, visitedScopeDeclarations?);
- public getExternalAliasedSymbols(scopeSymbol: PullSymbol): PullTypeAliasSymbol[];
- static _isExternalModuleReferenceAlias(aliasSymbol: PullTypeAliasSymbol): boolean;
- private getExportedInternalAliasSymbol(scopeSymbol);
- public getAliasSymbolName(scopeSymbol: PullSymbol, aliasNameGetter: (symbol: PullTypeAliasSymbol) => string, aliasPartsNameGetter: (symbol: PullTypeAliasSymbol) => string, skipInternalAlias?: boolean): string;
- public _getResolver(): PullTypeResolver;
- public _resolveDeclaredSymbol(): PullSymbol;
- public getName(scopeSymbol?: PullSymbol, useConstraintInName?: boolean): string;
- public getDisplayName(scopeSymbol?: PullSymbol, useConstraintInName?: boolean, skipInternalAliasName?: boolean): string;
- public getIsSpecialized(): boolean;
- public getRootSymbol(): PullSymbol;
- public setRootSymbol(symbol: PullSymbol): void;
- public setIsSynthesized(value?: boolean): void;
- public getIsSynthesized(): any;
- public setEnclosingSignature(signature: PullSignatureSymbol): void;
- public getEnclosingSignature(): PullSignatureSymbol;
- public addDeclaration(decl: PullDecl): void;
- public getDeclarations(): PullDecl[];
- public hasDeclaration(decl: PullDecl): boolean;
- public setContainer(containerSymbol: PullTypeSymbol): void;
- public getContainer(): PullTypeSymbol;
- public setResolved(): void;
- public startResolving(): void;
- public setUnresolved(): void;
- public anyDeclHasFlag(flag: PullElementFlags): boolean;
- public allDeclsHaveFlag(flag: PullElementFlags): boolean;
- public pathToRoot(): PullSymbol[];
- private static unqualifiedNameReferencesDifferentSymbolInScope(symbol, scopePath, endScopePathIndex);
- private findQualifyingSymbolPathInScopeSymbol(scopeSymbol);
- public toString(scopeSymbol?: PullSymbol, useConstraintInName?: boolean): string;
- public getNamePartForFullName(): string;
- public fullName(scopeSymbol?: PullSymbol): string;
- public getScopedName(scopeSymbol?: PullSymbol, skipTypeParametersInName?: boolean, useConstraintInName?: boolean, skipInternalAliasName?: boolean): string;
- public getScopedNameEx(scopeSymbol?: PullSymbol, skipTypeParametersInName?: boolean, useConstraintInName?: boolean, getPrettyTypeName?: boolean, getTypeParamMarkerInfo?: boolean, skipInternalAliasName?: boolean): MemberName;
- public getTypeName(scopeSymbol?: PullSymbol, getPrettyTypeName?: boolean): string;
- public getTypeNameEx(scopeSymbol?: PullSymbol, getPrettyTypeName?: boolean): MemberName;
- private getTypeNameForFunctionSignature(prefix, scopeSymbol?, getPrettyTypeName?);
- public getNameAndTypeName(scopeSymbol?: PullSymbol): string;
- public getNameAndTypeNameEx(scopeSymbol?: PullSymbol): MemberName;
- static getTypeParameterString(typars: PullTypeSymbol[], scopeSymbol?: PullSymbol, useContraintInName?: boolean): string;
- static getTypeParameterStringEx(typeParameters: PullTypeSymbol[], scopeSymbol?: PullSymbol, getTypeParamMarkerInfo?: boolean, useContraintInName?: boolean): MemberNameArray;
- static getIsExternallyVisible(symbol: PullSymbol, fromIsExternallyVisibleSymbol: PullSymbol, inIsExternallyVisibleSymbols: PullSymbol[]): boolean;
- public isExternallyVisible(inIsExternallyVisibleSymbols?: PullSymbol[]): boolean;
- private getDocCommentsOfDecl(decl);
- private getDocCommentArray(symbol);
- private static getDefaultConstructorSymbolForDocComments(classSymbol);
- private getDocCommentText(comments);
- private getDocCommentTextValue(comment);
- public docComments(useConstructorAsClass?: boolean): string;
- private getParameterDocCommentText(param, fncDocComments);
- private cleanJSDocComment(content, spacesToRemove?);
- private consumeLeadingSpace(line, startIndex, maxSpacesToRemove?);
- private isSpaceChar(line, index);
- private cleanDocCommentLine(line, jsDocStyleComment, jsDocLineSpaceToRemove?);
- }
- interface InstantiableSymbol {
- getIsSpecialized(): boolean;
- getAllowedToReferenceTypeParameters(): PullTypeParameterSymbol[];
- getTypeParameterArgumentMap(): TypeArgumentMap;
- }
- class PullSignatureSymbol extends PullSymbol implements InstantiableSymbol {
- private _isDefinition;
- private _memberTypeParameterNameCache;
- private _stringConstantOverload;
- public parameters: PullSymbol[];
- public _typeParameters: PullTypeParameterSymbol[];
- public returnType: PullTypeSymbol;
- public functionType: PullTypeSymbol;
- public hasOptionalParam: boolean;
- public nonOptionalParamCount: number;
- public hasVarArgs: boolean;
- private _allowedToReferenceTypeParameters;
- private _instantiationCache;
- public hasBeenChecked: boolean;
- public inWrapCheck: boolean;
- public inWrapInfiniteExpandingReferenceCheck: boolean;
- private _wrapsTypeParameterCache;
- constructor(kind: PullElementKind, _isDefinition?: boolean);
- public isDefinition(): boolean;
- public isGeneric(): boolean;
- public addParameter(parameter: PullSymbol, isOptional?: boolean): void;
- public addTypeParameter(typeParameter: PullTypeParameterSymbol): void;
- public addTypeParametersFromReturnType(): void;
- public getTypeParameters(): PullTypeParameterSymbol[];
- public findTypeParameter(name: string): PullTypeParameterSymbol;
- public getTypeParameterArgumentMap(): TypeArgumentMap;
- public getAllowedToReferenceTypeParameters(): PullTypeParameterSymbol[];
- public addSpecialization(specializedVersionOfThisSignature: PullSignatureSymbol, typeArgumentMap: TypeArgumentMap): void;
- public getSpecialization(typeArgumentMap: TypeArgumentMap): PullSignatureSymbol;
- public isStringConstantOverloadSignature(): boolean;
- public getParameterTypeAtIndex(iParam: number): PullTypeSymbol;
- static getSignatureTypeMemberName(candidateSignature: PullSignatureSymbol, signatures: PullSignatureSymbol[], scopeSymbol: PullSymbol): MemberNameArray;
- static getSignaturesTypeNameEx(signatures: PullSignatureSymbol[], prefix: string, shortform: boolean, brackets: boolean, scopeSymbol?: PullSymbol, getPrettyTypeName?: boolean, candidateSignature?: PullSignatureSymbol): MemberName[];
- public toString(scopeSymbol?: PullSymbol, useConstraintInName?: boolean): string;
- public getSignatureTypeNameEx(prefix: string, shortform: boolean, brackets: boolean, scopeSymbol?: PullSymbol, getParamMarkerInfo?: boolean, getTypeParamMarkerInfo?: boolean): MemberNameArray;
- public forAllParameterTypes(length: number, predicate: (parameterType: PullTypeSymbol, iterationIndex: number) => boolean): boolean;
- public forAllCorrespondingParameterTypesInThisAndOtherSignature(otherSignature: PullSignatureSymbol, predicate: (thisSignatureParameterType: PullTypeSymbol, otherSignatureParameterType: PullTypeSymbol, iterationIndex: number) => boolean): boolean;
- public wrapsSomeTypeParameter(typeParameterArgumentMap: TypeArgumentMap): boolean;
- public getWrappingTypeParameterID(typeParameterArgumentMap: TypeArgumentMap): number;
- public getWrappingTypeParameterIDWorker(typeParameterArgumentMap: TypeArgumentMap): number;
- public _wrapsSomeTypeParameterIntoInfinitelyExpandingTypeReference(enclosingType: PullTypeSymbol, knownWrapMap: IBitMatrix): boolean;
- public _wrapsSomeTypeParameterIntoInfinitelyExpandingTypeReferenceWorker(enclosingType: PullTypeSymbol, knownWrapMap: IBitMatrix): boolean;
- }
- class PullTypeSymbol extends PullSymbol implements InstantiableSymbol {
- private _members;
- private _enclosedMemberTypes;
- private _enclosedMemberContainers;
- private _typeParameters;
- private _allowedToReferenceTypeParameters;
- private _specializedVersionsOfThisType;
- private _arrayVersionOfThisType;
- private _implementedTypes;
- private _extendedTypes;
- private _typesThatExplicitlyImplementThisType;
- private _typesThatExtendThisType;
- private _callSignatures;
- private _allCallSignatures;
- private _constructSignatures;
- private _allConstructSignatures;
- private _indexSignatures;
- private _allIndexSignatures;
- private _allIndexSignaturesOfAugmentedType;
- private _memberNameCache;
- private _enclosedTypeNameCache;
- private _enclosedContainerCache;
- private _typeParameterNameCache;
- private _containedNonMemberNameCache;
- private _containedNonMemberTypeNameCache;
- private _containedNonMemberContainerCache;
- private _simpleInstantiationCache;
- private _complexInstantiationCache;
- private _hasGenericSignature;
- private _hasGenericMember;
- private _hasBaseTypeConflict;
- private _knownBaseTypeCount;
- private _associatedContainerTypeSymbol;
- private _constructorMethod;
- private _hasDefaultConstructor;
- private _functionSymbol;
- private _inMemberTypeNameEx;
- public inSymbolPrivacyCheck: boolean;
- public inWrapCheck: boolean;
- public inWrapInfiniteExpandingReferenceCheck: boolean;
- public typeReference: PullTypeReferenceSymbol;
- private _widenedType;
- private _wrapsTypeParameterCache;
- constructor(name: string, kind: PullElementKind);
- private _isArrayNamedTypeReference;
- public isArrayNamedTypeReference(): boolean;
- private computeIsArrayNamedTypeReference();
- public isType(): boolean;
- public isClass(): boolean;
- public isFunction(): boolean;
- public isConstructor(): boolean;
- public isTypeParameter(): boolean;
- public isTypeVariable(): boolean;
- public isError(): boolean;
- public isEnum(): boolean;
- public getTypeParameterArgumentMap(): TypeArgumentMap;
- public isObject(): boolean;
- public isFunctionType(): boolean;
- public getKnownBaseTypeCount(): number;
- public resetKnownBaseTypeCount(): void;
- public incrementKnownBaseCount(): void;
- public setHasBaseTypeConflict(): void;
- public hasBaseTypeConflict(): boolean;
- public hasMembers(): boolean;
- public setHasGenericSignature(): void;
- public getHasGenericSignature(): boolean;
- public setHasGenericMember(): void;
- public getHasGenericMember(): boolean;
- public setAssociatedContainerType(type: PullTypeSymbol): void;
- public getAssociatedContainerType(): PullTypeSymbol;
- public getArrayType(): PullTypeSymbol;
- public getElementType(): PullTypeSymbol;
- public setArrayType(arrayType: PullTypeSymbol): void;
- public getFunctionSymbol(): PullSymbol;
- public setFunctionSymbol(symbol: PullSymbol): void;
- public findContainedNonMember(name: string): PullSymbol;
- public findContainedNonMemberType(typeName: string, kind?: PullElementKind): PullTypeSymbol;
- public findContainedNonMemberContainer(containerName: string, kind?: PullElementKind): PullTypeSymbol;
- public addMember(memberSymbol: PullSymbol): void;
- public addEnclosedMemberType(enclosedType: PullTypeSymbol): void;
- public addEnclosedMemberContainer(enclosedContainer: PullTypeSymbol): void;
- public addEnclosedNonMember(enclosedNonMember: PullSymbol): void;
- public addEnclosedNonMemberType(enclosedNonMemberType: PullTypeSymbol): void;
- public addEnclosedNonMemberContainer(enclosedNonMemberContainer: PullTypeSymbol): void;
- public addTypeParameter(typeParameter: PullTypeParameterSymbol): void;
- public getMembers(): PullSymbol[];
- public setHasDefaultConstructor(hasOne?: boolean): void;
- public getHasDefaultConstructor(): boolean;
- public getConstructorMethod(): PullSymbol;
- public setConstructorMethod(constructorMethod: PullSymbol): void;
- public getTypeParameters(): PullTypeParameterSymbol[];
- public getAllowedToReferenceTypeParameters(): PullTypeParameterSymbol[];
- public isGeneric(): boolean;
- private canUseSimpleInstantiationCache(typeArgumentMap);
- private getSimpleInstantiationCacheId(typeArgumentMap);
- public addSpecialization(specializedVersionOfThisType: PullTypeSymbol, typeArgumentMap: TypeArgumentMap): void;
- public getSpecialization(typeArgumentMap: TypeArgumentMap): PullTypeSymbol;
- public getKnownSpecializations(): PullTypeSymbol[];
- public getTypeArguments(): PullTypeSymbol[];
- public getTypeArgumentsOrTypeParameters(): PullTypeSymbol[];
- private addCallOrConstructSignaturePrerequisiteBase(signature);
- private addCallSignaturePrerequisite(callSignature);
- public appendCallSignature(callSignature: PullSignatureSymbol): void;
- public insertCallSignatureAtIndex(callSignature: PullSignatureSymbol, index: number): void;
- private addConstructSignaturePrerequisite(constructSignature);
- public appendConstructSignature(constructSignature: PullSignatureSymbol): void;
- public insertConstructSignatureAtIndex(constructSignature: PullSignatureSymbol, index: number): void;
- public addIndexSignature(indexSignature: PullSignatureSymbol): void;
- public hasOwnCallSignatures(): boolean;
- public getOwnCallSignatures(): PullSignatureSymbol[];
- public getCallSignatures(): PullSignatureSymbol[];
- public hasOwnConstructSignatures(): boolean;
- public getOwnDeclaredConstructSignatures(): PullSignatureSymbol[];
- public getConstructSignatures(): PullSignatureSymbol[];
- public hasOwnIndexSignatures(): boolean;
- public getOwnIndexSignatures(): PullSignatureSymbol[];
- public getIndexSignatures(): PullSignatureSymbol[];
- public getIndexSignaturesOfAugmentedType(resolver: PullTypeResolver, globalFunctionInterface: PullTypeSymbol, globalObjectInterface: PullTypeSymbol): PullSignatureSymbol[];
- private getBaseClassConstructSignatures(baseType);
- private getDefaultClassConstructSignature();
- public addImplementedType(implementedType: PullTypeSymbol): void;
- public getImplementedTypes(): PullTypeSymbol[];
- public addExtendedType(extendedType: PullTypeSymbol): void;
- public getExtendedTypes(): PullTypeSymbol[];
- public addTypeThatExtendsThisType(type: PullTypeSymbol): void;
- public getTypesThatExtendThisType(): PullTypeSymbol[];
- public addTypeThatExplicitlyImplementsThisType(type: PullTypeSymbol): void;
- public getTypesThatExplicitlyImplementThisType(): PullTypeSymbol[];
- public hasBase(potentialBase: PullTypeSymbol, visited?: PullSymbol[]): boolean;
- public isValidBaseKind(baseType: PullTypeSymbol, isExtendedType: boolean): boolean;
- public findMember(name: string, lookInParent: boolean): PullSymbol;
- public findNestedType(name: string, kind?: PullElementKind): PullTypeSymbol;
- public findNestedContainer(name: string, kind?: PullElementKind): PullTypeSymbol;
- public getAllMembers(searchDeclKind: PullElementKind, memberVisiblity: GetAllMembersVisiblity): PullSymbol[];
- public findTypeParameter(name: string): PullTypeParameterSymbol;
- public setResolved(): void;
- public getNamePartForFullName(): string;
- public getScopedName(scopeSymbol?: PullSymbol, skipTypeParametersInName?: boolean, useConstraintInName?: boolean, skipInternalAliasName?: boolean): string;
- public isNamedTypeSymbol(): boolean;
- public toString(scopeSymbol?: PullSymbol, useConstraintInName?: boolean): string;
- public getScopedNameEx(scopeSymbol?: PullSymbol, skipTypeParametersInName?: boolean, useConstraintInName?: boolean, getPrettyTypeName?: boolean, getTypeParamMarkerInfo?: boolean, skipInternalAliasName?: boolean, shouldAllowArrayType?: boolean): MemberName;
- public hasOnlyOverloadCallSignatures(): boolean;
- public getTypeOfSymbol(): PullSymbol;
- private getMemberTypeNameEx(topLevel, scopeSymbol?, getPrettyTypeName?);
- public getGenerativeTypeClassification(enclosingType: PullTypeSymbol): GenerativeTypeClassification;
- public wrapsSomeTypeParameter(typeParameterArgumentMap: CandidateInferenceInfo[]): boolean;
- public wrapsSomeTypeParameter(typeParameterArgumentMap: TypeArgumentMap, skipTypeArgumentCheck?: boolean): boolean;
- public getWrappingTypeParameterID(typeParameterArgumentMap: TypeArgumentMap, skipTypeArgumentCheck?: boolean): number;
- private getWrappingTypeParameterIDFromSignatures(signatures, typeParameterArgumentMap);
- private getWrappingTypeParameterIDWorker(typeParameterArgumentMap, skipTypeArgumentCheck);
- public wrapsSomeTypeParameterIntoInfinitelyExpandingTypeReference(enclosingType: PullTypeSymbol): boolean;
- public _wrapsSomeTypeParameterIntoInfinitelyExpandingTypeReferenceRecurse(enclosingType: PullTypeSymbol, knownWrapMap: IBitMatrix): boolean;
- private _wrapsSomeTypeParameterIntoInfinitelyExpandingTypeReferenceWorker(enclosingType, knownWrapMap);
- private _wrapsSomeTypeParameterIntoInfinitelyExpandingTypeReferenceStructure(enclosingType, knownWrapMap);
- public widenedType(resolver: PullTypeResolver, ast: AST, context: PullTypeResolutionContext): PullTypeSymbol;
- }
- class PullPrimitiveTypeSymbol extends PullTypeSymbol {
- constructor(name: string);
- public isAny(): boolean;
- public isNull(): boolean;
- public isUndefined(): boolean;
- public isStringConstant(): boolean;
- public setUnresolved(): void;
- public getDisplayName(): string;
- }
- class PullStringConstantTypeSymbol extends PullPrimitiveTypeSymbol {
- constructor(name: string);
- public isStringConstant(): boolean;
- }
- class PullErrorTypeSymbol extends PullPrimitiveTypeSymbol {
- public _anyType: PullTypeSymbol;
- constructor(_anyType: PullTypeSymbol, name: string);
- public isError(): boolean;
- public _getResolver(): PullTypeResolver;
- public getName(scopeSymbol?: PullSymbol, useConstraintInName?: boolean): string;
- public getDisplayName(scopeSymbol?: PullSymbol, useConstraintInName?: boolean, skipInternalAliasName?: boolean): string;
- public toString(scopeSymbol?: PullSymbol, useConstraintInName?: boolean): string;
- }
- class PullContainerSymbol extends PullTypeSymbol {
- public instanceSymbol: PullSymbol;
- private assignedValue;
- private assignedType;
- private assignedContainer;
- constructor(name: string, kind: PullElementKind);
- public isContainer(): boolean;
- public setInstanceSymbol(symbol: PullSymbol): void;
- public getInstanceSymbol(): PullSymbol;
- public setExportAssignedValueSymbol(symbol: PullSymbol): void;
- public getExportAssignedValueSymbol(): PullSymbol;
- public setExportAssignedTypeSymbol(type: PullTypeSymbol): void;
- public getExportAssignedTypeSymbol(): PullTypeSymbol;
- public setExportAssignedContainerSymbol(container: PullContainerSymbol): void;
- public getExportAssignedContainerSymbol(): PullContainerSymbol;
- public hasExportAssignment(): boolean;
- static usedAsSymbol(containerSymbol: PullSymbol, symbol: PullSymbol): boolean;
- public getInstanceType(): PullTypeSymbol;
- }
- class PullTypeAliasSymbol extends PullTypeSymbol {
- private _assignedValue;
- private _assignedType;
- private _assignedContainer;
- private _isUsedAsValue;
- private _typeUsedExternally;
- private _isUsedInExportAlias;
- private retrievingExportAssignment;
- private linkedAliasSymbols;
- constructor(name: string);
- public isUsedInExportedAlias(): boolean;
- public typeUsedExternally(): boolean;
- public isUsedAsValue(): boolean;
- public setTypeUsedExternally(): void;
- public setIsUsedInExportedAlias(): void;
- public addLinkedAliasSymbol(contingentValueSymbol: PullTypeAliasSymbol): void;
- public setIsUsedAsValue(): void;
- public assignedValue(): PullSymbol;
- public assignedType(): PullTypeSymbol;
- public assignedContainer(): PullContainerSymbol;
- public isAlias(): boolean;
- public isContainer(): boolean;
- public setAssignedValueSymbol(symbol: PullSymbol): void;
- public getExportAssignedValueSymbol(): PullSymbol;
- public setAssignedTypeSymbol(type: PullTypeSymbol): void;
- public getExportAssignedTypeSymbol(): PullTypeSymbol;
- public setAssignedContainerSymbol(container: PullContainerSymbol): void;
- public getExportAssignedContainerSymbol(): PullContainerSymbol;
- public getMembers(): PullSymbol[];
- public getCallSignatures(): PullSignatureSymbol[];
- public getConstructSignatures(): PullSignatureSymbol[];
- public getIndexSignatures(): PullSignatureSymbol[];
- public findMember(name: string): PullSymbol;
- public findNestedType(name: string): PullTypeSymbol;
- public findNestedContainer(name: string): PullTypeSymbol;
- public getAllMembers(searchDeclKind: PullElementKind, memberVisibility: GetAllMembersVisiblity): PullSymbol[];
- }
- class PullTypeParameterSymbol extends PullTypeSymbol {
- private _constraint;
- constructor(name: string);
- public isTypeParameter(): boolean;
- public setConstraint(constraintType: PullTypeSymbol): void;
- public getConstraint(): PullTypeSymbol;
- public getBaseConstraint(semanticInfoChain: SemanticInfoChain): PullTypeSymbol;
- private getConstraintRecursively(visitedTypeParameters);
- public getDefaultConstraint(semanticInfoChain: SemanticInfoChain): PullTypeSymbol;
- public getCallSignatures(): PullSignatureSymbol[];
- public getConstructSignatures(): PullSignatureSymbol[];
- public getIndexSignatures(): PullSignatureSymbol[];
- public isGeneric(): boolean;
- public fullName(scopeSymbol?: PullSymbol): string;
- public getName(scopeSymbol?: PullSymbol, useConstraintInName?: boolean): string;
- public getDisplayName(scopeSymbol?: PullSymbol, useConstraintInName?: boolean, skipInternalAliasName?: boolean): string;
- public isExternallyVisible(inIsExternallyVisibleSymbols?: PullSymbol[]): boolean;
- }
- class PullAccessorSymbol extends PullSymbol {
- private _getterSymbol;
- private _setterSymbol;
- constructor(name: string);
- public isAccessor(): boolean;
- public setSetter(setter: PullSymbol): void;
- public getSetter(): PullSymbol;
- public setGetter(getter: PullSymbol): void;
- public getGetter(): PullSymbol;
- }
- function getIDForTypeSubstitutions(instantiatingType: PullTypeSymbol, typeArgumentMap: TypeArgumentMap): string;
- function getIDForTypeSubstitutions(instantiatingSignature: PullSignatureSymbol, typeArgumentMap: TypeArgumentMap): string;
- enum GetAllMembersVisiblity {
- all = 0,
- internallyVisible = 1,
- externallyVisible = 2,
- }
-}
-declare module TypeScript {
- class EnclosingTypeWalkerState {
- public _hasSetEnclosingType: boolean;
- public _currentSymbols: PullSymbol[];
- static getDefaultEnclosingTypeWalkerState(): EnclosingTypeWalkerState;
- static getNonGenericEnclosingTypeWalkerState(): EnclosingTypeWalkerState;
- static getGenericEnclosingTypeWalkerState(genericEnclosingType: PullTypeSymbol): EnclosingTypeWalkerState;
- }
- class PullTypeEnclosingTypeWalker {
- private static _defaultEnclosingTypeWalkerState;
- private static _nonGenericEnclosingTypeWalkerState;
- private enclosingTypeWalkerState;
- constructor();
- private setDefaultTypeWalkerState();
- private setNonGenericEnclosingTypeWalkerState();
- private canSymbolOrDeclBeUsedAsEnclosingTypeHelper(name, kind);
- private canDeclBeUsedAsEnclosingType(decl);
- private canSymbolBeUsedAsEnclosingType(symbol);
- public getEnclosingType(): PullTypeSymbol;
- public _canWalkStructure(): boolean;
- public _getCurrentSymbol(): PullSymbol;
- public getGenerativeClassification(): GenerativeTypeClassification;
- private _pushSymbol(symbol);
- private _popSymbol();
- private setSymbolAsEnclosingType(type);
- private _setEnclosingTypeOfParentDecl(decl, setSignature);
- public setEnclosingTypeForSymbol(symbol: PullSymbol): EnclosingTypeWalkerState;
- public startWalkingType(symbol: PullTypeSymbol): EnclosingTypeWalkerState;
- public endWalkingType(stateWhenStartedWalkingTypes: EnclosingTypeWalkerState): void;
- public walkMemberType(memberName: string, resolver: PullTypeResolver): void;
- public postWalkMemberType(): void;
- public walkSignature(kind: PullElementKind, index: number): void;
- public postWalkSignature(): void;
- public walkTypeArgument(index: number): void;
- public postWalkTypeArgument(): void;
- public walkTypeParameterConstraint(index: number): void;
- public postWalkTypeParameterConstraint(): void;
- public walkReturnType(): void;
- public postWalkReturnType(): void;
- public walkParameterType(iParam: number): void;
- public postWalkParameterType(): void;
- public getBothKindOfIndexSignatures(resolver: PullTypeResolver, context: PullTypeResolutionContext, includeAugmentedType: boolean): IndexSignatureInfo;
- public walkIndexSignatureReturnType(indexSigInfo: IndexSignatureInfo, useStringIndexSignature: boolean, onlySignature?: boolean): void;
- public postWalkIndexSignatureReturnType(onlySignature?: boolean): void;
- public resetEnclosingTypeWalkerState(): EnclosingTypeWalkerState;
- public setEnclosingTypeWalkerState(enclosingTypeWalkerState: EnclosingTypeWalkerState): void;
- }
-}
-declare module TypeScript {
- class CandidateInferenceInfo {
- public typeParameter: PullTypeParameterSymbol;
- public _inferredTypeAfterFixing: PullTypeSymbol;
- public inferenceCandidates: PullTypeSymbol[];
- public addCandidate(candidate: PullTypeSymbol): void;
- public isFixed(): boolean;
- public fixTypeParameter(resolver: PullTypeResolver, context: PullTypeResolutionContext): void;
- }
- class TypeArgumentInferenceContext {
- public resolver: PullTypeResolver;
- public context: PullTypeResolutionContext;
- public signatureBeingInferred: PullSignatureSymbol;
- public inferenceCache: IBitMatrix;
- public candidateCache: CandidateInferenceInfo[];
- constructor(resolver: PullTypeResolver, context: PullTypeResolutionContext, signatureBeingInferred: PullSignatureSymbol);
- public alreadyRelatingTypes(objectType: PullTypeSymbol, parameterType: PullTypeSymbol): boolean;
- public resetRelationshipCache(): void;
- public addInferenceRoot(param: PullTypeParameterSymbol): void;
- public getInferenceInfo(param: PullTypeParameterSymbol): CandidateInferenceInfo;
- public addCandidateForInference(param: PullTypeParameterSymbol, candidate: PullTypeSymbol): void;
- public inferTypeArguments(): PullTypeSymbol[];
- public fixTypeParameter(typeParameter: PullTypeParameterSymbol): void;
- public _finalizeInferredTypeArguments(): PullTypeSymbol[];
- public isInvocationInferenceContext(): boolean;
- }
- class InvocationTypeArgumentInferenceContext extends TypeArgumentInferenceContext {
- public argumentASTs: ISeparatedSyntaxList2;
- constructor(resolver: PullTypeResolver, context: PullTypeResolutionContext, signatureBeingInferred: PullSignatureSymbol, argumentASTs: ISeparatedSyntaxList2);
- public isInvocationInferenceContext(): boolean;
- public inferTypeArguments(): PullTypeSymbol[];
- }
- class ContextualSignatureInstantiationTypeArgumentInferenceContext extends TypeArgumentInferenceContext {
- private contextualSignature;
- private shouldFixContextualSignatureParameterTypes;
- constructor(resolver: PullTypeResolver, context: PullTypeResolutionContext, signatureBeingInferred: PullSignatureSymbol, contextualSignature: PullSignatureSymbol, shouldFixContextualSignatureParameterTypes: boolean);
- public isInvocationInferenceContext(): boolean;
- public inferTypeArguments(): PullTypeSymbol[];
- }
- class PullContextualTypeContext {
- public contextualType: PullTypeSymbol;
- public provisional: boolean;
- public isInferentiallyTyping: boolean;
- public typeArgumentInferenceContext: TypeArgumentInferenceContext;
- public provisionallyTypedSymbols: PullSymbol[];
- public hasProvisionalErrors: boolean;
- private astSymbolMap;
- constructor(contextualType: PullTypeSymbol, provisional: boolean, isInferentiallyTyping: boolean, typeArgumentInferenceContext: TypeArgumentInferenceContext);
- public recordProvisionallyTypedSymbol(symbol: PullSymbol): void;
- public invalidateProvisionallyTypedSymbols(): void;
- public setSymbolForAST(ast: AST, symbol: PullSymbol): void;
- public getSymbolForAST(ast: AST): PullSymbol;
- }
- class PullTypeResolutionContext {
- private resolver;
- public inTypeCheck: boolean;
- public fileName: string;
- private contextStack;
- private typeCheckedNodes;
- private enclosingTypeWalker1;
- private enclosingTypeWalker2;
- constructor(resolver: PullTypeResolver, inTypeCheck?: boolean, fileName?: string);
- public setTypeChecked(ast: AST): void;
- public canTypeCheckAST(ast: AST): boolean;
- private _pushAnyContextualType(type, provisional, isInferentiallyTyping, argContext);
- public pushNewContextualType(type: PullTypeSymbol): void;
- public propagateContextualType(type: PullTypeSymbol): void;
- public pushInferentialType(type: PullTypeSymbol, typeArgumentInferenceContext: TypeArgumentInferenceContext): void;
- public pushProvisionalType(type: PullTypeSymbol): void;
- public popAnyContextualType(): PullContextualTypeContext;
- public hasProvisionalErrors(): boolean;
- public getContextualType(): PullTypeSymbol;
- public fixAllTypeParametersReferencedByType(type: PullTypeSymbol, resolver: PullTypeResolver, argContext?: TypeArgumentInferenceContext): PullTypeSymbol;
- private getCurrentTypeArgumentInferenceContext();
- public isInferentiallyTyping(): boolean;
- public inProvisionalResolution(): boolean;
- private inBaseTypeResolution;
- public isInBaseTypeResolution(): boolean;
- public startBaseTypeResolution(): boolean;
- public doneBaseTypeResolution(wasInBaseTypeResolution: boolean): void;
- public setTypeInContext(symbol: PullSymbol, type: PullTypeSymbol): void;
- public postDiagnostic(diagnostic: Diagnostic): void;
- public typeCheck(): boolean;
- public setSymbolForAST(ast: AST, symbol: PullSymbol): void;
- public getSymbolForAST(ast: AST): PullSymbol;
- public startWalkingTypes(symbol1: PullTypeSymbol, symbol2: PullTypeSymbol): {
- stateWhenStartedWalkingTypes1: EnclosingTypeWalkerState;
- stateWhenStartedWalkingTypes2: EnclosingTypeWalkerState;
- };
- public endWalkingTypes(statesWhenStartedWalkingTypes: {
- stateWhenStartedWalkingTypes1: EnclosingTypeWalkerState;
- stateWhenStartedWalkingTypes2: EnclosingTypeWalkerState;
- }): void;
- public setEnclosingTypeForSymbols(symbol1: PullSymbol, symbol2: PullSymbol): {
- enclosingTypeWalkerState1: EnclosingTypeWalkerState;
- enclosingTypeWalkerState2: EnclosingTypeWalkerState;
- };
- public walkMemberTypes(memberName: string): void;
- public postWalkMemberTypes(): void;
- public walkSignatures(kind: PullElementKind, index: number, index2?: number): void;
- public postWalkSignatures(): void;
- public walkTypeParameterConstraints(index: number): void;
- public postWalkTypeParameterConstraints(): void;
- public walkTypeArgument(index: number): void;
- public postWalkTypeArgument(): void;
- public walkReturnTypes(): void;
- public postWalkReturnTypes(): void;
- public walkParameterTypes(iParam: number): void;
- public postWalkParameterTypes(): void;
- public getBothKindOfIndexSignatures(includeAugmentedType1: boolean, includeAugmentedType2: boolean): {
- indexSigs1: IndexSignatureInfo;
- indexSigs2: IndexSignatureInfo;
- };
- public walkIndexSignatureReturnTypes(indexSigs: {
- indexSigs1: IndexSignatureInfo;
- indexSigs2: IndexSignatureInfo;
- }, useStringIndexSignature1: boolean, useStringIndexSignature2: boolean, onlySignature?: boolean): void;
- public postWalkIndexSignatureReturnTypes(onlySignature?: boolean): void;
- public swapEnclosingTypeWalkers(): void;
- public oneOfClassificationsIsInfinitelyExpanding(): boolean;
- public resetEnclosingTypeWalkerStates(): {
- enclosingTypeWalkerState1: EnclosingTypeWalkerState;
- enclosingTypeWalkerState2: EnclosingTypeWalkerState;
- };
- public setEnclosingTypeWalkerStates(enclosingTypeWalkerStates: {
- enclosingTypeWalkerState1: EnclosingTypeWalkerState;
- enclosingTypeWalkerState2: EnclosingTypeWalkerState;
- }): void;
- }
-}
-declare module TypeScript {
- interface IPullTypeCollection {
- getLength(): number;
- getTypeAtIndex(index: number): PullTypeSymbol;
- }
- class PullAdditionalCallResolutionData {
- public targetSymbol: PullSymbol;
- public resolvedSignatures: PullSignatureSymbol[];
- public candidateSignature: PullSignatureSymbol;
- public actualParametersContextTypeSymbols: PullTypeSymbol[];
- public diagnosticsFromOverloadResolution: Diagnostic[];
- }
- class PullAdditionalObjectLiteralResolutionData {
- public membersContextTypeSymbols: PullTypeSymbol[];
- }
- interface IndexSignatureInfo {
- numericSignature: PullSignatureSymbol;
- stringSignature: PullSignatureSymbol;
- }
- class PullTypeResolver {
- private compilationSettings;
- public semanticInfoChain: SemanticInfoChain;
- private _cachedArrayInterfaceType;
- private _cachedNumberInterfaceType;
- private _cachedStringInterfaceType;
- private _cachedBooleanInterfaceType;
- private _cachedObjectInterfaceType;
- private _cachedFunctionInterfaceType;
- private _cachedIArgumentsInterfaceType;
- private _cachedRegExpInterfaceType;
- private _cachedAnyTypeArgs;
- private typeCheckCallBacks;
- private postTypeCheckWorkitems;
- private _cachedFunctionArgumentsSymbol;
- private assignableCache;
- private subtypeCache;
- private identicalCache;
- private inResolvingOtherDeclsWalker;
- constructor(compilationSettings: ImmutableCompilationSettings, semanticInfoChain: SemanticInfoChain);
- private cachedArrayInterfaceType();
- public getArrayNamedType(): PullTypeSymbol;
- private cachedNumberInterfaceType();
- private cachedStringInterfaceType();
- private cachedBooleanInterfaceType();
- private cachedObjectInterfaceType();
- private cachedFunctionInterfaceType();
- private cachedIArgumentsInterfaceType();
- private cachedRegExpInterfaceType();
- private cachedFunctionArgumentsSymbol();
- private getApparentType(type);
- private setTypeChecked(ast, context);
- private canTypeCheckAST(ast, context);
- private setSymbolForAST(ast, symbol, context);
- private getSymbolForAST(ast, context);
- public getASTForDecl(decl: PullDecl): AST;
- public getNewErrorTypeSymbol(name?: string): PullErrorTypeSymbol;
- public getEnclosingDecl(decl: PullDecl): PullDecl;
- private getExportedMemberSymbol(symbol, parent);
- public _getNamedPropertySymbolOfAugmentedType(symbolName: string, parent: PullTypeSymbol): PullSymbol;
- private getNamedPropertySymbol(symbolName, declSearchKind, parent);
- private getSymbolFromDeclPath(symbolName, declPath, declSearchKind);
- private getVisibleDeclsFromDeclPath(declPath, declSearchKind);
- private addFilteredDecls(decls, declSearchKind, result);
- public getVisibleDecls(enclosingDecl: PullDecl): PullDecl[];
- public getVisibleContextSymbols(enclosingDecl: PullDecl, context: PullTypeResolutionContext): PullSymbol[];
- public getVisibleMembersFromExpression(expression: AST, enclosingDecl: PullDecl, context: PullTypeResolutionContext): PullSymbol[];
- private isAnyOrEquivalent(type);
- private resolveExternalModuleReference(idText, currentFileName);
- public resolveDeclaredSymbol(symbol: TSymbol, context?: PullTypeResolutionContext): TSymbol;
- private resolveDeclaredSymbolWorker(symbol, context);
- private resolveOtherDecl(otherDecl, context);
- private resolveOtherDeclarations(astName, context);
- private resolveSourceUnit(sourceUnit, context);
- private typeCheckSourceUnit(sourceUnit, context);
- private verifyUniquenessOfImportNamesInSourceUnit(sourceUnit);
- private resolveEnumDeclaration(ast, context);
- private typeCheckEnumDeclaration(ast, context);
- private postTypeCheckEnumDeclaration(ast, context);
- private checkInitializersInEnumDeclarations(decl, context);
- private resolveModuleDeclaration(ast, context);
- private ensureAllSymbolsAreBound(containerSymbol);
- private resolveModuleSymbol(containerSymbol, context, moduleDeclAST, moduleDeclNameAST, sourceUnitAST);
- private resolveFirstExportAssignmentStatement(moduleElements, context);
- private resolveSingleModuleDeclaration(ast, astName, context);
- private typeCheckModuleDeclaration(ast, context);
- private typeCheckSingleModuleDeclaration(ast, astName, context);
- private verifyUniquenessOfImportNamesInModule(decl);
- private checkUniquenessOfImportNames(decls, doesNameExistOutside?);
- private scanVariableDeclarationGroups(enclosingDecl, firstDeclHandler, subsequentDeclHandler?);
- private postTypeCheckModuleDeclaration(ast, context);
- private isTypeRefWithoutTypeArgs(term);
- public createInstantiatedType(type: PullTypeSymbol, typeArguments: PullTypeSymbol[]): PullTypeSymbol;
- private resolveReferenceTypeDeclaration(classOrInterface, name, heritageClauses, context);
- private resolveClassDeclaration(classDeclAST, context);
- private typeCheckTypeParametersOfTypeDeclaration(classOrInterface, context);
- private typeCheckClassDeclaration(classDeclAST, context);
- private postTypeCheckClassDeclaration(classDeclAST, context);
- private resolveTypeSymbolSignatures(typeSymbol, context);
- private resolveInterfaceDeclaration(interfaceDeclAST, context);
- private typeCheckInterfaceDeclaration(interfaceDeclAST, context);
- private checkInterfaceDeclForIdenticalTypeParameters(interfaceDeclAST, context);
- private checkTypeForDuplicateIndexSignatures(enclosingTypeSymbol);
- private filterSymbol(symbol, kind, enclosingDecl, context);
- private getMemberSymbolOfKind(symbolName, kind, pullTypeSymbol, enclosingDecl, context);
- private resolveIdentifierOfInternalModuleReference(importDecl, identifier, moduleSymbol, enclosingDecl, context);
- private resolveModuleReference(importDecl, moduleNameExpr, enclosingDecl, context, declPath);
- private resolveInternalModuleReference(importStatementAST, context);
- private resolveImportDeclaration(importStatementAST, context);
- private typeCheckImportDeclaration(importStatementAST, context);
- private postTypeCheckImportDeclaration(importStatementAST, context);
- private resolveExportAssignmentStatement(exportAssignmentAST, context);
- private resolveAnyFunctionTypeSignature(funcDeclAST, typeParameters, parameterList, returnTypeAnnotation, context);
- private resolveFunctionTypeSignatureParameter(argDeclAST, signature, enclosingDecl, context);
- private resolveFunctionExpressionParameter(argDeclAST, id, typeExpr, equalsValueClause, contextParam, enclosingDecl, context);
- private checkNameForCompilerGeneratedDeclarationCollision(astWithName, isDeclaration, name, context);
- private hasRestParameterCodeGen(someFunctionDecl);
- private checkArgumentsCollides(ast, context);
- private checkIndexOfRestArgumentInitializationCollides(ast, isDeclaration, context);
- private checkExternalModuleRequireExportsCollides(ast, name, context);
- private resolveObjectTypeTypeReference(objectType, context);
- private typeCheckObjectTypeTypeReference(objectType, context);
- private resolveTypeAnnotation(typeAnnotation, context);
- public resolveTypeReference(typeRef: AST, context: PullTypeResolutionContext): PullTypeSymbol;
- private getArrayType(elementType);
- private computeTypeReferenceSymbol(term, context);
- private genericTypeIsUsedWithoutRequiredTypeArguments(typeSymbol, term, context);
- private resolveMemberVariableDeclaration(varDecl, context);
- private resolvePropertySignature(varDecl, context);
- private resolveVariableDeclarator(varDecl, context);
- private resolveParameterList(list, context);
- private resolveParameter(parameter, context);
- private getEnumTypeSymbol(enumElement, context);
- private resolveEnumElement(enumElement, context);
- private typeCheckEnumElement(enumElement, context);
- private resolveEqualsValueClause(clause, isContextuallyTyped, context);
- private resolveVariableDeclaratorOrParameterOrEnumElement(varDeclOrParameter, modifiers, name, typeExpr, init, context);
- private resolveAndTypeCheckVariableDeclarationTypeExpr(varDeclOrParameter, name, typeExpr, context);
- private resolveAndTypeCheckVariableDeclaratorOrParameterInitExpr(varDeclOrParameter, name, typeExpr, init, context, typeExprSymbol);
- private typeCheckPropertySignature(varDecl, context);
- private typeCheckMemberVariableDeclaration(varDecl, context);
- private typeCheckVariableDeclarator(varDecl, context);
- private typeCheckParameter(parameter, context);
- private typeCheckVariableDeclaratorOrParameterOrEnumElement(varDeclOrParameter, modifiers, name, typeExpr, init, context);
- private isForInVariableDeclarator(ast);
- private checkSuperCaptureVariableCollides(superAST, isDeclaration, context);
- private checkThisCaptureVariableCollides(_thisAST, isDeclaration, context);
- private postTypeCheckVariableDeclaratorOrParameter(varDeclOrParameter, context);
- private resolveTypeParameterDeclaration(typeParameterAST, context);
- private resolveFirstTypeParameterDeclaration(typeParameterSymbol, context);
- private typeCheckTypeParameterDeclaration(typeParameterAST, context);
- private resolveConstraint(constraint, context);
- private resolveFunctionBodyReturnTypes(funcDeclAST, block, bodyExpression, signature, useContextualType, enclosingDecl, context);
- private typeCheckConstructorDeclaration(funcDeclAST, context);
- private constructorHasSuperCall(constructorDecl);
- private typeCheckFunctionExpression(funcDecl, isContextuallyTyped, context);
- private typeCheckCallSignature(funcDecl, context);
- private typeCheckConstructSignature(funcDecl, context);
- private typeCheckMethodSignature(funcDecl, context);
- private typeCheckMemberFunctionDeclaration(funcDecl, context);
- private containsSingleThrowStatement(block);
- private typeCheckAnyFunctionDeclaration(funcDeclAST, isStatic, name, typeParameters, parameters, returnTypeAnnotation, block, context);
- private checkThatNonVoidFunctionHasReturnExpressionOrThrowStatement(functionDecl, returnTypeAnnotation, returnTypeSymbol, block, context);
- private typeCheckIndexSignature(funcDeclAST, context);
- private postTypeCheckFunctionDeclaration(funcDeclAST, context);
- private resolveReturnTypeAnnotationOfFunctionDeclaration(funcDeclAST, returnTypeAnnotation, context);
- private resolveMemberFunctionDeclaration(funcDecl, context);
- private resolveCallSignature(funcDecl, context);
- private resolveConstructSignature(funcDecl, context);
- private resolveMethodSignature(funcDecl, context);
- private resolveAnyFunctionDeclaration(funcDecl, context);
- private resolveFunctionExpression(funcDecl, isContextuallyTyped, context);
- private resolveSimpleArrowFunctionExpression(funcDecl, isContextuallyTyped, context);
- private resolveParenthesizedArrowFunctionExpression(funcDecl, isContextuallyTyped, context);
- private getEnclosingClassDeclaration(ast);
- private resolveConstructorDeclaration(funcDeclAST, context);
- private resolveIndexMemberDeclaration(ast, context);
- private resolveIndexSignature(funcDeclAST, context);
- private resolveFunctionDeclaration(funcDeclAST, isStatic, name, typeParameters, parameterList, returnTypeAnnotation, block, context);
- private resolveGetterReturnTypeAnnotation(getterFunctionDeclarationAst, enclosingDecl, context);
- private resolveSetterArgumentTypeAnnotation(setterFunctionDeclarationAst, enclosingDecl, context);
- private resolveAccessorDeclaration(funcDeclAst, context);
- private typeCheckAccessorDeclaration(funcDeclAst, context);
- private resolveGetAccessorDeclaration(funcDeclAST, parameters, returnTypeAnnotation, block, setterAnnotatedType, context);
- private checkIfGetterAndSetterTypeMatch(funcDeclAST, context);
- private typeCheckGetAccessorDeclaration(funcDeclAST, context);
- static hasSetAccessorParameterTypeAnnotation(setAccessor: SetAccessor): boolean;
- private resolveSetAccessorDeclaration(funcDeclAST, parameterList, context);
- private typeCheckSetAccessorDeclaration(funcDeclAST, context);
- private resolveList(list, context);
- private resolveSeparatedList(list, context);
- private resolveVoidExpression(ast, context);
- private resolveLogicalOperation(ast, context);
- private typeCheckLogicalOperation(binex, context);
- private resolveLogicalNotExpression(ast, context);
- private resolveUnaryArithmeticOperation(ast, context);
- private resolvePostfixUnaryExpression(ast, context);
- private isAnyOrNumberOrEnum(type);
- private typeCheckUnaryArithmeticOperation(unaryExpression, context);
- private typeCheckPostfixUnaryExpression(unaryExpression, context);
- private resolveBinaryArithmeticExpression(binaryExpression, context);
- private typeCheckBinaryArithmeticExpression(binaryExpression, context);
- private resolveTypeOfExpression(ast, context);
- private resolveThrowStatement(ast, context);
- private resolveDeleteExpression(ast, context);
- private resolveInstanceOfExpression(ast, context);
- private typeCheckInstanceOfExpression(binaryExpression, context);
- private resolveCommaExpression(commaExpression, context);
- private resolveInExpression(ast, context);
- private typeCheckInExpression(binaryExpression, context);
- private resolveForStatement(ast, context);
- private resolveForInStatement(forInStatement, context);
- private typeCheckForInStatement(forInStatement, context);
- private resolveWhileStatement(ast, context);
- private typeCheckWhileStatement(ast, context);
- private resolveDoStatement(ast, context);
- private typeCheckDoStatement(ast, context);
- private resolveIfStatement(ast, context);
- private typeCheckIfStatement(ast, context);
- private resolveElseClause(ast, context);
- private typeCheckElseClause(ast, context);
- private resolveBlock(ast, context);
- private resolveVariableStatement(ast, context);
- private resolveVariableDeclarationList(ast, context);
- private resolveWithStatement(ast, context);
- private typeCheckWithStatement(ast, context);
- private resolveTryStatement(ast, context);
- private typeCheckTryStatement(ast, context);
- private resolveCatchClause(ast, context);
- private typeCheckCatchClause(ast, context);
- private resolveFinallyClause(ast, context);
- private typeCheckFinallyClause(ast, context);
- private getEnclosingFunctionDeclaration(ast);
- private resolveReturnExpression(expression, enclosingFunction, context);
- private typeCheckReturnExpression(expression, expressionType, enclosingFunction, context);
- private resolveReturnStatement(returnAST, context);
- private resolveSwitchStatement(ast, context);
- private typeCheckSwitchStatement(ast, context);
- private resolveLabeledStatement(ast, context);
- private typeCheckLabeledStatement(ast, context);
- private labelIsOnContinuableConstruct(statement);
- private resolveContinueStatement(ast, context);
- private isIterationStatement(ast);
- private isAnyFunctionExpressionOrDeclaration(ast);
- private inSwitchStatement(ast);
- private inIterationStatement(ast, crossFunctions);
- private getEnclosingLabels(ast, breakable, crossFunctions);
- private typeCheckContinueStatement(ast, context);
- private resolveBreakStatement(ast, context);
- private typeCheckBreakStatement(ast, context);
- public resolveAST(ast: AST, isContextuallyTyped: boolean, context: PullTypeResolutionContext): PullSymbol;
- private resolveExpressionAST(ast, isContextuallyOrInferentiallyTyped, context);
- private resolveExpressionWorker(ast, isContextuallyTyped, context);
- private typeCheckAST(ast, isContextuallyTyped, context);
- private processPostTypeCheckWorkItems(context);
- private postTypeCheck(ast, context);
- private resolveRegularExpressionLiteral();
- private postTypeCheckNameExpression(nameAST, context);
- private typeCheckNameExpression(nameAST, context);
- private resolveNameExpression(nameAST, context);
- private isInEnumDecl(decl);
- private getSomeInnermostFunctionScopeDecl(declPath);
- private isFromFunctionScope(nameSymbol, functionScopeDecl);
- private findConstructorDeclOfEnclosingType(decl);
- private checkNameAsPartOfInitializerExpressionForInstanceMemberVariable(nameAST, nameSymbol, context);
- private computeNameExpression(nameAST, context);
- private getCurrentParameterIndexForFunction(parameter, funcDecl);
- private resolveMemberAccessExpression(dottedNameAST, context);
- private resolveDottedNameExpression(dottedNameAST, expression, name, context);
- private computeDottedNameExpression(expression, name, context, checkSuperPrivateAndStaticAccess);
- private computeDottedNameExpressionFromLHS(lhs, expression, name, context, checkSuperPrivateAndStaticAccess);
- private resolveTypeNameExpression(nameAST, context);
- private computeTypeNameExpression(nameAST, context);
- private isInStaticMemberContext(decl);
- private isLeftSideOfQualifiedName(ast);
- private resolveGenericTypeReference(genericTypeAST, context);
- private resolveQualifiedName(dottedNameAST, context);
- private isLastNameOfModuleNameModuleReference(ast);
- private computeQualifiedName(dottedNameAST, context);
- private shouldContextuallyTypeAnyFunctionExpression(functionExpressionAST, typeParameters, parameters, returnTypeAnnotation, context);
- private resolveAnyFunctionExpression(funcDeclAST, typeParameters, parameters, returnTypeAnnotation, block, bodyExpression, isContextuallyTyped, context);
- private resolveAnyFunctionExpressionParameters(funcDeclAST, typeParameters, parameters, returnTypeAnnotation, isContextuallyTyped, context);
- private typeCheckSimpleArrowFunctionExpression(arrowFunction, isContextuallyTyped, context);
- private typeCheckParenthesizedArrowFunctionExpression(arrowFunction, isContextuallyTyped, context);
- private typeCheckAnyFunctionExpression(funcDeclAST, typeParameters, parameters, returnTypeAnnotation, block, bodyExpression, isContextuallyTyped, context);
- private resolveThisExpression(thisExpression, context);
- private inTypeArgumentList(ast);
- private inClassExtendsHeritageClause(ast);
- private inTypeQuery(ast);
- private inArgumentListOfSuperInvocation(ast);
- private inConstructorParameterList(ast);
- private isFunctionAccessorOrNonArrowFunctionExpression(decl);
- private isFunctionOrNonArrowFunctionExpression(decl);
- private typeCheckThisExpression(thisExpression, context, enclosingDecl);
- private getContextualClassSymbolForEnclosingDecl(ast, enclosingDecl);
- private inStaticMemberVariableDeclaration(ast);
- private resolveSuperExpression(ast, context);
- private typeCheckSuperExpression(ast, context, enclosingDecl);
- private resolveSimplePropertyAssignment(propertyAssignment, isContextuallyTyped, context);
- private resolveFunctionPropertyAssignment(funcProp, isContextuallyTyped, context);
- private typeCheckFunctionPropertyAssignment(funcProp, isContextuallyTyped, context);
- public resolveObjectLiteralExpression(expressionAST: ObjectLiteralExpression, isContextuallyTyped: boolean, context: PullTypeResolutionContext, additionalResults?: PullAdditionalObjectLiteralResolutionData): PullSymbol;
- private bindObjectLiteralMembers(objectLiteralDeclaration, objectLiteralTypeSymbol, objectLiteralMembers, isUsingExistingSymbol, pullTypeContext);
- private resolveObjectLiteralMembers(objectLiteralDeclaration, objectLiteralTypeSymbol, objectLiteralContextualType, objectLiteralMembers, stringIndexerSignature, numericIndexerSignature, allMemberTypes, allNumericMemberTypes, boundMemberSymbols, isUsingExistingSymbol, pullTypeContext, additionalResults?);
- private computeObjectLiteralExpression(objectLitAST, isContextuallyTyped, context, additionalResults?);
- private getPropertyAssignmentName(propertyAssignment);
- private stampObjectLiteralWithIndexSignature(objectLiteralSymbol, indexerTypeCandidates, contextualIndexSignature, context);
- private resolveArrayLiteralExpression(arrayLit, isContextuallyTyped, context);
- private computeArrayLiteralExpressionSymbol(arrayLit, isContextuallyTyped, context);
- private resolveElementAccessExpression(callEx, context);
- private typeCheckElementAccessExpression(callEx, context, symbolAndDiagnostic);
- private computeElementAccessExpressionSymbolAndDiagnostic(callEx, context);
- private getBothKindsOfIndexSignaturesIncludingAugmentedType(enclosingType, context);
- private getBothKindsOfIndexSignaturesExcludingAugmentedType(enclosingType, context);
- public _getBothKindsOfIndexSignatures(enclosingType: PullTypeSymbol, context: PullTypeResolutionContext, includeAugmentedType: boolean): IndexSignatureInfo;
- public _addUnhiddenSignaturesFromBaseType(derivedTypeSignatures: PullSignatureSymbol[], baseTypeSignatures: PullSignatureSymbol[], signaturesBeingAggregated: PullSignatureSymbol[]): void;
- private resolveBinaryAdditionOperation(binaryExpression, context);
- private bestCommonTypeOfTwoTypes(type1, type2, context);
- private bestCommonTypeOfThreeTypes(type1, type2, type3, context);
- private resolveLogicalOrExpression(binex, isContextuallyTyped, context);
- private resolveLogicalAndExpression(binex, context);
- private computeTypeOfConditionalExpression(leftType, rightType, isContextuallyTyped, context);
- private resolveConditionalExpression(trinex, isContextuallyTyped, context);
- private conditionExpressionTypesAreValid(leftType, rightType, expressionType, isContextuallyTyped, context);
- private resolveParenthesizedExpression(ast, context);
- private resolveExpressionStatement(ast, context);
- public resolveInvocationExpression(callEx: InvocationExpression, context: PullTypeResolutionContext, additionalResults?: PullAdditionalCallResolutionData): PullSymbol;
- private typeCheckInvocationExpression(callEx, context);
- private computeInvocationExpressionSymbol(callEx, context, additionalResults);
- public resolveObjectCreationExpression(callEx: ObjectCreationExpression, context: PullTypeResolutionContext, additionalResults?: PullAdditionalCallResolutionData): PullSymbol;
- private typeCheckObjectCreationExpression(callEx, context);
- private postOverloadResolutionDiagnostics(diagnostic, additionalResults, context);
- private computeObjectCreationExpressionSymbol(callEx, context, additionalResults);
- private instantiateSignatureInContext(signatureAToInstantiate, contextualSignatureB, context, shouldFixContextualSignatureParameterTypes);
- private resolveCastExpression(assertionExpression, context);
- private typeCheckCastExpression(assertionExpression, context, typeAssertionType);
- private resolveAssignmentExpression(binaryExpression, context);
- private getInstanceTypeForAssignment(lhs, type, context);
- public widenType(type: PullTypeSymbol, ast: AST, context: PullTypeResolutionContext): PullTypeSymbol;
- private widenArrayType(type, ast, context);
- private widenObjectLiteralType(type, ast, context);
- private needsToWidenObjectLiteralType(type, ast, context);
- public findBestCommonType(collection: IPullTypeCollection, context: PullTypeResolutionContext, comparisonInfo?: TypeComparisonInfo): PullTypeSymbol;
- private typeIsBestCommonTypeCandidate(candidateType, collection, context);
- private typesAreIdenticalInEnclosingTypes(t1, t2, context);
- private typesAreIdenticalWithNewEnclosingTypes(t1, t2, context);
- public typesAreIdentical(t1: PullTypeSymbol, t2: PullTypeSymbol, context: PullTypeResolutionContext): boolean;
- private typesAreIdenticalWorker(t1, t2, context);
- private propertiesAreIdentical(propertySymbol1, propertySymbol2, context);
- private propertiesAreIdenticalWithNewEnclosingTypes(type1, type2, property1, property2, context);
- private signatureGroupsAreIdentical(sg1, sg2, context);
- private typeParametersAreIdentical(tp1, tp2, context);
- private typeParametersAreIdenticalWorker(tp1, tp2, context);
- private setTypeParameterIdentity(tp1, tp2, val);
- public signaturesAreIdenticalWithNewEnclosingTypes(s1: PullSignatureSymbol, s2: PullSignatureSymbol, context: PullTypeResolutionContext, includingReturnType?: boolean): boolean;
- private signaturesAreIdentical(s1, s2, context, includingReturnType?);
- public signaturesAreIdenticalWorker(s1: PullSignatureSymbol, s2: PullSignatureSymbol, context: PullTypeResolutionContext, includingReturnType?: boolean): boolean;
- private signatureTypeParametersParametersAndReturnTypesAreIdentical(s1, s2, context, includingReturnType?);
- public signatureReturnTypesAreIdentical(s1: PullSignatureSymbol, s2: PullSignatureSymbol, context: PullTypeResolutionContext): boolean;
- private symbolsShareDeclaration(symbol1, symbol2);
- private sourceIsSubtypeOfTarget(source, target, ast, context, comparisonInfo?, isComparingInstantiatedSignatures?);
- private sourceMembersAreAssignableToTargetMembers(source, target, ast, context, comparisonInfo, isComparingInstantiatedSignatures?);
- private sourcePropertyIsAssignableToTargetProperty(source, target, sourceProp, targetProp, ast, context, comparisonInfo, isComparingInstantiatedSignatures?);
- private sourceCallSignaturesAreAssignableToTargetCallSignatures(source, target, ast, context, comparisonInfo, isComparingInstantiatedSignatures?);
- private sourceConstructSignaturesAreAssignableToTargetConstructSignatures(source, target, ast, context, comparisonInfo, isComparingInstantiatedSignatures?);
- private sourceIndexSignaturesAreAssignableToTargetIndexSignatures(source, target, ast, context, comparisonInfo, isComparingInstantiatedSignatures?);
- private typeIsAssignableToFunction(source, ast, context);
- private signatureIsAssignableToTarget(s1, s2, ast, context, comparisonInfo?, isComparingInstantiatedSignatures?);
- private sourceIsAssignableToTarget(source, target, ast, context, comparisonInfo?, isComparingInstantiatedSignatures?);
- private sourceIsAssignableToTargetWithNewEnclosingTypes(source, target, ast, context, comparisonInfo?, isComparingInstantiatedSignatures?);
- private getSymbolForRelationshipCheck(symbol);
- private sourceIsRelatableToTargetInEnclosingTypes(source, target, assignableTo, comparisonCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures);
- private sourceIsRelatableToTargetWithNewEnclosingTypes(source, target, assignableTo, comparisonCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures);
- private sourceIsRelatableToTargetInCache(source, target, comparisonCache, comparisonInfo);
- private sourceIsRelatableToTarget(source, target, assignableTo, comparisonCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures);
- private isSourceTypeParameterConstrainedToTargetTypeParameter(source, target);
- private sourceIsRelatableToTargetWorker(source, target, assignableTo, comparisonCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures);
- private sourceMembersAreRelatableToTargetMembers(source, target, assignableTo, comparisonCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures);
- private infinitelyExpandingSourceTypeIsRelatableToTargetType(sourceType, targetType, assignableTo, comparisonCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures);
- private infinitelyExpandingTypesAreIdentical(sourceType, targetType, context);
- private sourcePropertyIsRelatableToTargetProperty(source, target, sourceProp, targetProp, assignableTo, comparisonCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures);
- private sourceCallSignaturesAreRelatableToTargetCallSignatures(source, target, assignableTo, comparisonCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures);
- private sourceConstructSignaturesAreRelatableToTargetConstructSignatures(source, target, assignableTo, comparisonCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures);
- private sourceIndexSignaturesAreRelatableToTargetIndexSignatures(source, target, assignableTo, comparisonCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures);
- private signatureGroupIsRelatableToTarget(source, target, sourceSG, targetSG, assignableTo, comparisonCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures);
- private signatureIsRelatableToTarget(sourceSig, targetSig, assignableTo, comparisonCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures);
- private signatureIsRelatableToTargetWorker(sourceSig, targetSig, assignableTo, comparisonCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures);
- private resolveOverloads(application, group, haveTypeArgumentsAtCallSite, context, diagnostics);
- private getCallTargetErrorSpanAST(callEx);
- private overloadHasCorrectArity(signature, args);
- private overloadIsApplicable(signature, args, context, comparisonInfo);
- private overloadIsApplicableForArgument(paramType, arg, argIndex, context, comparisonInfo);
- private overloadIsApplicableForAnyFunctionExpressionArgument(paramType, arg, typeParameters, parameters, returnTypeAnnotation, block, bodyExpression, argIndex, context, comparisonInfo);
- private overloadIsApplicableForObjectLiteralArgument(paramType, arg, argIndex, context, comparisonInfo);
- private overloadIsApplicableForArrayLiteralArgument(paramType, arg, argIndex, context, comparisonInfo);
- private overloadIsApplicableForOtherArgument(paramType, arg, argIndex, context, comparisonInfo);
- private overloadIsApplicableForArgumentHelper(paramType, argSym, argumentIndex, comparisonInfo, arg, context);
- private inferArgumentTypesForSignature(argContext, comparisonInfo, context);
- private typeParametersAreInScopeAtArgumentList(typeParameters, args);
- private relateTypeToTypeParametersInEnclosingType(expressionType, parameterType, argContext, context);
- public relateTypeToTypeParametersWithNewEnclosingTypes(expressionType: PullTypeSymbol, parameterType: PullTypeSymbol, argContext: TypeArgumentInferenceContext, context: PullTypeResolutionContext): void;
- public relateTypeToTypeParameters(expressionType: PullTypeSymbol, parameterType: PullTypeSymbol, argContext: TypeArgumentInferenceContext, context: PullTypeResolutionContext): void;
- private relateTypeArgumentsOfTypeToTypeParameters(expressionType, parameterType, argContext, context);
- private relateInifinitelyExpandingTypeToTypeParameters(expressionType, parameterType, argContext, context);
- private relateFunctionSignatureToTypeParameters(expressionSignature, parameterSignature, argContext, context);
- private relateObjectTypeToTypeParameters(objectType, parameterType, argContext, context);
- private relateSignatureGroupToTypeParameters(argumentSignatures, parameterSignatures, signatureKind, argContext, context);
- private alterPotentialGenericFunctionTypeToInstantiatedFunctionTypeForTypeArgumentInference(expressionSymbol, context);
- private isFunctionTypeWithExactlyOneCallSignatureAndNoOtherMembers(type, callSignatureShouldBeGeneric);
- public instantiateTypeToAny(typeToSpecialize: PullTypeSymbol, context: PullTypeResolutionContext): PullTypeSymbol;
- public instantiateSignatureToAny(signature: PullSignatureSymbol): PullSignatureSymbol;
- static globalTypeCheckPhase: number;
- static typeCheck(compilationSettings: ImmutableCompilationSettings, semanticInfoChain: SemanticInfoChain, document: Document): void;
- private validateVariableDeclarationGroups(enclosingDecl, context);
- private typeCheckFunctionOverloads(funcDecl, context, signature?, allSignatures?);
- private checkSymbolPrivacy(declSymbol, symbol, privacyErrorReporter);
- private checkTypePrivacyOfSignatures(declSymbol, signatures, privacyErrorReporter);
- private typeParameterOfTypeDeclarationPrivacyErrorReporter(classOrInterface, typeParameterAST, typeParameter, symbol, context);
- private baseListPrivacyErrorReporter(classOrInterface, declSymbol, baseAst, isExtendedType, symbol, context);
- private variablePrivacyErrorReporter(declAST, declSymbol, symbol, context);
- private checkFunctionTypePrivacy(funcDeclAST, isStatic, typeParameters, parameters, returnTypeAnnotation, block, context);
- private functionTypeArgumentArgumentTypePrivacyErrorReporter(declAST, isStatic, typeParameterAST, typeParameter, symbol, context);
- private functionArgumentTypePrivacyErrorReporter(declAST, isStatic, parameters, argIndex, paramSymbol, symbol, context);
- private functionReturnTypePrivacyErrorReporter(declAST, isStatic, returnTypeAnnotation, block, funcReturnType, symbol, context);
- private enclosingClassIsDerived(classDecl);
- private isSuperInvocationExpression(ast);
- private isSuperInvocationExpressionStatement(node);
- private getFirstStatementOfBlockOrNull(block);
- private superCallMustBeFirstStatementInConstructor(constructorDecl);
- private checkForThisCaptureInArrowFunction(expression);
- private typeCheckMembersAgainstIndexer(containerType, containerTypeDecl, context);
- private determineRelevantIndexerForMember(member, numberIndexSignature, stringIndexSignature);
- private reportErrorThatMemberIsNotSubtypeOfIndexer(member, indexSignature, astForError, context, comparisonInfo);
- private typeCheckIfTypeMemberPropertyOkToOverride(typeSymbol, extendedType, typeMember, extendedTypeMember, enclosingDecl, comparisonInfo);
- private typeCheckIfTypeExtendsType(classOrInterface, name, typeSymbol, extendedType, enclosingDecl, context);
- private typeCheckIfClassImplementsType(classDecl, classSymbol, implementedType, enclosingDecl, context);
- private computeValueSymbolFromAST(valueDeclAST, context);
- private hasClassTypeSymbolConflictAsValue(baseDeclAST, typeSymbol, enclosingDecl, context);
- private typeCheckBase(classOrInterface, name, typeSymbol, baseDeclAST, isExtendedType, enclosingDecl, context);
- private typeCheckBases(classOrInterface, name, heritageClauses, typeSymbol, enclosingDecl, context);
- private checkTypeCompatibilityBetweenBases(name, typeSymbol, context);
- private checkNamedPropertyIdentityBetweenBases(interfaceName, interfaceSymbol, baseTypeSymbol, inheritedMembersMap, context);
- private checkIndexSignatureIdentityBetweenBases(interfaceName, interfaceSymbol, baseTypeSymbol, allInheritedSignatures, derivedTypeHasOwnNumberSignature, derivedTypeHasOwnStringSignature, context);
- private checkInheritedMembersAgainstInheritedIndexSignatures(interfaceName, interfaceSymbol, inheritedIndexSignatures, inheritedMembers, context);
- private checkThatInheritedNumberSignatureIsSubtypeOfInheritedStringSignature(interfaceName, interfaceSymbol, inheritedIndexSignatures, context);
- private checkAssignability(ast, source, target, context);
- private isReference(ast, astSymbol);
- private checkForSuperMemberAccess(expression, name, resolvedName, context);
- private getEnclosingDeclForAST(ast);
- private getEnclosingSymbolForAST(ast);
- private checkForPrivateMemberAccess(name, expressionType, resolvedName, context);
- public instantiateType(type: PullTypeSymbol, typeParameterArgumentMap: TypeArgumentMap): PullTypeSymbol;
- public instantiateTypeParameter(typeParameter: PullTypeParameterSymbol, typeParameterArgumentMap: TypeArgumentMap): PullTypeParameterSymbol;
- public instantiateSignature(signature: PullSignatureSymbol, typeParameterArgumentMap: TypeArgumentMap): PullSignatureSymbol;
- }
- class TypeComparisonInfo {
- public onlyCaptureFirstError: boolean;
- public flags: TypeRelationshipFlags;
- public message: string;
- public stringConstantVal: AST;
- private indent;
- constructor(sourceComparisonInfo?: TypeComparisonInfo, useSameIndent?: boolean);
- private indentString();
- public addMessage(message: string): void;
- }
- function getPropertyAssignmentNameTextFromIdentifier(identifier: AST): {
- actualText: string;
- memberName: string;
- };
- function isTypesOnlyLocation(ast: AST): boolean;
-}
-declare module TypeScript {
- var declCacheHit: number;
- var declCacheMiss: number;
- var symbolCacheHit: number;
- var symbolCacheMiss: number;
- class SemanticInfoChain {
- private compiler;
- private logger;
- private documents;
- private fileNameToDocument;
- public anyTypeDecl: PullDecl;
- public booleanTypeDecl: PullDecl;
- public numberTypeDecl: PullDecl;
- public stringTypeDecl: PullDecl;
- public nullTypeDecl: PullDecl;
- public undefinedTypeDecl: PullDecl;
- public voidTypeDecl: PullDecl;
- public undefinedValueDecl: PullDecl;
- public anyTypeSymbol: PullPrimitiveTypeSymbol;
- public booleanTypeSymbol: PullPrimitiveTypeSymbol;
- public numberTypeSymbol: PullPrimitiveTypeSymbol;
- public stringTypeSymbol: PullPrimitiveTypeSymbol;
- public nullTypeSymbol: PullPrimitiveTypeSymbol;
- public undefinedTypeSymbol: PullPrimitiveTypeSymbol;
- public voidTypeSymbol: PullPrimitiveTypeSymbol;
- public undefinedValueSymbol: PullSymbol;
- public emptyTypeSymbol: PullTypeSymbol;
- private astSymbolMap;
- private astAliasSymbolMap;
- private astCallResolutionDataMap;
- private declSymbolMap;
- private declSignatureSymbolMap;
- private declCache;
- private symbolCache;
- private fileNameToDiagnostics;
- private _binder;
- private _resolver;
- private _topLevelDecls;
- private _fileNames;
- constructor(compiler: TypeScriptCompiler, logger: ILogger);
- public getDocument(fileName: string): Document;
- public lineMap(fileName: string): LineMap;
- public fileNames(): string[];
- private bindPrimitiveSymbol(decl, newSymbol);
- private addPrimitiveTypeSymbol(decl);
- private addPrimitiveValueSymbol(decl, type);
- private resetGlobalSymbols();
- public addDocument(document: Document): void;
- public removeDocument(fileName: string): void;
- private getDeclPathCacheID(declPath, declKind);
- public findTopLevelSymbol(name: string, kind: PullElementKind, doNotGoPastThisDecl: PullDecl): PullSymbol;
- private findTopLevelSymbolInDecl(topLevelDecl, name, kind, doNotGoPastThisDecl);
- public findExternalModule(id: string): PullContainerSymbol;
- public findAmbientExternalModuleInGlobalContext(id: string): PullContainerSymbol;
- public findDecls(declPath: string[], declKind: PullElementKind): PullDecl[];
- public findDeclsFromPath(declPath: PullDecl[], declKind: PullElementKind): PullDecl[];
- public findSymbol(declPath: string[], declType: PullElementKind): PullSymbol;
- public cacheGlobalSymbol(symbol: PullSymbol, kind: PullElementKind): void;
- public invalidate(oldSettings?: ImmutableCompilationSettings, newSettings?: ImmutableCompilationSettings): void;
- private settingsChangeAffectsSyntax(before, after);
- public setSymbolForAST(ast: AST, symbol: PullSymbol): void;
- public getSymbolForAST(ast: AST): PullSymbol;
- public setAliasSymbolForAST(ast: AST, symbol: PullTypeAliasSymbol): void;
- public getAliasSymbolForAST(ast: AST): PullTypeAliasSymbol;
- public getCallResolutionDataForAST(ast: AST): PullAdditionalCallResolutionData;
- public setCallResolutionDataForAST(ast: AST, callResolutionData: PullAdditionalCallResolutionData): void;
- public setSymbolForDecl(decl: PullDecl, symbol: PullSymbol): void;
- public getSymbolForDecl(decl: PullDecl): PullSymbol;
- public setSignatureSymbolForDecl(decl: PullDecl, signatureSymbol: PullSignatureSymbol): void;
- public getSignatureSymbolForDecl(decl: PullDecl): PullSignatureSymbol;
- public addDiagnostic(diagnostic: Diagnostic): void;
- public getDiagnostics(fileName: string): Diagnostic[];
- public getBinder(): PullSymbolBinder;
- public getResolver(): PullTypeResolver;
- public addSyntheticIndexSignature(containingDecl: PullDecl, containingSymbol: PullTypeSymbol, ast: AST, indexParamName: string, indexParamType: PullTypeSymbol, returnType: PullTypeSymbol): void;
- public getDeclForAST(ast: AST): PullDecl;
- public getEnclosingDecl(ast: AST): PullDecl;
- public setDeclForAST(ast: AST, decl: PullDecl): void;
- public getASTForDecl(decl: PullDecl): AST;
- public setASTForDecl(decl: PullDecl, ast: AST): void;
- public topLevelDecl(fileName: string): PullDecl;
- public topLevelDecls(): PullDecl[];
- public addDiagnosticFromAST(ast: AST, diagnosticKey: string, _arguments?: any[], additionalLocations?: Location[]): void;
- public diagnosticFromAST(ast: AST, diagnosticKey: string, _arguments?: any[], additionalLocations?: Location[]): Diagnostic;
- public locationFromAST(ast: AST): Location;
- public duplicateIdentifierDiagnosticFromAST(ast: AST, identifier: string, additionalLocationAST: AST): Diagnostic;
- public addDuplicateIdentifierDiagnosticFromAST(ast: AST, identifier: string, additionalLocationAST: AST): void;
- }
-}
-declare module TypeScript {
- module DeclarationCreator {
- function create(document: Document, semanticInfoChain: SemanticInfoChain, compilationSettings: ImmutableCompilationSettings): PullDecl;
- }
-}
-declare module TypeScript {
- class PullSymbolBinder {
- private semanticInfoChain;
- private declsBeingBound;
- private inBindingOtherDeclsWalker;
- constructor(semanticInfoChain: SemanticInfoChain);
- private getParent(decl, returnInstanceType?);
- private findDeclsInContext(startingDecl, declKind, searchGlobally);
- private getExistingSymbol(decl, searchKind, parent);
- private checkThatExportsMatch(decl, prevSymbol, reportError?);
- private getIndexForInsertingSignatureAtEndOfEnclosingDeclInSignatureList(signature, currentSignatures);
- private bindEnumDeclarationToPullSymbol(enumContainerDecl);
- private bindEnumIndexerDeclsToPullSymbols(enumContainerSymbol);
- private findExistingVariableSymbolForModuleValueDecl(decl);
- private bindModuleDeclarationToPullSymbol(moduleContainerDecl);
- private bindImportDeclaration(importDeclaration);
- private ensurePriorDeclarationsAreBound(container, currentDecl);
- private bindClassDeclarationToPullSymbol(classDecl);
- private bindInterfaceDeclarationToPullSymbol(interfaceDecl);
- private bindObjectTypeDeclarationToPullSymbol(objectDecl);
- private bindConstructorTypeDeclarationToPullSymbol(constructorTypeDeclaration);
- private bindVariableDeclarationToPullSymbol(variableDeclaration);
- private bindCatchVariableToPullSymbol(variableDeclaration);
- private bindEnumMemberDeclarationToPullSymbol(propertyDeclaration);
- private bindPropertyDeclarationToPullSymbol(propertyDeclaration);
- private bindParameterSymbols(functionDeclaration, parameterList, funcType, signatureSymbol);
- private bindFunctionDeclarationToPullSymbol(functionDeclaration);
- private bindFunctionExpressionToPullSymbol(functionExpressionDeclaration);
- private bindFunctionTypeDeclarationToPullSymbol(functionTypeDeclaration);
- private bindMethodDeclarationToPullSymbol(methodDeclaration);
- private bindStaticPrototypePropertyOfClass(classAST, classTypeSymbol, constructorTypeSymbol);
- private bindConstructorDeclarationToPullSymbol(constructorDeclaration);
- private bindConstructSignatureDeclarationToPullSymbol(constructSignatureDeclaration);
- private bindCallSignatureDeclarationToPullSymbol(callSignatureDeclaration);
- private bindIndexSignatureDeclarationToPullSymbol(indexSignatureDeclaration);
- private bindGetAccessorDeclarationToPullSymbol(getAccessorDeclaration);
- private bindSetAccessorDeclarationToPullSymbol(setAccessorDeclaration);
- private getDeclsToBind(decl);
- private shouldBindDeclaration(decl);
- public bindDeclToPullSymbol(decl: PullDecl): void;
- private bindAllDeclsToPullSymbol(askedDecl);
- private bindSingleDeclToPullSymbol(decl);
- }
-}
-declare module TypeScript {
- module PullHelpers {
- function diagnosticFromDecl(decl: PullDecl, diagnosticKey: string, _arguments?: any[], additionalLocations?: Location[]): Diagnostic;
- function resolveDeclaredSymbolToUseType(symbol: PullSymbol): void;
- interface SignatureInfoForFuncDecl {
- signature: PullSignatureSymbol;
- allSignatures: PullSignatureSymbol[];
- }
- function getSignatureForFuncDecl(functionDecl: PullDecl): {
- signature: PullSignatureSymbol;
- allSignatures: PullSignatureSymbol[];
- };
- function getAccessorSymbol(getterOrSetter: AST, semanticInfoChain: SemanticInfoChain): PullAccessorSymbol;
- function getGetterAndSetterFunction(funcDecl: AST, semanticInfoChain: SemanticInfoChain): {
- getter: GetAccessor;
- setter: SetAccessor;
- };
- function symbolIsEnum(source: PullSymbol): boolean;
- function symbolIsModule(symbol: PullSymbol): boolean;
- function isNameNumeric(name: string): boolean;
- function typeSymbolsAreIdentical(a: PullTypeSymbol, b: PullTypeSymbol): boolean;
- function getRootType(type: PullTypeSymbol): PullTypeSymbol;
- function isSymbolLocal(symbol: PullSymbol): boolean;
- function isExportedSymbolInClodule(symbol: PullSymbol): boolean;
- function isSymbolDeclaredInScopeChain(symbol: PullSymbol, scopeSymbol: PullSymbol): boolean;
- interface PullTypeSymbolStructureWalker {
- memberSymbolWalk(memberSymbol: PullSymbol): boolean;
- callSignatureWalk(signatureSymbol: PullSignatureSymbol): boolean;
- constructSignatureWalk(signatureSymbol: PullSignatureSymbol): boolean;
- indexSignatureWalk(signatureSymbol: PullSignatureSymbol): boolean;
- signatureParameterWalk(parameterSymbol: PullSymbol): boolean;
- signatureReturnTypeWalk(returnType: PullTypeSymbol): boolean;
- }
- function walkPullTypeSymbolStructure(typeSymbol: PullTypeSymbol, walker: PullTypeSymbolStructureWalker): void;
- class OtherPullDeclsWalker {
- private currentlyWalkingOtherDecls;
- public walkOtherPullDecls(currentDecl: PullDecl, otherDecls: PullDecl[], callBack: (otherDecl: PullDecl) => void): void;
- }
- }
-}
-declare module TypeScript {
- class WrapsTypeParameterCache {
- private _wrapsTypeParameterCache;
- public getWrapsTypeParameter(typeParameterArgumentMap: TypeArgumentMap): number;
- public setWrapsTypeParameter(typeParameterArgumentMap: TypeArgumentMap, wrappingTypeParameterID: number): void;
- }
- module PullInstantiationHelpers {
- class MutableTypeArgumentMap {
- public typeParameterArgumentMap: TypeArgumentMap;
- public createdDuplicateTypeArgumentMap: boolean;
- constructor(typeParameterArgumentMap: TypeArgumentMap);
- public ensureTypeArgumentCopy(): void;
- }
- function instantiateTypeArgument(resolver: PullTypeResolver, symbol: InstantiableSymbol, mutableTypeParameterMap: MutableTypeArgumentMap): void;
- function cleanUpTypeArgumentMap(symbol: InstantiableSymbol, mutableTypeArgumentMap: MutableTypeArgumentMap): void;
- function getAllowedToReferenceTypeParametersFromDecl(decl: PullDecl): PullTypeParameterSymbol[];
- function createTypeParameterArgumentMap(typeParameters: PullTypeParameterSymbol[], typeArguments: PullTypeSymbol[]): TypeArgumentMap;
- function updateTypeParameterArgumentMap(typeParameters: PullTypeParameterSymbol[], typeArguments: PullTypeSymbol[], typeParameterArgumentMap: TypeArgumentMap): TypeArgumentMap;
- function updateMutableTypeParameterArgumentMap(typeParameters: PullTypeParameterSymbol[], typeArguments: PullTypeSymbol[], mutableMap: MutableTypeArgumentMap): void;
- function twoTypesAreInstantiationsOfSameNamedGenericType(type1: PullTypeSymbol, type2: PullTypeSymbol): boolean;
- }
-}
-declare module TypeScript {
- var fileResolutionTime: number;
- var fileResolutionIOTime: number;
- var fileResolutionScanImportsTime: number;
- var fileResolutionImportFileSearchTime: number;
- var fileResolutionGetDefaultLibraryTime: number;
- var sourceCharactersCompiled: number;
- var syntaxTreeParseTime: number;
- var syntaxDiagnosticsTime: number;
- var astTranslationTime: number;
- var typeCheckTime: number;
- var compilerResolvePathTime: number;
- var compilerDirectoryNameTime: number;
- var compilerDirectoryExistsTime: number;
- var compilerFileExistsTime: number;
- var emitTime: number;
- var emitWriteFileTime: number;
- var declarationEmitTime: number;
- var declarationEmitIsExternallyVisibleTime: number;
- var declarationEmitTypeSignatureTime: number;
- var declarationEmitGetBoundDeclTypeTime: number;
- var declarationEmitIsOverloadedCallSignatureTime: number;
- var declarationEmitFunctionDeclarationGetSymbolTime: number;
- var declarationEmitGetBaseTypeTime: number;
- var declarationEmitGetAccessorFunctionTime: number;
- var declarationEmitGetTypeParameterSymbolTime: number;
- var declarationEmitGetImportDeclarationSymbolTime: number;
- var ioHostResolvePathTime: number;
- var ioHostDirectoryNameTime: number;
- var ioHostCreateDirectoryStructureTime: number;
- var ioHostWriteFileTime: number;
- interface PullSymbolInfo {
- symbol: PullSymbol;
- aliasSymbol: PullTypeAliasSymbol;
- ast: AST;
- enclosingScopeSymbol: PullSymbol;
- }
- interface PullCallSymbolInfo {
- targetSymbol: PullSymbol;
- resolvedSignatures: PullSignatureSymbol[];
- candidateSignature: PullSignatureSymbol;
- isConstructorCall: boolean;
- ast: AST;
- enclosingScopeSymbol: PullSymbol;
- }
- interface PullVisibleSymbolsInfo {
- symbols: PullSymbol[];
- enclosingScopeSymbol: PullSymbol;
- }
- enum EmitOutputResult {
- Succeeded = 0,
- FailedBecauseOfSyntaxErrors = 1,
- FailedBecauseOfCompilerOptionsErrors = 2,
- FailedToGenerateDeclarationsBecauseOfSemanticErrors = 3,
- }
- class EmitOutput {
- public outputFiles: OutputFile[];
- public emitOutputResult: EmitOutputResult;
- constructor(emitOutputResult?: EmitOutputResult);
- }
- enum OutputFileType {
- JavaScript = 0,
- SourceMap = 1,
- Declaration = 2,
- }
- class OutputFile {
- public name: string;
- public writeByteOrderMark: boolean;
- public text: string;
- public fileType: OutputFileType;
- public sourceMapEntries: SourceMapEntry[];
- constructor(name: string, writeByteOrderMark: boolean, text: string, fileType: OutputFileType, sourceMapEntries?: SourceMapEntry[]);
- }
- class CompileResult {
- public diagnostics: Diagnostic[];
- public outputFiles: OutputFile[];
- static fromDiagnostics(diagnostics: Diagnostic[]): CompileResult;
- static fromOutputFiles(outputFiles: OutputFile[]): CompileResult;
- }
- class TypeScriptCompiler {
- public logger: ILogger;
- private _settings;
- private semanticInfoChain;
- constructor(logger?: ILogger, _settings?: ImmutableCompilationSettings);
- public compilationSettings(): ImmutableCompilationSettings;
- public setCompilationSettings(newSettings: ImmutableCompilationSettings): void;
- public getDocument(fileName: string): Document;
- public cleanupSemanticCache(): void;
- public addFile(fileName: string, scriptSnapshot: IScriptSnapshot, byteOrderMark: ByteOrderMark, version: number, isOpen: boolean, referencedFiles?: string[]): void;
- public updateFile(fileName: string, scriptSnapshot: IScriptSnapshot, version: number, isOpen: boolean, textChangeRange: TextChangeRange): void;
- public removeFile(fileName: string): void;
- public mapOutputFileName(document: Document, emitOptions: EmitOptions, extensionChanger: (fname: string, wholeFileNameReplaced: boolean) => string): string;
- private writeByteOrderMarkForDocument(document);
- static mapToDTSFileName(fileName: string, wholeFileNameReplaced: boolean): string;
- public _shouldEmit(document: Document): boolean;
- public _shouldEmitDeclarations(document: Document): boolean;
- private emitDocumentDeclarationsWorker(document, emitOptions, declarationEmitter?);
- public _emitDocumentDeclarations(document: Document, emitOptions: EmitOptions, onSingleFileEmitComplete: (files: OutputFile) => void, sharedEmitter: DeclarationEmitter): DeclarationEmitter;
- public emitAllDeclarations(resolvePath: (path: string) => string): EmitOutput;
- public emitDeclarations(fileName: string, resolvePath: (path: string) => string): EmitOutput;
- public canEmitDeclarations(fileName: string): boolean;
- static mapToFileNameExtension(extension: string, fileName: string, wholeFileNameReplaced: boolean): string;
- static mapToJSFileName(fileName: string, wholeFileNameReplaced: boolean): string;
- private emitDocumentWorker(document, emitOptions, emitter?);
- public _emitDocument(document: Document, emitOptions: EmitOptions, onSingleFileEmitComplete: (files: OutputFile[]) => void, sharedEmitter: Emitter): Emitter;
- public emitAll(resolvePath: (path: string) => string): EmitOutput;
- public emit(fileName: string, resolvePath: (path: string) => string): EmitOutput;
- public compile(resolvePath: (path: string) => string, continueOnDiagnostics?: boolean): Iterator;
- public getSyntacticDiagnostics(fileName: string): Diagnostic[];
- private getSyntaxTree(fileName);
- private getSourceUnit(fileName);
- public getSemanticDiagnostics(fileName: string): Diagnostic[];
- public getCompilerOptionsDiagnostics(resolvePath: (path: string) => string): Diagnostic[];
- public resolveAllFiles(): void;
- public getSymbolOfDeclaration(decl: PullDecl): PullSymbol;
- private extractResolutionContextFromAST(resolver, ast, document, propagateContextualTypes);
- private extractResolutionContextForVariable(inContextuallyTypedAssignment, propagateContextualTypes, resolver, resolutionContext, enclosingDecl, assigningAST, init);
- private getASTPath(ast);
- public pullGetSymbolInformationFromAST(ast: AST, document: Document): PullSymbolInfo;
- public pullGetCallInformationFromAST(ast: AST, document: Document): PullCallSymbolInfo;
- public pullGetVisibleMemberSymbolsFromAST(ast: AST, document: Document): PullVisibleSymbolsInfo;
- public pullGetVisibleDeclsFromAST(ast: AST, document: Document): PullDecl[];
- public pullGetContextualMembersFromAST(ast: AST, document: Document): PullVisibleSymbolsInfo;
- public pullGetDeclInformation(decl: PullDecl, ast: AST, document: Document): PullSymbolInfo;
- public topLevelDeclaration(fileName: string): PullDecl;
- public getDeclForAST(ast: AST): PullDecl;
- public fileNames(): string[];
- public topLevelDecl(fileName: string): PullDecl;
- private static getLocationText(location, resolvePath);
- static getFullDiagnosticText(diagnostic: Diagnostic, resolvePath: (path: string) => string): string;
- }
- function compareDataObjects(dst: any, src: any): boolean;
-}
-declare module TypeScript {
- enum GenerativeTypeClassification {
- Unknown = 0,
- Open = 1,
- Closed = 2,
- InfinitelyExpanding = 3,
- }
- interface TypeArgumentMap {
- [n: number]: PullTypeSymbol;
- }
- class PullTypeReferenceSymbol extends PullTypeSymbol {
- public referencedTypeSymbol: PullTypeSymbol;
- static createTypeReference(type: PullTypeSymbol): PullTypeReferenceSymbol;
- constructor(referencedTypeSymbol: PullTypeSymbol);
- public isTypeReference(): boolean;
- public isResolved: boolean;
- public setResolved(): void;
- public setUnresolved(): void;
- public invalidate(): void;
- public ensureReferencedTypeIsResolved(): void;
- public getReferencedTypeSymbol(): PullTypeSymbol;
- public _getResolver(): PullTypeResolver;
- public hasMembers(): boolean;
- public setAssociatedContainerType(type: PullTypeSymbol): void;
- public getAssociatedContainerType(): PullTypeSymbol;
- public getFunctionSymbol(): PullSymbol;
- public setFunctionSymbol(symbol: PullSymbol): void;
- public addContainedNonMember(nonMember: PullSymbol): void;
- public findContainedNonMemberContainer(containerName: string, kind?: PullElementKind): PullTypeSymbol;
- public addMember(memberSymbol: PullSymbol): void;
- public addEnclosedMemberType(enclosedType: PullTypeSymbol): void;
- public addEnclosedMemberContainer(enclosedContainer: PullTypeSymbol): void;
- public addEnclosedNonMember(enclosedNonMember: PullSymbol): void;
- public addEnclosedNonMemberType(enclosedNonMemberType: PullTypeSymbol): void;
- public addEnclosedNonMemberContainer(enclosedNonMemberContainer: PullTypeSymbol): void;
- public addTypeParameter(typeParameter: PullTypeParameterSymbol): void;
- public addConstructorTypeParameter(typeParameter: PullTypeParameterSymbol): void;
- public findContainedNonMember(name: string): PullSymbol;
- public findContainedNonMemberType(typeName: string, kind?: PullElementKind): PullTypeSymbol;
- public getMembers(): PullSymbol[];
- public setHasDefaultConstructor(hasOne?: boolean): void;
- public getHasDefaultConstructor(): boolean;
- public getConstructorMethod(): PullSymbol;
- public setConstructorMethod(constructorMethod: PullSymbol): void;
- public getTypeParameters(): PullTypeParameterSymbol[];
- public isGeneric(): boolean;
- public addSpecialization(specializedVersionOfThisType: PullTypeSymbol, substitutingTypes: PullTypeSymbol[]): void;
- public getSpecialization(substitutingTypes: PullTypeSymbol[]): PullTypeSymbol;
- public getKnownSpecializations(): PullTypeSymbol[];
- public getTypeArguments(): PullTypeSymbol[];
- public getTypeArgumentsOrTypeParameters(): PullTypeSymbol[];
- public appendCallSignature(callSignature: PullSignatureSymbol): void;
- public insertCallSignatureAtIndex(callSignature: PullSignatureSymbol, index: number): void;
- public appendConstructSignature(callSignature: PullSignatureSymbol): void;
- public insertConstructSignatureAtIndex(callSignature: PullSignatureSymbol, index: number): void;
- public addIndexSignature(indexSignature: PullSignatureSymbol): void;
- public hasOwnCallSignatures(): boolean;
- public getCallSignatures(): PullSignatureSymbol[];
- public hasOwnConstructSignatures(): boolean;
- public getConstructSignatures(): PullSignatureSymbol[];
- public hasOwnIndexSignatures(): boolean;
- public getIndexSignatures(): PullSignatureSymbol[];
- public addImplementedType(implementedType: PullTypeSymbol): void;
- public getImplementedTypes(): PullTypeSymbol[];
- public addExtendedType(extendedType: PullTypeSymbol): void;
- public getExtendedTypes(): PullTypeSymbol[];
- public addTypeThatExtendsThisType(type: PullTypeSymbol): void;
- public getTypesThatExtendThisType(): PullTypeSymbol[];
- public addTypeThatExplicitlyImplementsThisType(type: PullTypeSymbol): void;
- public getTypesThatExplicitlyImplementThisType(): PullTypeSymbol[];
- public isValidBaseKind(baseType: PullTypeSymbol, isExtendedType: boolean): boolean;
- public findMember(name: string, lookInParent?: boolean): PullSymbol;
- public findNestedType(name: string, kind?: PullElementKind): PullTypeSymbol;
- public findNestedContainer(name: string, kind?: PullElementKind): PullTypeSymbol;
- public getAllMembers(searchDeclKind: PullElementKind, memberVisiblity: GetAllMembersVisiblity): PullSymbol[];
- public findTypeParameter(name: string): PullTypeParameterSymbol;
- public hasOnlyOverloadCallSignatures(): boolean;
- }
- var nSpecializationsCreated: number;
- var nSpecializedSignaturesCreated: number;
- var nSpecializedTypeParameterCreated: number;
- class PullInstantiatedTypeReferenceSymbol extends PullTypeReferenceSymbol {
- public referencedTypeSymbol: PullTypeSymbol;
- private _typeParameterArgumentMap;
- public isInstanceReferenceType: boolean;
- private _instantiatedMembers;
- private _allInstantiatedMemberNameCache;
- private _instantiatedMemberNameCache;
- private _instantiatedCallSignatures;
- private _instantiatedConstructSignatures;
- private _instantiatedIndexSignatures;
- private _typeArgumentReferences;
- private _instantiatedConstructorMethod;
- private _instantiatedAssociatedContainerType;
- private _isArray;
- public getIsSpecialized(): boolean;
- private _generativeTypeClassification;
- public getGenerativeTypeClassification(enclosingType: PullTypeSymbol): GenerativeTypeClassification;
- public isArrayNamedTypeReference(): boolean;
- public getElementType(): PullTypeSymbol;
- public getReferencedTypeSymbol(): PullTypeSymbol;
- static create(resolver: PullTypeResolver, type: PullTypeSymbol, typeParameterArgumentMap: TypeArgumentMap): PullInstantiatedTypeReferenceSymbol;
- constructor(referencedTypeSymbol: PullTypeSymbol, _typeParameterArgumentMap: TypeArgumentMap, isInstanceReferenceType: boolean);
- public isGeneric(): boolean;
- public getTypeParameterArgumentMap(): TypeArgumentMap;
- public getTypeArguments(): PullTypeSymbol[];
- public getTypeArgumentsOrTypeParameters(): PullTypeSymbol[];
- private populateInstantiatedMemberFromReferencedMember(referencedMember);
- public getMembers(): PullSymbol[];
- public findMember(name: string, lookInParent?: boolean): PullSymbol;
- public getAllMembers(searchDeclKind: PullElementKind, memberVisiblity: GetAllMembersVisiblity): PullSymbol[];
- public getConstructorMethod(): PullSymbol;
- public getAssociatedContainerType(): PullTypeSymbol;
- public getCallSignatures(): PullSignatureSymbol[];
- public getConstructSignatures(): PullSignatureSymbol[];
- public getIndexSignatures(): PullSignatureSymbol[];
- }
- class PullInstantiatedSignatureSymbol extends PullSignatureSymbol {
- private _typeParameterArgumentMap;
- public getTypeParameterArgumentMap(): TypeArgumentMap;
- constructor(rootSignature: PullSignatureSymbol, _typeParameterArgumentMap: TypeArgumentMap);
- public getIsSpecialized(): boolean;
- public _getResolver(): PullTypeResolver;
- public getTypeParameters(): PullTypeParameterSymbol[];
- public getAllowedToReferenceTypeParameters(): PullTypeParameterSymbol[];
- }
- class PullInstantiatedTypeParameterSymbol extends PullTypeParameterSymbol {
- constructor(rootTypeParameter: PullTypeSymbol, constraintType: PullTypeSymbol);
- public _getResolver(): PullTypeResolver;
- }
-}
-declare module TypeScript {
- class SyntaxTreeToAstVisitor implements ISyntaxVisitor {
- private fileName;
- public lineMap: LineMap;
- private compilationSettings;
- public position: number;
- public previousTokenTrailingComments: Comment[];
- constructor(fileName: string, lineMap: LineMap, compilationSettings: ImmutableCompilationSettings);
- static visit(syntaxTree: SyntaxTree, fileName: string, compilationSettings: ImmutableCompilationSettings, incrementalAST: boolean): SourceUnit;
- public movePast(element: ISyntaxElement): void;
- private moveTo(element1, element2);
- private setCommentsAndSpan(ast, fullStart, node);
- public createTokenSpan(fullStart: number, element: ISyntaxToken): ASTSpan;
- public setSpan(span: AST, fullStart: number, element: ISyntaxElement, firstToken?: ISyntaxToken, lastToken?: ISyntaxToken): void;
- public setSpanExplicit(span: IASTSpan, start: number, end: number): void;
- public visitSyntaxList(node: ISyntaxList): ISyntaxList2;
- public visitSeparatedSyntaxList(list: ISeparatedSyntaxList): ISeparatedSyntaxList2;
- private convertComment(trivia, commentStartPosition, hasTrailingNewLine);
- private convertComments(triviaList, commentStartPosition);
- private mergeComments(comments1, comments2);
- private convertTokenLeadingComments(token, commentStartPosition);
- private convertTokenTrailingComments(token, commentStartPosition);
- private convertNodeTrailingComments(node, lastToken, nodeStart);
- private visitIdentifier(token);
- public visitToken(token: ISyntaxToken): IASTToken;
- public visitTokenWorker(token: ISyntaxToken): IASTToken;
- public visitSourceUnit(node: SourceUnitSyntax): SourceUnit;
- public visitExternalModuleReference(node: ExternalModuleReferenceSyntax): ExternalModuleReference;
- public visitModuleNameModuleReference(node: ModuleNameModuleReferenceSyntax): ModuleNameModuleReference;
- public visitClassDeclaration(node: ClassDeclarationSyntax): ClassDeclaration;
- private visitModifiers(modifiers);
- public visitInterfaceDeclaration(node: InterfaceDeclarationSyntax): InterfaceDeclaration;
- public visitHeritageClause(node: HeritageClauseSyntax): HeritageClause;
- public visitModuleDeclaration(node: ModuleDeclarationSyntax): ModuleDeclaration;
- public visitFunctionDeclaration(node: FunctionDeclarationSyntax): FunctionDeclaration;
- public visitEnumDeclaration(node: EnumDeclarationSyntax): EnumDeclaration;
- public visitEnumElement(node: EnumElementSyntax): EnumElement;
- public visitImportDeclaration(node: ImportDeclarationSyntax): ImportDeclaration;
- public visitExportAssignment(node: ExportAssignmentSyntax): ExportAssignment;
- public visitVariableStatement(node: VariableStatementSyntax): VariableStatement;
- public visitVariableDeclaration(node: VariableDeclarationSyntax): VariableDeclaration;
- public visitVariableDeclarator(node: VariableDeclaratorSyntax): VariableDeclarator;
- public visitEqualsValueClause(node: EqualsValueClauseSyntax): EqualsValueClause;
- public visitPrefixUnaryExpression(node: PrefixUnaryExpressionSyntax): PrefixUnaryExpression;
- public visitArrayLiteralExpression(node: ArrayLiteralExpressionSyntax): ArrayLiteralExpression;
- public visitOmittedExpression(node: OmittedExpressionSyntax): OmittedExpression;
- public visitParenthesizedExpression(node: ParenthesizedExpressionSyntax): ParenthesizedExpression;
- public visitSimpleArrowFunctionExpression(node: SimpleArrowFunctionExpressionSyntax): SimpleArrowFunctionExpression;
- public visitParenthesizedArrowFunctionExpression(node: ParenthesizedArrowFunctionExpressionSyntax): ParenthesizedArrowFunctionExpression;
- public visitType(type: ITypeSyntax): AST;
- public visitTypeQuery(node: TypeQuerySyntax): TypeQuery;
- public visitQualifiedName(node: QualifiedNameSyntax): QualifiedName;
- public visitTypeArgumentList(node: TypeArgumentListSyntax): TypeArgumentList;
- public visitConstructorType(node: ConstructorTypeSyntax): ConstructorType;
- public visitFunctionType(node: FunctionTypeSyntax): FunctionType;
- public visitObjectType(node: ObjectTypeSyntax): ObjectType;
- public visitArrayType(node: ArrayTypeSyntax): ArrayType;
- public visitGenericType(node: GenericTypeSyntax): GenericType;
- public visitTypeAnnotation(node: TypeAnnotationSyntax): TypeAnnotation;
- public visitBlock(node: BlockSyntax): Block;
- public visitParameter(node: ParameterSyntax): Parameter;
- public visitMemberAccessExpression(node: MemberAccessExpressionSyntax): MemberAccessExpression;
- public visitPostfixUnaryExpression(node: PostfixUnaryExpressionSyntax): PostfixUnaryExpression;
- public visitElementAccessExpression(node: ElementAccessExpressionSyntax): ElementAccessExpression;
- public visitInvocationExpression(node: InvocationExpressionSyntax): InvocationExpression;
- public visitArgumentList(node: ArgumentListSyntax): ArgumentList;
- public visitBinaryExpression(node: BinaryExpressionSyntax): BinaryExpression;
- public visitConditionalExpression(node: ConditionalExpressionSyntax): ConditionalExpression;
- public visitConstructSignature(node: ConstructSignatureSyntax): ConstructSignature;
- public visitMethodSignature(node: MethodSignatureSyntax): MethodSignature;
- public visitIndexSignature(node: IndexSignatureSyntax): IndexSignature;
- public visitPropertySignature(node: PropertySignatureSyntax): PropertySignature;
- public visitParameterList(node: ParameterListSyntax): ParameterList;
- public visitCallSignature(node: CallSignatureSyntax): CallSignature;
- public visitTypeParameterList(node: TypeParameterListSyntax): TypeParameterList;
- public visitTypeParameter(node: TypeParameterSyntax): TypeParameter;
- public visitConstraint(node: ConstraintSyntax): Constraint;
- public visitIfStatement(node: IfStatementSyntax): IfStatement;
- public visitElseClause(node: ElseClauseSyntax): ElseClause;
- public visitExpressionStatement(node: ExpressionStatementSyntax): ExpressionStatement;
- public visitConstructorDeclaration(node: ConstructorDeclarationSyntax): ConstructorDeclaration;
- public visitIndexMemberDeclaration(node: IndexMemberDeclarationSyntax): IndexMemberDeclaration;
- public visitMemberFunctionDeclaration(node: MemberFunctionDeclarationSyntax): MemberFunctionDeclaration;
- public visitGetAccessor(node: GetAccessorSyntax): GetAccessor;
- public visitSetAccessor(node: SetAccessorSyntax): SetAccessor;
- public visitMemberVariableDeclaration(node: MemberVariableDeclarationSyntax): MemberVariableDeclaration;
- public visitThrowStatement(node: ThrowStatementSyntax): ThrowStatement;
- public visitReturnStatement(node: ReturnStatementSyntax): ReturnStatement;
- public visitObjectCreationExpression(node: ObjectCreationExpressionSyntax): ObjectCreationExpression;
- public visitSwitchStatement(node: SwitchStatementSyntax): SwitchStatement;
- public visitCaseSwitchClause(node: CaseSwitchClauseSyntax): CaseSwitchClause;
- public visitDefaultSwitchClause(node: DefaultSwitchClauseSyntax): DefaultSwitchClause;
- public visitBreakStatement(node: BreakStatementSyntax): BreakStatement;
- public visitContinueStatement(node: ContinueStatementSyntax): ContinueStatement;
- public visitForStatement(node: ForStatementSyntax): ForStatement;
- public visitForInStatement(node: ForInStatementSyntax): ForInStatement;
- public visitWhileStatement(node: WhileStatementSyntax): WhileStatement;
- public visitWithStatement(node: WithStatementSyntax): WithStatement;
- public visitCastExpression(node: CastExpressionSyntax): CastExpression;
- public visitObjectLiteralExpression(node: ObjectLiteralExpressionSyntax): ObjectLiteralExpression;
- public visitSimplePropertyAssignment(node: SimplePropertyAssignmentSyntax): SimplePropertyAssignment;
- public visitFunctionPropertyAssignment(node: FunctionPropertyAssignmentSyntax): FunctionPropertyAssignment;
- public visitFunctionExpression(node: FunctionExpressionSyntax): FunctionExpression;
- public visitEmptyStatement(node: EmptyStatementSyntax): EmptyStatement;
- public visitTryStatement(node: TryStatementSyntax): TryStatement;
- public visitCatchClause(node: CatchClauseSyntax): CatchClause;
- public visitFinallyClause(node: FinallyClauseSyntax): FinallyClause;
- public visitLabeledStatement(node: LabeledStatementSyntax): LabeledStatement;
- public visitDoStatement(node: DoStatementSyntax): DoStatement;
- public visitTypeOfExpression(node: TypeOfExpressionSyntax): TypeOfExpression;
- public visitDeleteExpression(node: DeleteExpressionSyntax): DeleteExpression;
- public visitVoidExpression(node: VoidExpressionSyntax): VoidExpression;
- public visitDebuggerStatement(node: DebuggerStatementSyntax): DebuggerStatement;
- }
-}
-declare module TypeScript {
- interface IASTSpan {
- _start: number;
- _end: number;
- start(): number;
- end(): number;
- }
- class ASTSpan implements IASTSpan {
- public _start: number;
- public _end: number;
- constructor(_start: number, _end: number);
- public start(): number;
- public end(): number;
- }
- function structuralEqualsNotIncludingPosition(ast1: AST, ast2: AST): boolean;
- function structuralEqualsIncludingPosition(ast1: AST, ast2: AST): boolean;
- class AST implements IASTSpan {
- public parent: AST;
- public _start: number;
- public _end: number;
- public _trailingTriviaWidth: number;
- private _astID;
- private _preComments;
- private _postComments;
- constructor();
- public syntaxID(): number;
- public start(): number;
- public end(): number;
- public trailingTriviaWidth(): number;
- public fileName(): string;
- public kind(): SyntaxKind;
- public preComments(): Comment[];
- public postComments(): Comment[];
- public setPreComments(comments: Comment[]): void;
- public setPostComments(comments: Comment[]): void;
- public width(): number;
- public structuralEquals(ast: AST, includingPosition: boolean): boolean;
- public isExpression(): boolean;
- }
- interface IASTToken extends AST {
- text(): string;
- valueText(): string;
- }
- class ISyntaxList2 extends AST {
- private _fileName;
- private members;
- constructor(_fileName: string, members: AST[]);
- public childCount(): number;
- public childAt(index: number): AST;
- public fileName(): string;
- public kind(): SyntaxKind;
- public firstOrDefault(func: (v: AST, index: number) => boolean): AST;
- public lastOrDefault(func: (v: AST, index: number) => boolean): AST;
- public any(func: (v: AST) => boolean): boolean;
- public structuralEquals(ast: ISyntaxList2, includingPosition: boolean): boolean;
- }
- class ISeparatedSyntaxList2 extends AST {
- private _fileName;
- private members;
- private _separatorCount;
- constructor(_fileName: string, members: AST[], _separatorCount: number);
- public nonSeparatorCount(): number;
- public separatorCount(): number;
- public nonSeparatorAt(index: number): AST;
- public nonSeparatorIndexOf(ast: AST): number;
- public fileName(): string;
- public kind(): SyntaxKind;
- public structuralEquals(ast: ISeparatedSyntaxList2, includingPosition: boolean): boolean;
- }
- class SourceUnit extends AST {
- public moduleElements: ISyntaxList2;
- public endOfFileTokenLeadingComments: Comment[];
- private _fileName;
- constructor(moduleElements: ISyntaxList2, endOfFileTokenLeadingComments: Comment[], _fileName: string);
- public fileName(): string;
- public kind(): SyntaxKind;
- public structuralEquals(ast: SourceUnit, includingPosition: boolean): boolean;
- }
- class Identifier extends AST implements IASTToken {
- private _text;
- private _valueText;
- constructor(_text: string);
- public text(): string;
- public valueText(): string;
- public kind(): SyntaxKind;
- public structuralEquals(ast: Identifier, includingPosition: boolean): boolean;
- public isExpression(): boolean;
- }
- class LiteralExpression extends AST {
- private _nodeType;
- private _text;
- private _valueText;
- constructor(_nodeType: SyntaxKind, _text: string, _valueText: string);
- public text(): string;
- public valueText(): string;
- public kind(): SyntaxKind;
- public structuralEquals(ast: ParenthesizedExpression, includingPosition: boolean): boolean;
- public isExpression(): boolean;
- }
- class ThisExpression extends AST implements IASTToken {
- private _text;
- private _valueText;
- constructor(_text: string, _valueText: string);
- public text(): string;
- public valueText(): string;
- public kind(): SyntaxKind;
- public structuralEquals(ast: ParenthesizedExpression, includingPosition: boolean): boolean;
- public isExpression(): boolean;
- }
- class SuperExpression extends AST implements IASTToken {
- private _text;
- private _valueText;
- constructor(_text: string, _valueText: string);
- public text(): string;
- public valueText(): string;
- public kind(): SyntaxKind;
- public structuralEquals(ast: ParenthesizedExpression, includingPosition: boolean): boolean;
- public isExpression(): boolean;
- }
- class NumericLiteral extends AST implements IASTToken {
- private _value;
- private _text;
- private _valueText;
- constructor(_value: number, _text: string, _valueText: string);
- public text(): string;
- public valueText(): string;
- public value(): any;
- public kind(): SyntaxKind;
- public structuralEquals(ast: NumericLiteral, includingPosition: boolean): boolean;
- public isExpression(): boolean;
- }
- class RegularExpressionLiteral extends AST implements IASTToken {
- private _text;
- private _valueText;
- constructor(_text: string, _valueText: string);
- public text(): string;
- public valueText(): string;
- public kind(): SyntaxKind;
- public isExpression(): boolean;
- }
- class StringLiteral extends AST implements IASTToken {
- private _text;
- private _valueText;
- constructor(_text: string, _valueText: string);
- public text(): string;
- public valueText(): string;
- public kind(): SyntaxKind;
- public structuralEquals(ast: StringLiteral, includingPosition: boolean): boolean;
- public isExpression(): boolean;
- }
- class TypeAnnotation extends AST {
- public type: AST;
- constructor(type: AST);
- public kind(): SyntaxKind;
- }
- class BuiltInType extends AST implements IASTToken {
- private _nodeType;
- private _text;
- private _valueText;
- constructor(_nodeType: SyntaxKind, _text: string, _valueText: string);
- public text(): string;
- public valueText(): string;
- public kind(): SyntaxKind;
- }
- class ExternalModuleReference extends AST {
- public stringLiteral: StringLiteral;
- constructor(stringLiteral: StringLiteral);
- public kind(): SyntaxKind;
- }
- class ModuleNameModuleReference extends AST {
- public moduleName: AST;
- constructor(moduleName: AST);
- public kind(): SyntaxKind;
- }
- class ImportDeclaration extends AST {
- public modifiers: PullElementFlags[];
- public identifier: Identifier;
- public moduleReference: AST;
- constructor(modifiers: PullElementFlags[], identifier: Identifier, moduleReference: AST);
- public kind(): SyntaxKind;
- public structuralEquals(ast: ImportDeclaration, includingPosition: boolean): boolean;
- }
- class ExportAssignment extends AST {
- public identifier: Identifier;
- constructor(identifier: Identifier);
- public kind(): SyntaxKind;
- public structuralEquals(ast: ExportAssignment, includingPosition: boolean): boolean;
- }
- class TypeParameterList extends AST {
- public typeParameters: ISeparatedSyntaxList2;
- constructor(typeParameters: ISeparatedSyntaxList2);
- public kind(): SyntaxKind;
- }
- class ClassDeclaration extends AST {
- public modifiers: PullElementFlags[];
- public identifier: Identifier;
- public typeParameterList: TypeParameterList;
- public heritageClauses: ISyntaxList2;
- public classElements: ISyntaxList2;
- public closeBraceToken: ASTSpan;
- constructor(modifiers: PullElementFlags[], identifier: Identifier, typeParameterList: TypeParameterList, heritageClauses: ISyntaxList2, classElements: ISyntaxList2, closeBraceToken: ASTSpan);
- public kind(): SyntaxKind;
- public structuralEquals(ast: ClassDeclaration, includingPosition: boolean): boolean;
- }
- class InterfaceDeclaration extends AST {
- public modifiers: PullElementFlags[];
- public identifier: Identifier;
- public typeParameterList: TypeParameterList;
- public heritageClauses: ISyntaxList2;
- public body: ObjectType;
- constructor(modifiers: PullElementFlags[], identifier: Identifier, typeParameterList: TypeParameterList, heritageClauses: ISyntaxList2, body: ObjectType);
- public kind(): SyntaxKind;
- public structuralEquals(ast: InterfaceDeclaration, includingPosition: boolean): boolean;
- }
- class HeritageClause extends AST {
- private _nodeType;
- public typeNames: ISeparatedSyntaxList2;
- constructor(_nodeType: SyntaxKind, typeNames: ISeparatedSyntaxList2);
- public kind(): SyntaxKind;
- public structuralEquals(ast: HeritageClause, includingPosition: boolean): boolean;
- }
- class ModuleDeclaration extends AST {
- public modifiers: PullElementFlags[];
- public name: AST;
- public stringLiteral: StringLiteral;
- public moduleElements: ISyntaxList2;
- public endingToken: ASTSpan;
- constructor(modifiers: PullElementFlags[], name: AST, stringLiteral: StringLiteral, moduleElements: ISyntaxList2, endingToken: ASTSpan);
- public kind(): SyntaxKind;
- public structuralEquals(ast: ModuleDeclaration, includingPosition: boolean): boolean;
- }
- class FunctionDeclaration extends AST {
- public modifiers: PullElementFlags[];
- public identifier: Identifier;
- public callSignature: CallSignature;
- public block: Block;
- constructor(modifiers: PullElementFlags[], identifier: Identifier, callSignature: CallSignature, block: Block);
- public kind(): SyntaxKind;
- public structuralEquals(ast: FunctionDeclaration, includingPosition: boolean): boolean;
- }
- class VariableStatement extends AST {
- public modifiers: PullElementFlags[];
- public declaration: VariableDeclaration;
- constructor(modifiers: PullElementFlags[], declaration: VariableDeclaration);
- public kind(): SyntaxKind;
- public structuralEquals(ast: VariableStatement, includingPosition: boolean): boolean;
- }
- class VariableDeclaration extends AST {
- public declarators: ISeparatedSyntaxList2;
- constructor(declarators: ISeparatedSyntaxList2);
- public kind(): SyntaxKind;
- public structuralEquals(ast: VariableDeclaration, includingPosition: boolean): boolean;
- }
- class VariableDeclarator extends AST {
- public propertyName: IASTToken;
- public typeAnnotation: TypeAnnotation;
- public equalsValueClause: EqualsValueClause;
- constructor(propertyName: IASTToken, typeAnnotation: TypeAnnotation, equalsValueClause: EqualsValueClause);
- public kind(): SyntaxKind;
- }
- class EqualsValueClause extends AST {
- public value: AST;
- constructor(value: AST);
- public kind(): SyntaxKind;
- }
- class PrefixUnaryExpression extends AST {
- private _nodeType;
- public operand: AST;
- constructor(_nodeType: SyntaxKind, operand: AST);
- public kind(): SyntaxKind;
- public structuralEquals(ast: PrefixUnaryExpression, includingPosition: boolean): boolean;
- public isExpression(): boolean;
- }
- class ArrayLiteralExpression extends AST {
- public expressions: ISeparatedSyntaxList2;
- constructor(expressions: ISeparatedSyntaxList2);
- public kind(): SyntaxKind;
- public structuralEquals(ast: ArrayLiteralExpression, includingPosition: boolean): boolean;
- public isExpression(): boolean;
- }
- class OmittedExpression extends AST {
- public kind(): SyntaxKind;
- public structuralEquals(ast: CatchClause, includingPosition: boolean): boolean;
- public isExpression(): boolean;
- }
- class ParenthesizedExpression extends AST {
- public openParenTrailingComments: Comment[];
- public expression: AST;
- constructor(openParenTrailingComments: Comment[], expression: AST);
- public kind(): SyntaxKind;
- public structuralEquals(ast: ParenthesizedExpression, includingPosition: boolean): boolean;
- public isExpression(): boolean;
- }
- interface ICallExpression extends IASTSpan {
- expression: AST;
- argumentList: ArgumentList;
- }
- class SimpleArrowFunctionExpression extends AST {
- public identifier: Identifier;
- public block: Block;
- public expression: AST;
- constructor(identifier: Identifier, block: Block, expression: AST);
- public kind(): SyntaxKind;
- public isExpression(): boolean;
- }
- class ParenthesizedArrowFunctionExpression extends AST {
- public callSignature: CallSignature;
- public block: Block;
- public expression: AST;
- constructor(callSignature: CallSignature, block: Block, expression: AST);
- public kind(): SyntaxKind;
- public isExpression(): boolean;
- }
- class QualifiedName extends AST {
- public left: AST;
- public right: Identifier;
- constructor(left: AST, right: Identifier);
- public kind(): SyntaxKind;
- public structuralEquals(ast: QualifiedName, includingPosition: boolean): boolean;
- }
- class ParameterList extends AST {
- public openParenTrailingComments: Comment[];
- public parameters: ISeparatedSyntaxList2;
- constructor(openParenTrailingComments: Comment[], parameters: ISeparatedSyntaxList2);
- public kind(): SyntaxKind;
- }
- class ConstructorType extends AST {
- public typeParameterList: TypeParameterList;
- public parameterList: ParameterList;
- public type: AST;
- constructor(typeParameterList: TypeParameterList, parameterList: ParameterList, type: AST);
- public kind(): SyntaxKind;
- }
- class FunctionType extends AST {
- public typeParameterList: TypeParameterList;
- public parameterList: ParameterList;
- public type: AST;
- constructor(typeParameterList: TypeParameterList, parameterList: ParameterList, type: AST);
- public kind(): SyntaxKind;
- }
- class ObjectType extends AST {
- public typeMembers: ISeparatedSyntaxList2;
- constructor(typeMembers: ISeparatedSyntaxList2);
- public kind(): SyntaxKind;
- public structuralEquals(ast: ObjectType, includingPosition: boolean): boolean;
- }
- class ArrayType extends AST {
- public type: AST;
- constructor(type: AST);
- public kind(): SyntaxKind;
- public structuralEquals(ast: ArrayType, includingPosition: boolean): boolean;
- }
- class TypeArgumentList extends AST {
- public typeArguments: ISeparatedSyntaxList2;
- constructor(typeArguments: ISeparatedSyntaxList2);
- public kind(): SyntaxKind;
- }
- class GenericType extends AST {
- public name: AST;
- public typeArgumentList: TypeArgumentList;
- constructor(name: AST, typeArgumentList: TypeArgumentList);
- public kind(): SyntaxKind;
- public structuralEquals(ast: GenericType, includingPosition: boolean): boolean;
- }
- class TypeQuery extends AST {
- public name: AST;
- constructor(name: AST);
- public kind(): SyntaxKind;
- public structuralEquals(ast: TypeQuery, includingPosition: boolean): boolean;
- }
- class Block extends AST {
- public statements: ISyntaxList2;
- public closeBraceLeadingComments: Comment[];
- public closeBraceToken: IASTSpan;
- constructor(statements: ISyntaxList2, closeBraceLeadingComments: Comment[], closeBraceToken: IASTSpan);
- public kind(): SyntaxKind;
- public structuralEquals(ast: Block, includingPosition: boolean): boolean;
- }
- class Parameter extends AST {
- public dotDotDotToken: ASTSpan;
- public modifiers: PullElementFlags[];
- public identifier: Identifier;
- public questionToken: ASTSpan;
- public typeAnnotation: TypeAnnotation;
- public equalsValueClause: EqualsValueClause;
- constructor(dotDotDotToken: ASTSpan, modifiers: PullElementFlags[], identifier: Identifier, questionToken: ASTSpan, typeAnnotation: TypeAnnotation, equalsValueClause: EqualsValueClause);
- public kind(): SyntaxKind;
- }
- class MemberAccessExpression extends AST {
- public expression: AST;
- public name: Identifier;
- constructor(expression: AST, name: Identifier);
- public kind(): SyntaxKind;
- public structuralEquals(ast: MemberAccessExpression, includingPosition: boolean): boolean;
- public isExpression(): boolean;
- }
- class PostfixUnaryExpression extends AST {
- private _nodeType;
- public operand: AST;
- constructor(_nodeType: SyntaxKind, operand: AST);
- public kind(): SyntaxKind;
- public structuralEquals(ast: PostfixUnaryExpression, includingPosition: boolean): boolean;
- public isExpression(): boolean;
- }
- class ElementAccessExpression extends AST {
- public expression: AST;
- public argumentExpression: AST;
- constructor(expression: AST, argumentExpression: AST);
- public kind(): SyntaxKind;
- public structuralEquals(ast: ElementAccessExpression, includingPosition: boolean): boolean;
- public isExpression(): boolean;
- }
- class InvocationExpression extends AST implements ICallExpression {
- public expression: AST;
- public argumentList: ArgumentList;
- constructor(expression: AST, argumentList: ArgumentList);
- public kind(): SyntaxKind;
- public structuralEquals(ast: InvocationExpression, includingPosition: boolean): boolean;
- public isExpression(): boolean;
- }
- class ArgumentList extends AST {
- public typeArgumentList: TypeArgumentList;
- public closeParenToken: ASTSpan;
- public arguments: ISeparatedSyntaxList2;
- constructor(typeArgumentList: TypeArgumentList, _arguments: ISeparatedSyntaxList2, closeParenToken: ASTSpan);
- public kind(): SyntaxKind;
- }
- class BinaryExpression extends AST {
- private _nodeType;
- public left: AST;
- public right: AST;
- constructor(_nodeType: SyntaxKind, left: AST, right: AST);
- public kind(): SyntaxKind;
- public structuralEquals(ast: BinaryExpression, includingPosition: boolean): boolean;
- public isExpression(): boolean;
- }
- class ConditionalExpression extends AST {
- public condition: AST;
- public whenTrue: AST;
- public whenFalse: AST;
- constructor(condition: AST, whenTrue: AST, whenFalse: AST);
- public kind(): SyntaxKind;
- public structuralEquals(ast: ConditionalExpression, includingPosition: boolean): boolean;
- public isExpression(): boolean;
- }
- class ConstructSignature extends AST {
- public callSignature: CallSignature;
- constructor(callSignature: CallSignature);
- public kind(): SyntaxKind;
- }
- class MethodSignature extends AST {
- public propertyName: IASTToken;
- public questionToken: ASTSpan;
- public callSignature: CallSignature;
- constructor(propertyName: IASTToken, questionToken: ASTSpan, callSignature: CallSignature);
- public kind(): SyntaxKind;
- }
- class IndexSignature extends AST {
- public parameter: Parameter;
- public typeAnnotation: TypeAnnotation;
- constructor(parameter: Parameter, typeAnnotation: TypeAnnotation);
- public kind(): SyntaxKind;
- }
- class PropertySignature extends AST {
- public propertyName: IASTToken;
- public questionToken: ASTSpan;
- public typeAnnotation: TypeAnnotation;
- constructor(propertyName: IASTToken, questionToken: ASTSpan, typeAnnotation: TypeAnnotation);
- public kind(): SyntaxKind;
- }
- class CallSignature extends AST {
- public typeParameterList: TypeParameterList;
- public parameterList: ParameterList;
- public typeAnnotation: TypeAnnotation;
- constructor(typeParameterList: TypeParameterList, parameterList: ParameterList, typeAnnotation: TypeAnnotation);
- public kind(): SyntaxKind;
- }
- class TypeParameter extends AST {
- public identifier: Identifier;
- public constraint: Constraint;
- constructor(identifier: Identifier, constraint: Constraint);
- public kind(): SyntaxKind;
- public structuralEquals(ast: TypeParameter, includingPosition: boolean): boolean;
- }
- class Constraint extends AST {
- public type: AST;
- constructor(type: AST);
- public kind(): SyntaxKind;
- }
- class ElseClause extends AST {
- public statement: AST;
- constructor(statement: AST);
- public kind(): SyntaxKind;
- public structuralEquals(ast: ElseClause, includingPosition: boolean): boolean;
- }
- class IfStatement extends AST {
- public condition: AST;
- public statement: AST;
- public elseClause: ElseClause;
- constructor(condition: AST, statement: AST, elseClause: ElseClause);
- public kind(): SyntaxKind;
- public structuralEquals(ast: IfStatement, includingPosition: boolean): boolean;
- }
- class ExpressionStatement extends AST {
- public expression: AST;
- constructor(expression: AST);
- public kind(): SyntaxKind;
- public structuralEquals(ast: ExpressionStatement, includingPosition: boolean): boolean;
- }
- class ConstructorDeclaration extends AST {
- public callSignature: CallSignature;
- public block: Block;
- constructor(callSignature: CallSignature, block: Block);
- public kind(): SyntaxKind;
- }
- class MemberFunctionDeclaration extends AST {
- public modifiers: PullElementFlags[];
- public propertyName: IASTToken;
- public callSignature: CallSignature;
- public block: Block;
- constructor(modifiers: PullElementFlags[], propertyName: IASTToken, callSignature: CallSignature, block: Block);
- public kind(): SyntaxKind;
- }
- class GetAccessor extends AST {
- public modifiers: PullElementFlags[];
- public propertyName: IASTToken;
- public parameterList: ParameterList;
- public typeAnnotation: TypeAnnotation;
- public block: Block;
- constructor(modifiers: PullElementFlags[], propertyName: IASTToken, parameterList: ParameterList, typeAnnotation: TypeAnnotation, block: Block);
- public kind(): SyntaxKind;
- }
- class SetAccessor extends AST {
- public modifiers: PullElementFlags[];
- public propertyName: IASTToken;
- public parameterList: ParameterList;
- public block: Block;
- constructor(modifiers: PullElementFlags[], propertyName: IASTToken, parameterList: ParameterList, block: Block);
- public kind(): SyntaxKind;
- }
- class MemberVariableDeclaration extends AST {
- public modifiers: PullElementFlags[];
- public variableDeclarator: VariableDeclarator;
- constructor(modifiers: PullElementFlags[], variableDeclarator: VariableDeclarator);
- public kind(): SyntaxKind;
- }
- class IndexMemberDeclaration extends AST {
- public indexSignature: IndexSignature;
- constructor(indexSignature: IndexSignature);
- public kind(): SyntaxKind;
- }
- class ThrowStatement extends AST {
- public expression: AST;
- constructor(expression: AST);
- public kind(): SyntaxKind;
- public structuralEquals(ast: ThrowStatement, includingPosition: boolean): boolean;
- }
- class ReturnStatement extends AST {
- public expression: AST;
- constructor(expression: AST);
- public kind(): SyntaxKind;
- public structuralEquals(ast: ReturnStatement, includingPosition: boolean): boolean;
- }
- class ObjectCreationExpression extends AST implements ICallExpression {
- public expression: AST;
- public argumentList: ArgumentList;
- constructor(expression: AST, argumentList: ArgumentList);
- public kind(): SyntaxKind;
- public structuralEquals(ast: ObjectCreationExpression, includingPosition: boolean): boolean;
- public isExpression(): boolean;
- }
- class SwitchStatement extends AST {
- public expression: AST;
- public closeParenToken: ASTSpan;
- public switchClauses: ISyntaxList2;
- constructor(expression: AST, closeParenToken: ASTSpan, switchClauses: ISyntaxList2);
- public kind(): SyntaxKind;
- public structuralEquals(ast: SwitchStatement, includingPosition: boolean): boolean;
- }
- class CaseSwitchClause extends AST {
- public expression: AST;
- public statements: ISyntaxList2;
- constructor(expression: AST, statements: ISyntaxList2);
- public kind(): SyntaxKind;
- public structuralEquals(ast: CaseSwitchClause, includingPosition: boolean): boolean;
- }
- class DefaultSwitchClause extends AST {
- public statements: ISyntaxList2;
- constructor(statements: ISyntaxList2);
- public kind(): SyntaxKind;
- public structuralEquals(ast: DefaultSwitchClause, includingPosition: boolean): boolean;
- }
- class BreakStatement extends AST {
- public identifier: Identifier;
- constructor(identifier: Identifier);
- public kind(): SyntaxKind;
- public structuralEquals(ast: BreakStatement, includingPosition: boolean): boolean;
- }
- class ContinueStatement extends AST {
- public identifier: Identifier;
- constructor(identifier: Identifier);
- public kind(): SyntaxKind;
- public structuralEquals(ast: ContinueStatement, includingPosition: boolean): boolean;
- }
- class ForStatement extends AST {
- public variableDeclaration: VariableDeclaration;
- public initializer: AST;
- public condition: AST;
- public incrementor: AST;
- public statement: AST;
- constructor(variableDeclaration: VariableDeclaration, initializer: AST, condition: AST, incrementor: AST, statement: AST);
- public kind(): SyntaxKind;
- public structuralEquals(ast: ForStatement, includingPosition: boolean): boolean;
- }
- class ForInStatement extends AST {
- public variableDeclaration: VariableDeclaration;
- public left: AST;
- public expression: AST;
- public statement: AST;
- constructor(variableDeclaration: VariableDeclaration, left: AST, expression: AST, statement: AST);
- public kind(): SyntaxKind;
- public structuralEquals(ast: ForInStatement, includingPosition: boolean): boolean;
- }
- class WhileStatement extends AST {
- public condition: AST;
- public statement: AST;
- constructor(condition: AST, statement: AST);
- public kind(): SyntaxKind;
- public structuralEquals(ast: WhileStatement, includingPosition: boolean): boolean;
- }
- class WithStatement extends AST {
- public condition: AST;
- public statement: AST;
- constructor(condition: AST, statement: AST);
- public kind(): SyntaxKind;
- public structuralEquals(ast: WithStatement, includingPosition: boolean): boolean;
- }
- class EnumDeclaration extends AST {
- public modifiers: PullElementFlags[];
- public identifier: Identifier;
- public enumElements: ISeparatedSyntaxList2;
- constructor(modifiers: PullElementFlags[], identifier: Identifier, enumElements: ISeparatedSyntaxList2);
- public kind(): SyntaxKind;
- }
- class EnumElement extends AST {
- public propertyName: IASTToken;
- public equalsValueClause: EqualsValueClause;
- constructor(propertyName: IASTToken, equalsValueClause: EqualsValueClause);
- public kind(): SyntaxKind;
- }
- class CastExpression extends AST {
- public type: AST;
- public expression: AST;
- constructor(type: AST, expression: AST);
- public kind(): SyntaxKind;
- public structuralEquals(ast: CastExpression, includingPosition: boolean): boolean;
- public isExpression(): boolean;
- }
- class ObjectLiteralExpression extends AST {
- public propertyAssignments: ISeparatedSyntaxList2;
- constructor(propertyAssignments: ISeparatedSyntaxList2);
- public kind(): SyntaxKind;
- public structuralEquals(ast: ObjectLiteralExpression, includingPosition: boolean): boolean;
- public isExpression(): boolean;
- }
- class SimplePropertyAssignment extends AST {
- public propertyName: Identifier;
- public expression: AST;
- constructor(propertyName: Identifier, expression: AST);
- public kind(): SyntaxKind;
- }
- class FunctionPropertyAssignment extends AST {
- public propertyName: Identifier;
- public callSignature: CallSignature;
- public block: Block;
- constructor(propertyName: Identifier, callSignature: CallSignature, block: Block);
- public kind(): SyntaxKind;
- }
- class FunctionExpression extends AST {
- public identifier: Identifier;
- public callSignature: CallSignature;
- public block: Block;
- constructor(identifier: Identifier, callSignature: CallSignature, block: Block);
- public kind(): SyntaxKind;
- public isExpression(): boolean;
- }
- class EmptyStatement extends AST {
- public kind(): SyntaxKind;
- public structuralEquals(ast: CatchClause, includingPosition: boolean): boolean;
- }
- class TryStatement extends AST {
- public block: Block;
- public catchClause: CatchClause;
- public finallyClause: FinallyClause;
- constructor(block: Block, catchClause: CatchClause, finallyClause: FinallyClause);
- public kind(): SyntaxKind;
- public structuralEquals(ast: TryStatement, includingPosition: boolean): boolean;
- }
- class CatchClause extends AST {
- public identifier: Identifier;
- public typeAnnotation: TypeAnnotation;
- public block: Block;
- constructor(identifier: Identifier, typeAnnotation: TypeAnnotation, block: Block);
- public kind(): SyntaxKind;
- public structuralEquals(ast: CatchClause, includingPosition: boolean): boolean;
- }
- class FinallyClause extends AST {
- public block: Block;
- constructor(block: Block);
- public kind(): SyntaxKind;
- public structuralEquals(ast: CatchClause, includingPosition: boolean): boolean;
- }
- class LabeledStatement extends AST {
- public identifier: Identifier;
- public statement: AST;
- constructor(identifier: Identifier, statement: AST);
- public kind(): SyntaxKind;
- public structuralEquals(ast: LabeledStatement, includingPosition: boolean): boolean;
- }
- class DoStatement extends AST {
- public statement: AST;
- public whileKeyword: ASTSpan;
- public condition: AST;
- constructor(statement: AST, whileKeyword: ASTSpan, condition: AST);
- public kind(): SyntaxKind;
- public structuralEquals(ast: DoStatement, includingPosition: boolean): boolean;
- }
- class TypeOfExpression extends AST {
- public expression: AST;
- constructor(expression: AST);
- public kind(): SyntaxKind;
- public structuralEquals(ast: TypeOfExpression, includingPosition: boolean): boolean;
- public isExpression(): boolean;
- }
- class DeleteExpression extends AST {
- public expression: AST;
- constructor(expression: AST);
- public kind(): SyntaxKind;
- public structuralEquals(ast: DeleteExpression, includingPosition: boolean): boolean;
- public isExpression(): boolean;
- }
- class VoidExpression extends AST {
- public expression: AST;
- constructor(expression: AST);
- public kind(): SyntaxKind;
- public structuralEquals(ast: VoidExpression, includingPosition: boolean): boolean;
- public isExpression(): boolean;
- }
- class DebuggerStatement extends AST {
- public kind(): SyntaxKind;
- }
- class Comment {
- private _trivia;
- public endsLine: boolean;
- public _start: number;
- public _end: number;
- constructor(_trivia: ISyntaxTrivia, endsLine: boolean, _start: number, _end: number);
- public start(): number;
- public end(): number;
- public fullText(): string;
- public kind(): SyntaxKind;
- public structuralEquals(ast: Comment, includingPosition: boolean): boolean;
- }
-}
-declare module TypeScript.Services {
- enum EndOfLineState {
- Start = 0,
- InMultiLineCommentTrivia = 1,
- InSingleQuoteStringLiteral = 2,
- InDoubleQuoteStringLiteral = 3,
- }
- enum TokenClass {
- Punctuation = 0,
- Keyword = 1,
- Operator = 2,
- Comment = 3,
- Whitespace = 4,
- Identifier = 5,
- NumberLiteral = 6,
- StringLiteral = 7,
- RegExpLiteral = 8,
- }
- class Classifier {
- public host: IClassifierHost;
- private scanner;
- private characterWindow;
- private diagnostics;
- constructor(host: IClassifierHost);
- public getClassificationsForLine(text: string, lexState: EndOfLineState): ClassificationResult;
- private processToken(text, offset, token, result);
- private processTriviaList(text, offset, triviaList, result);
- private addResult(text, offset, result, length, kind);
- private classFromKind(kind);
- }
- interface IClassifierHost extends ILogger {
- }
- class ClassificationResult {
- public finalLexState: EndOfLineState;
- public entries: ClassificationInfo[];
- constructor();
- }
- class ClassificationInfo {
- public length: number;
- public classification: TokenClass;
- constructor(length: number, classification: TokenClass);
- }
-}
-declare module TypeScript.Services {
- interface ILanguageServicesDiagnostics {
- log(content: string): void;
- }
-}
-declare module TypeScript.Services {
- interface ILanguageServiceHost extends ILogger, IReferenceResolverHost {
- getCompilationSettings(): CompilationSettings;
- getScriptFileNames(): string[];
- getScriptVersion(fileName: string): number;
- getScriptIsOpen(fileName: string): boolean;
- getScriptByteOrderMark(fileName: string): ByteOrderMark;
- getScriptSnapshot(fileName: string): IScriptSnapshot;
- getDiagnosticsObject(): ILanguageServicesDiagnostics;
- getLocalizedDiagnosticMessages(): any;
- }
- interface ILanguageService {
- refresh(): void;
- cleanupSemanticCache(): void;
- getSyntacticDiagnostics(fileName: string): Diagnostic[];
- getSemanticDiagnostics(fileName: string): Diagnostic[];
- getCompilerOptionsDiagnostics(): Diagnostic[];
- getCompletionsAtPosition(fileName: string, position: number, isMemberCompletion: boolean): CompletionInfo;
- getCompletionEntryDetails(fileName: string, position: number, entryName: string): CompletionEntryDetails;
- getTypeAtPosition(fileName: string, position: number): TypeInfo;
- getNameOrDottedNameSpan(fileName: string, startPos: number, endPos: number): SpanInfo;
- getBreakpointStatementAtPosition(fileName: string, position: number): SpanInfo;
- getSignatureAtPosition(fileName: string, position: number): SignatureInfo;
- getDefinitionAtPosition(fileName: string, position: number): DefinitionInfo[];
- getReferencesAtPosition(fileName: string, position: number): ReferenceEntry[];
- getOccurrencesAtPosition(fileName: string, position: number): ReferenceEntry[];
- getImplementorsAtPosition(fileName: string, position: number): ReferenceEntry[];
- getNavigateToItems(searchValue: string): NavigateToItem[];
- getScriptLexicalStructure(fileName: string): NavigateToItem[];
- getOutliningRegions(fileName: string): TextSpan[];
- getBraceMatchingAtPosition(fileName: string, position: number): TextSpan[];
- getIndentationAtPosition(fileName: string, position: number, options: EditorOptions): number;
- getFormattingEditsForRange(fileName: string, minChar: number, limChar: number, options: FormatCodeOptions): TextEdit[];
- getFormattingEditsForDocument(fileName: string, minChar: number, limChar: number, options: FormatCodeOptions): TextEdit[];
- getFormattingEditsOnPaste(fileName: string, minChar: number, limChar: number, options: FormatCodeOptions): TextEdit[];
- getFormattingEditsAfterKeystroke(fileName: string, position: number, key: string, options: FormatCodeOptions): TextEdit[];
- getEmitOutput(fileName: string): EmitOutput;
- getSyntaxTree(fileName: string): SyntaxTree;
- }
- function logInternalError(logger: ILogger, err: Error): void;
- class ReferenceEntry {
- public fileName: string;
- public minChar: number;
- public limChar: number;
- public isWriteAccess: boolean;
- constructor(fileName: string, minChar: number, limChar: number, isWriteAccess: boolean);
- }
- class NavigateToItem {
- public name: string;
- public kind: string;
- public kindModifiers: string;
- public matchKind: string;
- public fileName: string;
- public minChar: number;
- public limChar: number;
- public additionalSpans: SpanInfo[];
- public containerName: string;
- public containerKind: string;
- }
- class TextEdit {
- public minChar: number;
- public limChar: number;
- public text: string;
- constructor(minChar: number, limChar: number, text: string);
- static createInsert(pos: number, text: string): TextEdit;
- static createDelete(minChar: number, limChar: number): TextEdit;
- static createReplace(minChar: number, limChar: number, text: string): TextEdit;
- }
- class EditorOptions {
- public IndentSize: number;
- public TabSize: number;
- public NewLineCharacter: string;
- public ConvertTabsToSpaces: boolean;
- static clone(objectToClone: EditorOptions): EditorOptions;
- }
- class FormatCodeOptions extends EditorOptions {
- public InsertSpaceAfterCommaDelimiter: boolean;
- public InsertSpaceAfterSemicolonInForStatements: boolean;
- public InsertSpaceBeforeAndAfterBinaryOperators: boolean;
- public InsertSpaceAfterKeywordsInControlFlowStatements: boolean;
- public InsertSpaceAfterFunctionKeywordForAnonymousFunctions: boolean;
- public InsertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis: boolean;
- public PlaceOpenBraceOnNewLineForFunctions: boolean;
- public PlaceOpenBraceOnNewLineForControlBlocks: boolean;
- static clone(objectToClone: FormatCodeOptions): FormatCodeOptions;
- }
- class DefinitionInfo {
- public fileName: string;
- public minChar: number;
- public limChar: number;
- public kind: string;
- public name: string;
- public containerKind: string;
- public containerName: string;
- constructor(fileName: string, minChar: number, limChar: number, kind: string, name: string, containerKind: string, containerName: string);
- }
- class TypeInfo {
- public memberName: MemberName;
- public docComment: string;
- public fullSymbolName: string;
- public kind: string;
- public minChar: number;
- public limChar: number;
- constructor(memberName: MemberName, docComment: string, fullSymbolName: string, kind: string, minChar: number, limChar: number);
- }
- class SpanInfo {
- public minChar: number;
- public limChar: number;
- public text: string;
- constructor(minChar: number, limChar: number, text?: string);
- }
- class SignatureInfo {
- public actual: ActualSignatureInfo;
- public formal: FormalSignatureItemInfo[];
- public activeFormal: number;
- }
- class FormalSignatureItemInfo {
- public signatureInfo: string;
- public typeParameters: FormalTypeParameterInfo[];
- public parameters: FormalParameterInfo[];
- public docComment: string;
- }
- class FormalTypeParameterInfo {
- public name: string;
- public docComment: string;
- public minChar: number;
- public limChar: number;
- }
- class FormalParameterInfo {
- public name: string;
- public isVariable: boolean;
- public docComment: string;
- public minChar: number;
- public limChar: number;
- }
- class ActualSignatureInfo {
- public parameterMinChar: number;
- public parameterLimChar: number;
- public currentParameterIsTypeParameter: boolean;
- public currentParameter: number;
- }
- class CompletionInfo {
- public maybeInaccurate: boolean;
- public isMemberCompletion: boolean;
- public entries: CompletionEntry[];
- }
- interface CompletionEntry {
- name: string;
- kind: string;
- kindModifiers: string;
- }
- interface CompletionEntryDetails {
- name: string;
- kind: string;
- kindModifiers: string;
- type: string;
- fullSymbolName: string;
- docComment: string;
- }
- class ScriptElementKind {
- static unknown: string;
- static keyword: string;
- static scriptElement: string;
- static moduleElement: string;
- static classElement: string;
- static interfaceElement: string;
- static enumElement: string;
- static variableElement: string;
- static localVariableElement: string;
- static functionElement: string;
- static localFunctionElement: string;
- static memberFunctionElement: string;
- static memberGetAccessorElement: string;
- static memberSetAccessorElement: string;
- static memberVariableElement: string;
- static constructorImplementationElement: string;
- static callSignatureElement: string;
- static indexSignatureElement: string;
- static constructSignatureElement: string;
- static parameterElement: string;
- static typeParameterElement: string;
- static primitiveType: string;
- }
- class ScriptElementKindModifier {
- static none: string;
- static publicMemberModifier: string;
- static privateMemberModifier: string;
- static exportedModifier: string;
- static ambientModifier: string;
- static staticModifier: string;
- }
- class MatchKind {
- static none: string;
- static exact: string;
- static subString: string;
- static prefix: string;
- }
- class DiagnosticCategory {
- static none: string;
- static error: string;
- static warning: string;
- static message: string;
- }
-}
-declare module TypeScript.Services.Formatting {
- interface ITextSnapshot {
- getText(span: TextSpan): string;
- getLineNumberFromPosition(position: number): number;
- getLineFromPosition(position: number): ITextSnapshotLine;
- getLineFromLineNumber(lineNumber: number): ITextSnapshotLine;
- }
- class TextSnapshot implements ITextSnapshot {
- private snapshot;
- private lines;
- constructor(snapshot: ISimpleText);
- public getText(span: TextSpan): string;
- public getLineNumberFromPosition(position: number): number;
- public getLineFromPosition(position: number): ITextSnapshotLine;
- public getLineFromLineNumber(lineNumber: number): ITextSnapshotLine;
- private getLineFromLineNumberWorker(lineNumber);
- }
-}
-declare module TypeScript.Services.Formatting {
- interface ITextSnapshotLine {
- snapshot(): ITextSnapshot;
- start(): SnapshotPoint;
- startPosition(): number;
- end(): SnapshotPoint;
- endPosition(): number;
- endIncludingLineBreak(): SnapshotPoint;
- endIncludingLineBreakPosition(): number;
- length(): number;
- lineNumber(): number;
- getText(): string;
- }
- class TextSnapshotLine implements ITextSnapshotLine {
- private _snapshot;
- private _lineNumber;
- private _start;
- private _end;
- private _lineBreak;
- constructor(_snapshot: ITextSnapshot, _lineNumber: number, _start: number, _end: number, _lineBreak: string);
- public snapshot(): ITextSnapshot;
- public start(): SnapshotPoint;
- public startPosition(): number;
- public end(): SnapshotPoint;
- public endPosition(): number;
- public endIncludingLineBreak(): SnapshotPoint;
- public endIncludingLineBreakPosition(): number;
- public length(): number;
- public lineNumber(): number;
- public getText(): string;
- }
-}
-declare module TypeScript.Services.Formatting {
- class SnapshotPoint {
- public snapshot: ITextSnapshot;
- public position: number;
- constructor(snapshot: ITextSnapshot, position: number);
- public getContainingLine(): ITextSnapshotLine;
- public add(offset: number): SnapshotPoint;
- }
-}
-declare module TypeScript.Services.Formatting {
- class FormattingContext {
- private snapshot;
- public formattingRequestKind: FormattingRequestKind;
- public currentTokenSpan: TokenSpan;
- public nextTokenSpan: TokenSpan;
- public contextNode: IndentationNodeContext;
- public currentTokenParent: IndentationNodeContext;
- public nextTokenParent: IndentationNodeContext;
- private contextNodeAllOnSameLine;
- private nextNodeAllOnSameLine;
- private tokensAreOnSameLine;
- private contextNodeBlockIsOnOneLine;
- private nextNodeBlockIsOnOneLine;
- constructor(snapshot: ITextSnapshot, formattingRequestKind: FormattingRequestKind);
- public updateContext(currentTokenSpan: TokenSpan, currentTokenParent: IndentationNodeContext, nextTokenSpan: TokenSpan, nextTokenParent: IndentationNodeContext, commonParent: IndentationNodeContext): void;
- public ContextNodeAllOnSameLine(): boolean;
- public NextNodeAllOnSameLine(): boolean;
- public TokensAreOnSameLine(): boolean;
- public ContextNodeBlockIsOnOneLine(): boolean;
- public NextNodeBlockIsOnOneLine(): boolean;
- public NodeIsOnOneLine(node: IndentationNodeContext): boolean;
- public BlockIsOnOneLine(node: IndentationNodeContext): boolean;
- }
-}
-declare module TypeScript.Services.Formatting {
- class FormattingManager {
- private syntaxTree;
- private snapshot;
- private rulesProvider;
- private options;
- constructor(syntaxTree: SyntaxTree, snapshot: ITextSnapshot, rulesProvider: RulesProvider, editorOptions: EditorOptions);
- public formatSelection(minChar: number, limChar: number): TextEdit[];
- public formatDocument(minChar: number, limChar: number): TextEdit[];
- public formatOnPaste(minChar: number, limChar: number): TextEdit[];
- public formatOnSemicolon(caretPosition: number): TextEdit[];
- public formatOnClosingCurlyBrace(caretPosition: number): TextEdit[];
- public formatOnEnter(caretPosition: number): TextEdit[];
- private formatSpan(span, formattingRequestKind);
- }
-}
-declare module TypeScript.Services.Formatting {
- enum FormattingRequestKind {
- FormatDocument = 0,
- FormatSelection = 1,
- FormatOnEnter = 2,
- FormatOnSemicolon = 3,
- FormatOnClosingCurlyBrace = 4,
- FormatOnPaste = 5,
- }
-}
-declare module TypeScript.Services.Formatting {
- class Rule {
- public Descriptor: RuleDescriptor;
- public Operation: RuleOperation;
- public Flag: RuleFlags;
- constructor(Descriptor: RuleDescriptor, Operation: RuleOperation, Flag?: RuleFlags);
- public toString(): string;
- }
-}
-declare module TypeScript.Services.Formatting {
- enum RuleAction {
- Ignore = 0,
- Space = 1,
- NewLine = 2,
- Delete = 3,
- }
-}
-declare module TypeScript.Services.Formatting {
- class RuleDescriptor {
- public LeftTokenRange: Shared.TokenRange;
- public RightTokenRange: Shared.TokenRange;
- constructor(LeftTokenRange: Shared.TokenRange, RightTokenRange: Shared.TokenRange);
- public toString(): string;
- static create1(left: SyntaxKind, right: SyntaxKind): RuleDescriptor;
- static create2(left: Shared.TokenRange, right: SyntaxKind): RuleDescriptor;
- static create3(left: SyntaxKind, right: Shared.TokenRange): RuleDescriptor;
- static create4(left: Shared.TokenRange, right: Shared.TokenRange): RuleDescriptor;
- }
-}
-declare module TypeScript.Services.Formatting {
- enum RuleFlags {
- None = 0,
- CanDeleteNewLines = 1,
- }
-}
-declare module TypeScript.Services.Formatting {
- class RuleOperation {
- public Context: RuleOperationContext;
- public Action: RuleAction;
- constructor();
- public toString(): string;
- static create1(action: RuleAction): RuleOperation;
- static create2(context: RuleOperationContext, action: RuleAction): RuleOperation;
- }
-}
-declare module TypeScript.Services.Formatting {
- class RuleOperationContext {
- private customContextChecks;
- constructor(...funcs: {
- (context: FormattingContext): boolean;
- }[]);
- static Any: RuleOperationContext;
- public IsAny(): boolean;
- public InContext(context: FormattingContext): boolean;
- }
-}
-declare module TypeScript.Services.Formatting {
- class Rules {
- public getRuleName(rule: Rule): any;
- [name: string]: any;
- public IgnoreBeforeComment: Rule;
- public IgnoreAfterLineComment: Rule;
- public NoSpaceBeforeSemicolon: Rule;
- public NoSpaceBeforeColon: Rule;
- public NoSpaceBeforeQMark: Rule;
- public SpaceAfterColon: Rule;
- public SpaceAfterQMark: Rule;
- public SpaceAfterSemicolon: Rule;
- public SpaceAfterCloseBrace: Rule;
- public SpaceBetweenCloseBraceAndElse: Rule;
- public SpaceBetweenCloseBraceAndWhile: Rule;
- public NoSpaceAfterCloseBrace: Rule;
- public NoSpaceBeforeDot: Rule;
- public NoSpaceAfterDot: Rule;
- public NoSpaceBeforeOpenBracket: Rule;
- public NoSpaceAfterOpenBracket: Rule;
- public NoSpaceBeforeCloseBracket: Rule;
- public NoSpaceAfterCloseBracket: Rule;
- public SpaceAfterOpenBrace: Rule;
- public SpaceBeforeCloseBrace: Rule;
- public NoSpaceBetweenEmptyBraceBrackets: Rule;
- public NewLineAfterOpenBraceInBlockContext: Rule;
- public NewLineBeforeCloseBraceInBlockContext: Rule;
- public NoSpaceAfterUnaryPrefixOperator: Rule;
- public NoSpaceAfterUnaryPreincrementOperator: Rule;
- public NoSpaceAfterUnaryPredecrementOperator: Rule;
- public NoSpaceBeforeUnaryPostincrementOperator: Rule;
- public NoSpaceBeforeUnaryPostdecrementOperator: Rule;
- public SpaceAfterPostincrementWhenFollowedByAdd: Rule;
- public SpaceAfterAddWhenFollowedByUnaryPlus: Rule;
- public SpaceAfterAddWhenFollowedByPreincrement: Rule;
- public SpaceAfterPostdecrementWhenFollowedBySubtract: Rule;
- public SpaceAfterSubtractWhenFollowedByUnaryMinus: Rule;
- public SpaceAfterSubtractWhenFollowedByPredecrement: Rule;
- public NoSpaceBeforeComma: Rule;
- public SpaceAfterCertainKeywords: Rule;
- public NoSpaceBeforeOpenParenInFuncCall: Rule;
- public SpaceAfterFunctionInFuncDecl: Rule;
- public NoSpaceBeforeOpenParenInFuncDecl: Rule;
- public SpaceAfterVoidOperator: Rule;
- public NoSpaceBetweenReturnAndSemicolon: Rule;
- public SpaceBetweenStatements: Rule;
- public SpaceAfterTryFinally: Rule;
- public SpaceAfterGetSetInMember: Rule;
- public SpaceBeforeBinaryKeywordOperator: Rule;
- public SpaceAfterBinaryKeywordOperator: Rule;
- public NoSpaceAfterConstructor: Rule;
- public NoSpaceAfterModuleImport: Rule;
- public SpaceAfterCertainTypeScriptKeywords: Rule;
- public SpaceBeforeCertainTypeScriptKeywords: Rule;
- public SpaceAfterModuleName: Rule;
- public SpaceAfterArrow: Rule;
- public NoSpaceAfterEllipsis: Rule;
- public NoSpaceAfterOptionalParameters: Rule;
- public NoSpaceBeforeOpenAngularBracket: Rule;
- public NoSpaceBetweenCloseParenAndAngularBracket: Rule;
- public NoSpaceAfterOpenAngularBracket: Rule;
- public NoSpaceBeforeCloseAngularBracket: Rule;
- public NoSpaceAfterCloseAngularBracket: Rule;
- public NoSpaceBetweenEmptyInterfaceBraceBrackets: Rule;
- public HighPriorityCommonRules: Rule[];
- public LowPriorityCommonRules: Rule[];
- public SpaceAfterComma: Rule;
- public NoSpaceAfterComma: Rule;
- public SpaceBeforeBinaryOperator: Rule;
- public SpaceAfterBinaryOperator: Rule;
- public NoSpaceBeforeBinaryOperator: Rule;
- public NoSpaceAfterBinaryOperator: Rule;
- public SpaceAfterKeywordInControl: Rule;
- public NoSpaceAfterKeywordInControl: Rule;
- public FunctionOpenBraceLeftTokenRange: Shared.TokenRange;
- public SpaceBeforeOpenBraceInFunction: Rule;
- public NewLineBeforeOpenBraceInFunction: Rule;
- public TypeScriptOpenBraceLeftTokenRange: Shared.TokenRange;
- public SpaceBeforeOpenBraceInTypeScriptDeclWithBlock: Rule;
- public NewLineBeforeOpenBraceInTypeScriptDeclWithBlock: Rule;
- public ControlOpenBraceLeftTokenRange: Shared.TokenRange;
- public SpaceBeforeOpenBraceInControl: Rule;
- public NewLineBeforeOpenBraceInControl: Rule;
- public SpaceAfterSemicolonInFor: Rule;
- public NoSpaceAfterSemicolonInFor: Rule;
- public SpaceAfterOpenParen: Rule;
- public SpaceBeforeCloseParen: Rule;
- public NoSpaceBetweenParens: Rule;
- public NoSpaceAfterOpenParen: Rule;
- public NoSpaceBeforeCloseParen: Rule;
- public SpaceAfterAnonymousFunctionKeyword: Rule;
- public NoSpaceAfterAnonymousFunctionKeyword: Rule;
- constructor();
- static IsForContext(context: FormattingContext): boolean;
- static IsNotForContext(context: FormattingContext): boolean;
- static IsBinaryOpContext(context: FormattingContext): boolean;
- static IsNotBinaryOpContext(context: FormattingContext): boolean;
- static IsSameLineTokenOrBeforeMultilineBlockContext(context: FormattingContext): boolean;
- static IsBeforeMultilineBlockContext(context: FormattingContext): boolean;
- static IsMultilineBlockContext(context: FormattingContext): boolean;
- static IsSingleLineBlockContext(context: FormattingContext): boolean;
- static IsBlockContext(context: FormattingContext): boolean;
- static IsBeforeBlockContext(context: FormattingContext): boolean;
- static NodeIsBlockContext(node: IndentationNodeContext): boolean;
- static IsFunctionDeclContext(context: FormattingContext): boolean;
- static IsTypeScriptDeclWithBlockContext(context: FormattingContext): boolean;
- static NodeIsTypeScriptDeclWithBlockContext(node: IndentationNodeContext): boolean;
- static IsAfterCodeBlockContext(context: FormattingContext): boolean;
- static IsControlDeclContext(context: FormattingContext): boolean;
- static IsObjectContext(context: FormattingContext): boolean;
- static IsFunctionCallContext(context: FormattingContext): boolean;
- static IsNewContext(context: FormattingContext): boolean;
- static IsFunctionCallOrNewContext(context: FormattingContext): boolean;
- static IsSameLineTokenContext(context: FormattingContext): boolean;
- static IsNotFormatOnEnter(context: FormattingContext): boolean;
- static IsModuleDeclContext(context: FormattingContext): boolean;
- static IsObjectTypeContext(context: FormattingContext): boolean;
- static IsTypeArgumentOrParameter(tokenKind: SyntaxKind, parentKind: SyntaxKind): boolean;
- static IsTypeArgumentOrParameterContext(context: FormattingContext): boolean;
- static IsVoidOpContext(context: FormattingContext): boolean;
- }
-}
-declare module TypeScript.Services.Formatting {
- class RulesMap {
- public map: RulesBucket[];
- public mapRowLength: number;
- constructor();
- static create(rules: Rule[]): RulesMap;
- public Initialize(rules: Rule[]): RulesBucket[];
- public FillRules(rules: Rule[], rulesBucketConstructionStateList: RulesBucketConstructionState[]): void;
- private GetRuleBucketIndex(row, column);
- private FillRule(rule, rulesBucketConstructionStateList);
- public GetRule(context: FormattingContext): Rule;
- }
- enum RulesPosition {
- IgnoreRulesSpecific = 0,
- IgnoreRulesAny,
- ContextRulesSpecific,
- ContextRulesAny,
- NoContextRulesSpecific,
- NoContextRulesAny,
- }
- class RulesBucketConstructionState {
- private rulesInsertionIndexBitmap;
- constructor();
- public GetInsertionIndex(maskPosition: RulesPosition): number;
- public IncreaseInsertionIndex(maskPosition: RulesPosition): void;
- }
- class RulesBucket {
- private rules;
- constructor();
- public Rules(): Rule[];
- public AddRule(rule: Rule, specificTokens: boolean, constructionState: RulesBucketConstructionState[], rulesBucketIndex: number): void;
- }
-}
-declare module TypeScript.Services.Formatting {
- class RulesProvider {
- private logger;
- private globalRules;
- private options;
- private activeRules;
- private rulesMap;
- constructor(logger: ILogger);
- public getRuleName(rule: Rule): string;
- public getRuleByName(name: string): Rule;
- public getRulesMap(): RulesMap;
- public ensureUpToDate(options: FormatCodeOptions): void;
- private createActiveRules(options);
- }
-}
-declare module TypeScript.Services.Formatting {
- class TextEditInfo {
- public position: number;
- public length: number;
- public replaceWith: string;
- constructor(position: number, length: number, replaceWith: string);
- public toString(): string;
- }
-}
-declare module TypeScript.Services.Formatting {
- module Shared {
- interface ITokenAccess {
- GetTokens(): SyntaxKind[];
- Contains(token: SyntaxKind): boolean;
- }
- class TokenRangeAccess implements ITokenAccess {
- private tokens;
- constructor(from: SyntaxKind, to: SyntaxKind, except: SyntaxKind[]);
- public GetTokens(): SyntaxKind[];
- public Contains(token: SyntaxKind): boolean;
- public toString(): string;
- }
- class TokenValuesAccess implements ITokenAccess {
- private tokens;
- constructor(tks: SyntaxKind[]);
- public GetTokens(): SyntaxKind[];
- public Contains(token: SyntaxKind): boolean;
- }
- class TokenSingleValueAccess implements ITokenAccess {
- public token: SyntaxKind;
- constructor(token: SyntaxKind);
- public GetTokens(): SyntaxKind[];
- public Contains(tokenValue: SyntaxKind): boolean;
- public toString(): string;
- }
- class TokenAllAccess implements ITokenAccess {
- public GetTokens(): SyntaxKind[];
- public Contains(tokenValue: SyntaxKind): boolean;
- public toString(): string;
- }
- class TokenRange {
- public tokenAccess: ITokenAccess;
- constructor(tokenAccess: ITokenAccess);
- static FromToken(token: SyntaxKind): TokenRange;
- static FromTokens(tokens: SyntaxKind[]): TokenRange;
- static FromRange(f: SyntaxKind, to: SyntaxKind, except?: SyntaxKind[]): TokenRange;
- static AllTokens(): TokenRange;
- public GetTokens(): SyntaxKind[];
- public Contains(token: SyntaxKind): boolean;
- public toString(): string;
- static Any: TokenRange;
- static AnyIncludingMultilineComments: TokenRange;
- static Keywords: TokenRange;
- static Operators: TokenRange;
- static BinaryOperators: TokenRange;
- static BinaryKeywordOperators: TokenRange;
- static ReservedKeywords: TokenRange;
- static UnaryPrefixOperators: TokenRange;
- static UnaryPrefixExpressions: TokenRange;
- static UnaryPreincrementExpressions: TokenRange;
- static UnaryPostincrementExpressions: TokenRange;
- static UnaryPredecrementExpressions: TokenRange;
- static UnaryPostdecrementExpressions: TokenRange;
- static Comments: TokenRange;
- static TypeNames: TokenRange;
- }
- }
-}
-declare module TypeScript.Services.Formatting {
- class TokenSpan extends TextSpan {
- private _kind;
- constructor(kind: SyntaxKind, start: number, length: number);
- public kind(): SyntaxKind;
- }
-}
-declare module TypeScript.Services.Formatting {
- class IndentationNodeContext {
- private _node;
- private _parent;
- private _fullStart;
- private _indentationAmount;
- private _childIndentationAmountDelta;
- private _depth;
- private _hasSkippedOrMissingTokenChild;
- constructor(parent: IndentationNodeContext, node: SyntaxNode, fullStart: number, indentationAmount: number, childIndentationAmountDelta: number);
- public parent(): IndentationNodeContext;
- public node(): SyntaxNode;
- public fullStart(): number;
- public fullWidth(): number;
- public start(): number;
- public end(): number;
- public indentationAmount(): number;
- public childIndentationAmountDelta(): number;
- public depth(): number;
- public kind(): SyntaxKind;
- public hasSkippedOrMissingTokenChild(): boolean;
- public clone(pool: IndentationNodeContextPool): IndentationNodeContext;
- public update(parent: IndentationNodeContext, node: SyntaxNode, fullStart: number, indentationAmount: number, childIndentationAmountDelta: number): void;
- }
-}
-declare module TypeScript.Services.Formatting {
- class IndentationNodeContextPool {
- private nodes;
- public getNode(parent: IndentationNodeContext, node: SyntaxNode, fullStart: number, indentationLevel: number, childIndentationLevelDelta: number): IndentationNodeContext;
- public releaseNode(node: IndentationNodeContext, recursive?: boolean): void;
- }
-}
-declare module TypeScript.Services.Formatting {
- class IndentationTrackingWalker extends SyntaxWalker {
- public options: FormattingOptions;
- private _position;
- private _parent;
- private _textSpan;
- private _snapshot;
- private _lastTriviaWasNewLine;
- private _indentationNodeContextPool;
- constructor(textSpan: TextSpan, sourceUnit: SourceUnitSyntax, snapshot: ITextSnapshot, indentFirstToken: boolean, options: FormattingOptions);
- public position(): number;
- public parent(): IndentationNodeContext;
- public textSpan(): TextSpan;
- public snapshot(): ITextSnapshot;
- public indentationNodeContextPool(): IndentationNodeContextPool;
- public forceIndentNextToken(tokenStart: number): void;
- public forceSkipIndentingNextToken(tokenStart: number): void;
- public indentToken(token: ISyntaxToken, indentationAmount: number, commentIndentationAmount: number): void;
- public visitTokenInSpan(token: ISyntaxToken): void;
- public visitToken(token: ISyntaxToken): void;
- public visitNode(node: SyntaxNode): void;
- private getTokenIndentationAmount(token);
- private getCommentIndentationAmount(token);
- private getNodeIndentation(node, newLineInsertedByFormatting?);
- private shouldIndentBlockInParent(parent);
- private forceRecomputeIndentationOfParent(tokenStart, newLineAdded);
- }
-}
-declare module TypeScript.Services.Formatting {
- class MultipleTokenIndenter extends IndentationTrackingWalker {
- private _edits;
- constructor(textSpan: TextSpan, sourceUnit: SourceUnitSyntax, snapshot: ITextSnapshot, indentFirstToken: boolean, options: FormattingOptions);
- public indentToken(token: ISyntaxToken, indentationAmount: number, commentIndentationAmount: number): void;
- public edits(): TextEditInfo[];
- public recordEdit(position: number, length: number, replaceWith: string): void;
- private recordIndentationEditsForToken(token, indentationString, commentIndentationString);
- private recordIndentationEditsForSingleLineOrSkippedText(trivia, fullStart, indentationString);
- private recordIndentationEditsForWhitespace(trivia, fullStart, indentationString);
- private recordIndentationEditsForMultiLineComment(trivia, fullStart, indentationString, leadingWhiteSpace, firstLineAlreadyIndented);
- private recordIndentationEditsForSegment(segment, fullStart, indentationColumns, whiteSpaceColumnsInFirstSegment);
- }
-}
-declare module TypeScript.Services.Formatting {
- class SingleTokenIndenter extends IndentationTrackingWalker {
- private indentationAmount;
- private indentationPosition;
- constructor(indentationPosition: number, sourceUnit: SourceUnitSyntax, snapshot: ITextSnapshot, indentFirstToken: boolean, options: FormattingOptions);
- static getIndentationAmount(position: number, sourceUnit: SourceUnitSyntax, snapshot: ITextSnapshot, options: FormattingOptions): number;
- public indentToken(token: ISyntaxToken, indentationAmount: number, commentIndentationAmount: number): void;
- }
-}
-declare module TypeScript.Services.Formatting {
- class Formatter extends MultipleTokenIndenter {
- private previousTokenSpan;
- private previousTokenParent;
- private scriptHasErrors;
- private rulesProvider;
- private formattingRequestKind;
- private formattingContext;
- constructor(textSpan: TextSpan, sourceUnit: SourceUnitSyntax, indentFirstToken: boolean, options: FormattingOptions, snapshot: ITextSnapshot, rulesProvider: RulesProvider, formattingRequestKind: FormattingRequestKind);
- static getEdits(textSpan: TextSpan, sourceUnit: SourceUnitSyntax, options: FormattingOptions, indentFirstToken: boolean, snapshot: ITextSnapshot, rulesProvider: RulesProvider, formattingRequestKind: FormattingRequestKind): TextEditInfo[];
- public visitTokenInSpan(token: ISyntaxToken): void;
- private processToken(token);
- private processTrivia(triviaList, fullStart);
- private findCommonParents(parent1, parent2);
- private formatPair(t1, t1Parent, t2, t2Parent);
- private getLineNumber(span);
- private trimWhitespaceInLineRange(startLine, endLine, token?);
- private trimWhitespace(line, token?);
- private RecordRuleEdits(rule, t1, t2);
- }
-}
-declare var debugObjectHost: any;
-declare module TypeScript.Services {
- interface ICoreServicesHost {
- logger: ILogger;
- }
- class CoreServices {
- public host: ICoreServicesHost;
- constructor(host: ICoreServicesHost);
- public getPreProcessedFileInfo(fileName: string, sourceText: IScriptSnapshot): IPreProcessedFileInfo;
- public getDefaultCompilationSettings(): CompilationSettings;
- public dumpMemory(): string;
- public getMemoryInfo(): any[];
- public collectGarbage(): void;
- }
-}
-declare module TypeScript.Services {
- class SyntaxTreeCache {
- private _host;
- private _hostCache;
- private _currentFileName;
- private _currentFileVersion;
- private _currentFileSyntaxTree;
- private _currentFileScriptSnapshot;
- constructor(_host: ILanguageServiceHost);
- public getCurrentFileSyntaxTree(fileName: string): SyntaxTree;
- private createSyntaxTree(fileName, scriptSnapshot);
- private updateSyntaxTree(fileName, scriptSnapshot, previousSyntaxTree, previousFileVersion);
- private ensureInvariants(fileName, editRange, incrementalTree, oldScriptSnapshot, newScriptSnapshot);
- }
- class LanguageServiceCompiler {
- private host;
- private logger;
- private compiler;
- private hostCache;
- constructor(host: ILanguageServiceHost);
- private synchronizeHostData();
- private synchronizeHostDataWorker();
- private tryUpdateFile(compiler, fileName);
- public getScriptSnapshot(fileName: string): IScriptSnapshot;
- public getCachedHostFileName(fileName: string): string;
- public getCachedTopLevelDeclaration(fileName: string): PullDecl;
- public compilationSettings(): ImmutableCompilationSettings;
- public fileNames(): string[];
- public cleanupSemanticCache(): void;
- public getDocument(fileName: string): Document;
- public getSyntacticDiagnostics(fileName: string): Diagnostic[];
- public getSemanticDiagnostics(fileName: string): Diagnostic[];
- public getCompilerOptionsDiagnostics(resolvePath: (path: string) => string): Diagnostic[];
- public getSymbolInformationFromAST(ast: AST, document: Document): PullSymbolInfo;
- public getCallInformationFromAST(ast: AST, document: Document): PullCallSymbolInfo;
- public getVisibleMemberSymbolsFromAST(ast: AST, document: Document): PullVisibleSymbolsInfo;
- public getVisibleDeclsFromAST(ast: AST, document: Document): PullDecl[];
- public getContextualMembersFromAST(ast: AST, document: Document): PullVisibleSymbolsInfo;
- public pullGetDeclInformation(decl: PullDecl, ast: AST, document: Document): PullSymbolInfo;
- public topLevelDeclaration(fileName: string): PullDecl;
- public getDeclForAST(ast: AST): PullDecl;
- public emit(fileName: string, resolvePath: (path: string) => string): EmitOutput;
- public emitDeclarations(fileName: string, resolvePath: (path: string) => string): EmitOutput;
- public canEmitDeclarations(fileName: string): boolean;
- }
-}
-declare module TypeScript.Services {
- class CompletionHelpers {
- private static getSpan(ast);
- private static symbolDeclarationIntersectsPosition(symbol, fileName, position);
- static filterContextualMembersList(contextualMemberSymbols: PullSymbol[], existingMembers: PullVisibleSymbolsInfo, fileName: string, position: number): PullSymbol[];
- static isCompletionListBlocker(sourceUnit: SourceUnitSyntax, position: number): boolean;
- static getContainingObjectLiteralApplicableForCompletion(sourceUnit: SourceUnitSyntax, position: number): PositionedElement;
- static isIdentifierDefinitionLocation(sourceUnit: SourceUnitSyntax, position: number): boolean;
- static getNonIdentifierCompleteTokenOnLeft(sourceUnit: SourceUnitSyntax, position: number): PositionedToken;
- static isRightOfIllegalDot(sourceUnit: SourceUnitSyntax, position: number): boolean;
- static getValidCompletionEntryDisplayName(displayName: string): string;
- }
-}
-declare module TypeScript.Services {
- class KeywordCompletions {
- private static keywords;
- private static keywordCompletions;
- static getKeywordCompltions(): ResolvedCompletionEntry[];
- }
-}
-declare module TypeScript.Services {
- interface IPartiallyWrittenTypeArgumentListInformation {
- genericIdentifer: PositionedToken;
- lessThanToken: PositionedToken;
- argumentIndex: number;
- }
- class SignatureInfoHelpers {
- static isInPartiallyWrittenTypeArgumentList(syntaxTree: SyntaxTree, position: number): IPartiallyWrittenTypeArgumentListInformation;
- static getSignatureInfoFromSignatureSymbol(symbol: PullSymbol, signatures: PullSignatureSymbol[], enclosingScopeSymbol: PullSymbol, compilerState: LanguageServiceCompiler): FormalSignatureItemInfo[];
- static getSignatureInfoFromGenericSymbol(symbol: PullSymbol, enclosingScopeSymbol: PullSymbol, compilerState: LanguageServiceCompiler): FormalSignatureItemInfo[];
- static getActualSignatureInfoFromCallExpression(ast: ICallExpression, caretPosition: number, typeParameterInformation: IPartiallyWrittenTypeArgumentListInformation): ActualSignatureInfo;
- static getActualSignatureInfoFromPartiallyWritenGenericExpression(caretPosition: number, typeParameterInformation: IPartiallyWrittenTypeArgumentListInformation): ActualSignatureInfo;
- static isSignatureHelpBlocker(sourceUnit: SourceUnitSyntax, position: number): boolean;
- static isTargetOfObjectCreationExpression(positionedToken: PositionedToken): boolean;
- private static moveBackUpTillMatchingTokenKind(token, tokenKind, matchingTokenKind);
- }
-}
-declare module TypeScript.Services {
- interface CachedCompletionEntryDetails extends CompletionEntryDetails {
- isResolved(): boolean;
- }
- class ResolvedCompletionEntry implements CachedCompletionEntryDetails {
- public name: string;
- public kind: string;
- public kindModifiers: string;
- public type: string;
- public fullSymbolName: string;
- public docComment: string;
- constructor(name: string, kind: string, kindModifiers: string, type: string, fullSymbolName: string, docComment: string);
- public isResolved(): boolean;
- }
- class DeclReferenceCompletionEntry implements CachedCompletionEntryDetails {
- public name: string;
- public kind: string;
- public kindModifiers: string;
- public decl: PullDecl;
- public type: string;
- public fullSymbolName: string;
- public docComment: string;
- private hasBeenResolved;
- constructor(name: string, kind: string, kindModifiers: string, decl: PullDecl);
- public isResolved(): boolean;
- public resolve(type: string, fullSymbolName: string, docComments: string): void;
- }
- class CompletionSession {
- public fileName: string;
- public position: number;
- public entries: IdentiferNameHashTable;
- constructor(fileName: string, position: number, entries: IdentiferNameHashTable);
- }
-}
-declare module TypeScript.Services {
- class LanguageService implements ILanguageService {
- public host: ILanguageServiceHost;
- private logger;
- private compiler;
- private _syntaxTreeCache;
- private formattingRulesProvider;
- private activeCompletionSession;
- constructor(host: ILanguageServiceHost);
- public cleanupSemanticCache(): void;
- public refresh(): void;
- private getSymbolInfoAtPosition(fileName, pos, requireName);
- public getReferencesAtPosition(fileName: string, pos: number): ReferenceEntry[];
- private getSymbolScopeAST(symbol, ast);
- public getOccurrencesAtPosition(fileName: string, pos: number): ReferenceEntry[];
- private getSingleNodeReferenceAtPosition(fileName, position);
- public getImplementorsAtPosition(fileName: string, pos: number): ReferenceEntry[];
- public getOverrides(container: PullTypeSymbol, memberSym: PullSymbol): PullTypeSymbol[];
- private getImplementorsInFile(fileName, symbol);
- private getReferencesInFile(fileName, symbol, containingASTOpt);
- private isWriteAccess(current);
- private isLetterOrDigit(char);
- private getPossibleSymbolReferencePositions(fileName, symbolName);
- public getSignatureAtPosition(fileName: string, position: number): SignatureInfo;
- private getTypeParameterSignatureFromPartiallyWrittenExpression(document, position, genericTypeArgumentListInfo);
- public getDefinitionAtPosition(fileName: string, position: number): DefinitionInfo[];
- private addDeclarations(symbolKind, symbolName, containerKind, containerName, declarations, result);
- private addDeclaration(symbolKind, symbolName, containerKind, containerName, declaration, result);
- private tryAddDefinition(symbolKind, symbolName, containerKind, containerName, declarations, result);
- private tryAddSignatures(symbolKind, symbolName, containerKind, containerName, declarations, result);
- private tryAddConstructor(symbolKind, symbolName, containerKind, containerName, declarations, result);
- public getNavigateToItems(searchValue: string): NavigateToItem[];
- private hasAnyUpperCaseCharacter(s);
- private findSearchValueInPullDecl(fileName, declarations, results, searchTerms, parentName?, parentkindName?);
- private getScriptElementKindModifiersFromDecl(decl);
- private isContainerDeclaration(declaration);
- private shouldIncludeDeclarationInNavigationItems(declaration);
- public getSyntacticDiagnostics(fileName: string): Diagnostic[];
- public getSemanticDiagnostics(fileName: string): Diagnostic[];
- private _getHostSpecificDiagnosticWithFileName(diagnostic);
- public getCompilerOptionsDiagnostics(): Diagnostic[];
- private _getHostFileName(fileName);
- public getEmitOutput(fileName: string): EmitOutput;
- private getAllSyntacticDiagnostics();
- private getAllSemanticDiagnostics();
- private containErrors(diagnostics);
- private getFullNameOfSymbol(symbol, enclosingScopeSymbol);
- private getTypeInfoEligiblePath(fileName, position, isConstructorValidPosition);
- public getTypeAtPosition(fileName: string, position: number): TypeInfo;
- public getCompletionsAtPosition(fileName: string, position: number, isMemberCompletion: boolean): CompletionInfo;
- private getCompletionEntriesFromSymbols(symbolInfo, result);
- private getCompletionEntriesFromDecls(decls, result);
- private getResolvedCompletionEntryDetailsFromSymbol(symbol, enclosingScopeSymbol);
- private getCompletionEntriesForKeywords(keywords, result);
- public getCompletionEntryDetails(fileName: string, position: number, entryName: string): CompletionEntryDetails;
- private tryFindDeclFromPreviousCompilerVersion(invalidatedDecl);
- private getModuleOrEnumKind(symbol);
- private mapPullElementKind(kind, symbol?, useConstructorAsClass?, varIsFunction?, functionIsConstructor?);
- private getScriptElementKindModifiers(symbol);
- private getScriptElementKindModifiersFromFlags(flags);
- public getNameOrDottedNameSpan(fileName: string, startPos: number, endPos: number): SpanInfo;
- public getBreakpointStatementAtPosition(fileName: string, pos: number): SpanInfo;
- public getFormattingEditsForRange(fileName: string, minChar: number, limChar: number, options: FormatCodeOptions): TextEdit[];
- public getFormattingEditsForDocument(fileName: string, minChar: number, limChar: number, options: FormatCodeOptions): TextEdit[];
- public getFormattingEditsOnPaste(fileName: string, minChar: number, limChar: number, options: FormatCodeOptions): TextEdit[];
- public getFormattingEditsAfterKeystroke(fileName: string, position: number, key: string, options: FormatCodeOptions): TextEdit[];
- private getFormattingManager(fileName, options);
- public getOutliningRegions(fileName: string): TextSpan[];
- public getIndentationAtPosition(fileName: string, position: number, editorOptions: EditorOptions): number;
- public getBraceMatchingAtPosition(fileName: string, position: number): TextSpan[];
- public getScriptLexicalStructure(fileName: string): NavigateToItem[];
- public getSyntaxTree(fileName: string): SyntaxTree;
- }
-}
-declare module TypeScript.Services {
- class FindReferenceHelpers {
- static compareSymbolsForLexicalIdentity(firstSymbol: PullSymbol, secondSymbol: PullSymbol): boolean;
- private static checkSymbolsForDeclarationEquality(firstSymbol, secondSymbol);
- private static declarationsAreSameOrParents(firstDecl, secondDecl);
- }
-}
-declare module TypeScript.Services {
- interface IScriptSnapshotShim {
- getText(start: number, end: number): string;
- getLength(): number;
- getLineStartPositions(): string;
- getTextChangeRangeSinceVersion(scriptVersion: number): string;
- }
- interface ILanguageServiceShimHost extends ILogger {
- getCompilationSettings(): string;
- getScriptFileNames(): string;
- getScriptVersion(fileName: string): number;
- getScriptIsOpen(fileName: string): boolean;
- getScriptByteOrderMark(fileName: string): number;
- getScriptSnapshot(fileName: string): IScriptSnapshotShim;
- resolveRelativePath(path: string, directory: string): string;
- fileExists(path: string): boolean;
- directoryExists(path: string): boolean;
- getParentDirectory(path: string): string;
- getDiagnosticsObject(): ILanguageServicesDiagnostics;
- getLocalizedDiagnosticMessages(): string;
- }
- interface IShimFactory {
- registerShim(shim: IShim): void;
- unregisterShim(shim: IShim): void;
- }
- interface IShim {
- dispose(dummy: any): void;
- }
- class ShimBase implements IShim {
- private factory;
- constructor(factory: IShimFactory);
- public dispose(dummy: any): void;
- }
- interface ILanguageServiceShim extends IShim {
- languageService: ILanguageService;
- dispose(dummy: any): void;
- refresh(throwOnError: boolean): void;
- cleanupSemanticCache(): void;
- getSyntacticDiagnostics(fileName: string): string;
- getSemanticDiagnostics(fileName: string): string;
- getCompilerOptionsDiagnostics(): string;
- getCompletionsAtPosition(fileName: string, position: number, isMemberCompletion: boolean): string;
- getCompletionEntryDetails(fileName: string, position: number, entryName: string): string;
- getTypeAtPosition(fileName: string, position: number): string;
- getNameOrDottedNameSpan(fileName: string, startPos: number, endPos: number): string;
- getBreakpointStatementAtPosition(fileName: string, position: number): string;
- getSignatureAtPosition(fileName: string, position: number): string;
- getDefinitionAtPosition(fileName: string, position: number): string;
- getReferencesAtPosition(fileName: string, position: number): string;
- getOccurrencesAtPosition(fileName: string, position: number): string;
- getImplementorsAtPosition(fileName: string, position: number): string;
- getNavigateToItems(searchValue: string): string;
- getScriptLexicalStructure(fileName: string): string;
- getOutliningRegions(fileName: string): string;
- getBraceMatchingAtPosition(fileName: string, position: number): string;
- getIndentationAtPosition(fileName: string, position: number, options: string): string;
- getFormattingEditsForRange(fileName: string, minChar: number, limChar: number, options: string): string;
- getFormattingEditsForDocument(fileName: string, minChar: number, limChar: number, options: string): string;
- getFormattingEditsOnPaste(fileName: string, minChar: number, limChar: number, options: string): string;
- getFormattingEditsAfterKeystroke(fileName: string, position: number, key: string, options: string): string;
- getEmitOutput(fileName: string): string;
- }
- class LanguageServiceShimHostAdapter implements ILanguageServiceHost {
- private shimHost;
- constructor(shimHost: ILanguageServiceShimHost);
- public information(): boolean;
- public debug(): boolean;
- public warning(): boolean;
- public error(): boolean;
- public fatal(): boolean;
- public log(s: string): void;
- public getCompilationSettings(): CompilationSettings;
- public getScriptFileNames(): string[];
- public getScriptSnapshot(fileName: string): IScriptSnapshot;
- public getScriptVersion(fileName: string): number;
- public getScriptIsOpen(fileName: string): boolean;
- public getScriptByteOrderMark(fileName: string): ByteOrderMark;
- public getDiagnosticsObject(): ILanguageServicesDiagnostics;
- public getLocalizedDiagnosticMessages(): any;
- public resolveRelativePath(path: string, directory: string): string;
- public fileExists(path: string): boolean;
- public directoryExists(path: string): boolean;
- public getParentDirectory(path: string): string;
- }
- function simpleForwardCall(logger: ILogger, actionDescription: string, action: () => any): any;
- function forwardJSONCall(logger: ILogger, actionDescription: string, action: () => any): string;
- class LanguageServiceShim extends ShimBase implements ILanguageServiceShim {
- private host;
- public languageService: ILanguageService;
- private logger;
- constructor(factory: IShimFactory, host: ILanguageServiceShimHost, languageService: ILanguageService);
- public forwardJSONCall(actionDescription: string, action: () => any): string;
- public dispose(dummy: any): void;
- public refresh(throwOnError: boolean): void;
- public cleanupSemanticCache(): void;
- private static realizeDiagnosticCategory(category);
- private static realizeDiagnostic(diagnostic);
- private realizeDiagnosticWithFileName(diagnostic);
- public getSyntacticDiagnostics(fileName: string): string;
- public getSemanticDiagnostics(fileName: string): string;
- public getCompilerOptionsDiagnostics(): string;
- public getTypeAtPosition(fileName: string, position: number): string;
- public getNameOrDottedNameSpan(fileName: string, startPos: number, endPos: number): string;
- public getBreakpointStatementAtPosition(fileName: string, position: number): string;
- public getSignatureAtPosition(fileName: string, position: number): string;
- public getDefinitionAtPosition(fileName: string, position: number): string;
- public getBraceMatchingAtPosition(fileName: string, position: number): string;
- public getIndentationAtPosition(fileName: string, position: number, options: string): string;
- public getReferencesAtPosition(fileName: string, position: number): string;
- public getOccurrencesAtPosition(fileName: string, position: number): string;
- public getImplementorsAtPosition(fileName: string, position: number): string;
- public getCompletionsAtPosition(fileName: string, position: number, isMemberCompletion: boolean): string;
- public getCompletionEntryDetails(fileName: string, position: number, entryName: string): string;
- public getFormattingEditsForRange(fileName: string, minChar: number, limChar: number, options: string): string;
- public getFormattingEditsForDocument(fileName: string, minChar: number, limChar: number, options: string): string;
- public getFormattingEditsOnPaste(fileName: string, minChar: number, limChar: number, options: string): string;
- public getFormattingEditsAfterKeystroke(fileName: string, position: number, key: string, options: string): string;
- public getNavigateToItems(searchValue: string): string;
- public getScriptLexicalStructure(fileName: string): string;
- public getOutliningRegions(fileName: string): string;
- public getEmitOutput(fileName: string): string;
- private _navigateToItemsToString(items);
- }
- class ClassifierShim extends ShimBase {
- public host: IClassifierHost;
- public classifier: Classifier;
- constructor(factory: IShimFactory, host: IClassifierHost);
- public getClassificationsForLine(text: string, lexState: EndOfLineState): string;
- }
- class CoreServicesShim extends ShimBase {
- public host: ICoreServicesHost;
- public logger: ILogger;
- public services: CoreServices;
- constructor(factory: IShimFactory, host: ICoreServicesHost);
- private forwardJSONCall(actionDescription, action);
- public getPreProcessedFileInfo(fileName: string, sourceText: IScriptSnapshot): string;
- public getDefaultCompilationSettings(): string;
- public dumpMemory(dummy: any): string;
- public getMemoryInfo(dummy: any): string;
- }
-}
-declare module TypeScript.Services {
- class OutliningElementsCollector extends DepthLimitedWalker {
- private static MaximumDepth;
- private inObjectLiteralExpression;
- private elements;
- constructor();
- public visitClassDeclaration(node: ClassDeclarationSyntax): void;
- public visitInterfaceDeclaration(node: InterfaceDeclarationSyntax): void;
- public visitModuleDeclaration(node: ModuleDeclarationSyntax): void;
- public visitEnumDeclaration(node: EnumDeclarationSyntax): void;
- public visitFunctionDeclaration(node: FunctionDeclarationSyntax): void;
- public visitFunctionExpression(node: FunctionExpressionSyntax): void;
- public visitConstructorDeclaration(node: ConstructorDeclarationSyntax): void;
- public visitMemberFunctionDeclaration(node: MemberFunctionDeclarationSyntax): void;
- public visitGetAccessor(node: GetAccessorSyntax): void;
- public visitSetAccessor(node: SetAccessorSyntax): void;
- public visitObjectLiteralExpression(node: ObjectLiteralExpressionSyntax): void;
- private addOutlineRange(node, startElement, endElement);
- static collectElements(node: SourceUnitSyntax): TextSpan[];
- }
-}
-declare module TypeScript.Services {
- class Indenter {
- static getIndentation(node: SourceUnitSyntax, soruceText: IScriptSnapshot, position: number, editorOptions: EditorOptions): number;
- private static belongsToBracket(sourceText, token, position);
- private static isInContainerNode(parent, element);
- private static getCustomListIndentation(list, element);
- private static getListItemIndentation(list, elementIndex);
- }
-}
-declare module TypeScript.Services.Breakpoints {
- function getBreakpointLocation(syntaxTree: SyntaxTree, askedPos: number): SpanInfo;
-}
-declare module TypeScript.Services {
- class GetScriptLexicalStructureWalker extends PositionTrackingWalker {
- private fileName;
- private nameStack;
- private kindStack;
- private currentMemberVariableDeclaration;
- private currentVariableStatement;
- private currentInterfaceDeclaration;
- private parentScopes;
- private currentScope;
- private createScope();
- private pushNewContainerScope(containerName, kind);
- private popScope();
- constructor(fileName: string);
- private collectItems(items, scope?);
- static getListsOfAllScriptLexicalStructure(items: NavigateToItem[], fileName: string, unit: SourceUnitSyntax): void;
- private createItem(node, modifiers, kind, name);
- private addAdditionalSpan(node, key);
- private getKindModifiers(modifiers);
- public visitModuleDeclaration(node: ModuleDeclarationSyntax): void;
- private visitModuleDeclarationWorker(node, names, nameIndex);
- private getModuleNames(node);
- private getModuleNamesHelper(name, result);
- public visitClassDeclaration(node: ClassDeclarationSyntax): void;
- public visitInterfaceDeclaration(node: InterfaceDeclarationSyntax): void;
- public visitObjectType(node: ObjectTypeSyntax): void;
- public visitEnumDeclaration(node: EnumDeclarationSyntax): void;
- public visitConstructorDeclaration(node: ConstructorDeclarationSyntax): void;
- public visitMemberFunctionDeclaration(node: MemberFunctionDeclarationSyntax): void;
- public visitGetAccessor(node: GetAccessorSyntax): void;
- public visitSetAccessor(node: SetAccessorSyntax): void;
- public visitMemberVariableDeclaration(node: MemberVariableDeclarationSyntax): void;
- public visitVariableStatement(node: VariableStatementSyntax): void;
- public visitVariableDeclarator(node: VariableDeclaratorSyntax): void;
- public visitIndexSignature(node: IndexSignatureSyntax): void;
- public visitEnumElement(node: EnumElementSyntax): void;
- public visitCallSignature(node: CallSignatureSyntax): void;
- public visitConstructSignature(node: ConstructSignatureSyntax): void;
- public visitMethodSignature(node: MethodSignatureSyntax): void;
- public visitPropertySignature(node: PropertySignatureSyntax): void;
- public visitFunctionDeclaration(node: FunctionDeclarationSyntax): void;
- public visitBlock(node: BlockSyntax): void;
- public visitIfStatement(node: IfStatementSyntax): void;
- public visitExpressionStatement(node: ExpressionStatementSyntax): void;
- public visitThrowStatement(node: ThrowStatementSyntax): void;
- public visitReturnStatement(node: ReturnStatementSyntax): void;
- public visitSwitchStatement(node: SwitchStatementSyntax): void;
- public visitWithStatement(node: WithStatementSyntax): void;
- public visitTryStatement(node: TryStatementSyntax): void;
- public visitLabeledStatement(node: LabeledStatementSyntax): void;
- }
-}
-declare module TypeScript.Services {
- function copyDataObject(dst: any, src: any): any;
- class TypeScriptServicesFactory implements IShimFactory {
- private _shims;
- public createPullLanguageService(host: ILanguageServiceHost): ILanguageService;
- public createLanguageServiceShim(host: ILanguageServiceShimHost): ILanguageServiceShim;
- public createClassifier(host: IClassifierHost): Classifier;
- public createClassifierShim(host: IClassifierHost): ClassifierShim;
- public createCoreServices(host: ICoreServicesHost): CoreServices;
- public createCoreServicesShim(host: ICoreServicesHost): CoreServicesShim;
- public close(): void;
- public registerShim(shim: IShim): void;
- public unregisterShim(shim: IShim): void;
- }
-}
-declare module TypeScript.Services {
- class BraceMatcher {
- static getMatchSpans(syntaxTree: SyntaxTree, position: number): TextSpan[];
- private static getMatchingCloseBrace(currentToken, position, result);
- private static getMatchingOpenBrace(currentToken, position, result);
- private static getMatchingCloseBraceTokenKind(positionedElement);
- private static getMatchingOpenBraceTokenKind(positionedElement);
- }
-}
-
-declare module 'typescript-services' {
- export = TypeScript;
-}
+// Type definitions for TypeScript API v0.4.0
+// Project: http://www.typescriptlang.org/
+// Definitions by: Microsoft TypeScript
+// Definitions: https://github.com/borisyankov/DefinitelyTyped
+
+/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+declare namespace ts {
+ interface Map {
+ [index: string]: T;
+ }
+ interface FileMap {
+ get(fileName: string): T;
+ set(fileName: string, value: T): void;
+ contains(fileName: string): boolean;
+ remove(fileName: string): void;
+ forEachValue(f: (v: T) => void): void;
+ clear(): void;
+ }
+ interface TextRange {
+ pos: number;
+ end: number;
+ }
+ const enum SyntaxKind {
+ Unknown = 0,
+ EndOfFileToken = 1,
+ SingleLineCommentTrivia = 2,
+ MultiLineCommentTrivia = 3,
+ NewLineTrivia = 4,
+ WhitespaceTrivia = 5,
+ ShebangTrivia = 6,
+ ConflictMarkerTrivia = 7,
+ NumericLiteral = 8,
+ StringLiteral = 9,
+ RegularExpressionLiteral = 10,
+ NoSubstitutionTemplateLiteral = 11,
+ TemplateHead = 12,
+ TemplateMiddle = 13,
+ TemplateTail = 14,
+ OpenBraceToken = 15,
+ CloseBraceToken = 16,
+ OpenParenToken = 17,
+ CloseParenToken = 18,
+ OpenBracketToken = 19,
+ CloseBracketToken = 20,
+ DotToken = 21,
+ DotDotDotToken = 22,
+ SemicolonToken = 23,
+ CommaToken = 24,
+ LessThanToken = 25,
+ LessThanSlashToken = 26,
+ GreaterThanToken = 27,
+ LessThanEqualsToken = 28,
+ GreaterThanEqualsToken = 29,
+ EqualsEqualsToken = 30,
+ ExclamationEqualsToken = 31,
+ EqualsEqualsEqualsToken = 32,
+ ExclamationEqualsEqualsToken = 33,
+ EqualsGreaterThanToken = 34,
+ PlusToken = 35,
+ MinusToken = 36,
+ AsteriskToken = 37,
+ SlashToken = 38,
+ PercentToken = 39,
+ PlusPlusToken = 40,
+ MinusMinusToken = 41,
+ LessThanLessThanToken = 42,
+ GreaterThanGreaterThanToken = 43,
+ GreaterThanGreaterThanGreaterThanToken = 44,
+ AmpersandToken = 45,
+ BarToken = 46,
+ CaretToken = 47,
+ ExclamationToken = 48,
+ TildeToken = 49,
+ AmpersandAmpersandToken = 50,
+ BarBarToken = 51,
+ QuestionToken = 52,
+ ColonToken = 53,
+ AtToken = 54,
+ EqualsToken = 55,
+ PlusEqualsToken = 56,
+ MinusEqualsToken = 57,
+ AsteriskEqualsToken = 58,
+ SlashEqualsToken = 59,
+ PercentEqualsToken = 60,
+ LessThanLessThanEqualsToken = 61,
+ GreaterThanGreaterThanEqualsToken = 62,
+ GreaterThanGreaterThanGreaterThanEqualsToken = 63,
+ AmpersandEqualsToken = 64,
+ BarEqualsToken = 65,
+ CaretEqualsToken = 66,
+ Identifier = 67,
+ BreakKeyword = 68,
+ CaseKeyword = 69,
+ CatchKeyword = 70,
+ ClassKeyword = 71,
+ ConstKeyword = 72,
+ ContinueKeyword = 73,
+ DebuggerKeyword = 74,
+ DefaultKeyword = 75,
+ DeleteKeyword = 76,
+ DoKeyword = 77,
+ ElseKeyword = 78,
+ EnumKeyword = 79,
+ ExportKeyword = 80,
+ ExtendsKeyword = 81,
+ FalseKeyword = 82,
+ FinallyKeyword = 83,
+ ForKeyword = 84,
+ FunctionKeyword = 85,
+ IfKeyword = 86,
+ ImportKeyword = 87,
+ InKeyword = 88,
+ InstanceOfKeyword = 89,
+ NewKeyword = 90,
+ NullKeyword = 91,
+ ReturnKeyword = 92,
+ SuperKeyword = 93,
+ SwitchKeyword = 94,
+ ThisKeyword = 95,
+ ThrowKeyword = 96,
+ TrueKeyword = 97,
+ TryKeyword = 98,
+ TypeOfKeyword = 99,
+ VarKeyword = 100,
+ VoidKeyword = 101,
+ WhileKeyword = 102,
+ WithKeyword = 103,
+ ImplementsKeyword = 104,
+ InterfaceKeyword = 105,
+ LetKeyword = 106,
+ PackageKeyword = 107,
+ PrivateKeyword = 108,
+ ProtectedKeyword = 109,
+ PublicKeyword = 110,
+ StaticKeyword = 111,
+ YieldKeyword = 112,
+ AbstractKeyword = 113,
+ AsKeyword = 114,
+ AnyKeyword = 115,
+ AsyncKeyword = 116,
+ AwaitKeyword = 117,
+ BooleanKeyword = 118,
+ ConstructorKeyword = 119,
+ DeclareKeyword = 120,
+ GetKeyword = 121,
+ IsKeyword = 122,
+ ModuleKeyword = 123,
+ NamespaceKeyword = 124,
+ RequireKeyword = 125,
+ NumberKeyword = 126,
+ SetKeyword = 127,
+ StringKeyword = 128,
+ SymbolKeyword = 129,
+ TypeKeyword = 130,
+ FromKeyword = 131,
+ OfKeyword = 132,
+ QualifiedName = 133,
+ ComputedPropertyName = 134,
+ TypeParameter = 135,
+ Parameter = 136,
+ Decorator = 137,
+ PropertySignature = 138,
+ PropertyDeclaration = 139,
+ MethodSignature = 140,
+ MethodDeclaration = 141,
+ Constructor = 142,
+ GetAccessor = 143,
+ SetAccessor = 144,
+ CallSignature = 145,
+ ConstructSignature = 146,
+ IndexSignature = 147,
+ TypePredicate = 148,
+ TypeReference = 149,
+ FunctionType = 150,
+ ConstructorType = 151,
+ TypeQuery = 152,
+ TypeLiteral = 153,
+ ArrayType = 154,
+ TupleType = 155,
+ UnionType = 156,
+ IntersectionType = 157,
+ ParenthesizedType = 158,
+ ObjectBindingPattern = 159,
+ ArrayBindingPattern = 160,
+ BindingElement = 161,
+ ArrayLiteralExpression = 162,
+ ObjectLiteralExpression = 163,
+ PropertyAccessExpression = 164,
+ ElementAccessExpression = 165,
+ CallExpression = 166,
+ NewExpression = 167,
+ TaggedTemplateExpression = 168,
+ TypeAssertionExpression = 169,
+ ParenthesizedExpression = 170,
+ FunctionExpression = 171,
+ ArrowFunction = 172,
+ DeleteExpression = 173,
+ TypeOfExpression = 174,
+ VoidExpression = 175,
+ AwaitExpression = 176,
+ PrefixUnaryExpression = 177,
+ PostfixUnaryExpression = 178,
+ BinaryExpression = 179,
+ ConditionalExpression = 180,
+ TemplateExpression = 181,
+ YieldExpression = 182,
+ SpreadElementExpression = 183,
+ ClassExpression = 184,
+ OmittedExpression = 185,
+ ExpressionWithTypeArguments = 186,
+ AsExpression = 187,
+ TemplateSpan = 188,
+ SemicolonClassElement = 189,
+ Block = 190,
+ VariableStatement = 191,
+ EmptyStatement = 192,
+ ExpressionStatement = 193,
+ IfStatement = 194,
+ DoStatement = 195,
+ WhileStatement = 196,
+ ForStatement = 197,
+ ForInStatement = 198,
+ ForOfStatement = 199,
+ ContinueStatement = 200,
+ BreakStatement = 201,
+ ReturnStatement = 202,
+ WithStatement = 203,
+ SwitchStatement = 204,
+ LabeledStatement = 205,
+ ThrowStatement = 206,
+ TryStatement = 207,
+ DebuggerStatement = 208,
+ VariableDeclaration = 209,
+ VariableDeclarationList = 210,
+ FunctionDeclaration = 211,
+ ClassDeclaration = 212,
+ InterfaceDeclaration = 213,
+ TypeAliasDeclaration = 214,
+ EnumDeclaration = 215,
+ ModuleDeclaration = 216,
+ ModuleBlock = 217,
+ CaseBlock = 218,
+ ImportEqualsDeclaration = 219,
+ ImportDeclaration = 220,
+ ImportClause = 221,
+ NamespaceImport = 222,
+ NamedImports = 223,
+ ImportSpecifier = 224,
+ ExportAssignment = 225,
+ ExportDeclaration = 226,
+ NamedExports = 227,
+ ExportSpecifier = 228,
+ MissingDeclaration = 229,
+ ExternalModuleReference = 230,
+ JsxElement = 231,
+ JsxSelfClosingElement = 232,
+ JsxOpeningElement = 233,
+ JsxText = 234,
+ JsxClosingElement = 235,
+ JsxAttribute = 236,
+ JsxSpreadAttribute = 237,
+ JsxExpression = 238,
+ CaseClause = 239,
+ DefaultClause = 240,
+ HeritageClause = 241,
+ CatchClause = 242,
+ PropertyAssignment = 243,
+ ShorthandPropertyAssignment = 244,
+ EnumMember = 245,
+ SourceFile = 246,
+ JSDocTypeExpression = 247,
+ JSDocAllType = 248,
+ JSDocUnknownType = 249,
+ JSDocArrayType = 250,
+ JSDocUnionType = 251,
+ JSDocTupleType = 252,
+ JSDocNullableType = 253,
+ JSDocNonNullableType = 254,
+ JSDocRecordType = 255,
+ JSDocRecordMember = 256,
+ JSDocTypeReference = 257,
+ JSDocOptionalType = 258,
+ JSDocFunctionType = 259,
+ JSDocVariadicType = 260,
+ JSDocConstructorType = 261,
+ JSDocThisType = 262,
+ JSDocComment = 263,
+ JSDocTag = 264,
+ JSDocParameterTag = 265,
+ JSDocReturnTag = 266,
+ JSDocTypeTag = 267,
+ JSDocTemplateTag = 268,
+ SyntaxList = 269,
+ Count = 270,
+ FirstAssignment = 55,
+ LastAssignment = 66,
+ FirstReservedWord = 68,
+ LastReservedWord = 103,
+ FirstKeyword = 68,
+ LastKeyword = 132,
+ FirstFutureReservedWord = 104,
+ LastFutureReservedWord = 112,
+ FirstTypeNode = 149,
+ LastTypeNode = 158,
+ FirstPunctuation = 15,
+ LastPunctuation = 66,
+ FirstToken = 0,
+ LastToken = 132,
+ FirstTriviaToken = 2,
+ LastTriviaToken = 7,
+ FirstLiteralToken = 8,
+ LastLiteralToken = 11,
+ FirstTemplateToken = 11,
+ LastTemplateToken = 14,
+ FirstBinaryOperator = 25,
+ LastBinaryOperator = 66,
+ FirstNode = 133,
+ }
+ const enum NodeFlags {
+ Export = 1,
+ Ambient = 2,
+ Public = 16,
+ Private = 32,
+ Protected = 64,
+ Static = 128,
+ Abstract = 256,
+ Async = 512,
+ Default = 1024,
+ MultiLine = 2048,
+ Synthetic = 4096,
+ DeclarationFile = 8192,
+ Let = 16384,
+ Const = 32768,
+ OctalLiteral = 65536,
+ Namespace = 131072,
+ ExportContext = 262144,
+ Modifier = 2035,
+ AccessibilityModifier = 112,
+ BlockScoped = 49152,
+ }
+ const enum JsxFlags {
+ None = 0,
+ IntrinsicNamedElement = 1,
+ IntrinsicIndexedElement = 2,
+ ClassElement = 4,
+ UnknownElement = 8,
+ IntrinsicElement = 3,
+ }
+ interface Node extends TextRange {
+ kind: SyntaxKind;
+ flags: NodeFlags;
+ decorators?: NodeArray;
+ modifiers?: ModifiersArray;
+ parent?: Node;
+ }
+ interface NodeArray extends Array, TextRange {
+ hasTrailingComma?: boolean;
+ }
+ interface ModifiersArray extends NodeArray {
+ flags: number;
+ }
+ interface Identifier extends PrimaryExpression {
+ text: string;
+ originalKeywordKind?: SyntaxKind;
+ }
+ interface QualifiedName extends Node {
+ left: EntityName;
+ right: Identifier;
+ }
+ type EntityName = Identifier | QualifiedName;
+ type DeclarationName = Identifier | LiteralExpression | ComputedPropertyName | BindingPattern;
+ interface Declaration extends Node {
+ _declarationBrand: any;
+ name?: DeclarationName;
+ }
+ interface ComputedPropertyName extends Node {
+ expression: Expression;
+ }
+ interface Decorator extends Node {
+ expression: LeftHandSideExpression;
+ }
+ interface TypeParameterDeclaration extends Declaration {
+ name: Identifier;
+ constraint?: TypeNode;
+ expression?: Expression;
+ }
+ interface SignatureDeclaration extends Declaration {
+ typeParameters?: NodeArray;
+ parameters: NodeArray;
+ type?: TypeNode;
+ }
+ interface VariableDeclaration extends Declaration {
+ parent?: VariableDeclarationList;
+ name: Identifier | BindingPattern;
+ type?: TypeNode;
+ initializer?: Expression;
+ }
+ interface VariableDeclarationList extends Node {
+ declarations: NodeArray;
+ }
+ interface ParameterDeclaration extends Declaration {
+ dotDotDotToken?: Node;
+ name: Identifier | BindingPattern;
+ questionToken?: Node;
+ type?: TypeNode;
+ initializer?: Expression;
+ }
+ interface BindingElement extends Declaration {
+ propertyName?: Identifier;
+ dotDotDotToken?: Node;
+ name: Identifier | BindingPattern;
+ initializer?: Expression;
+ }
+ interface PropertyDeclaration extends Declaration, ClassElement {
+ name: DeclarationName;
+ questionToken?: Node;
+ type?: TypeNode;
+ initializer?: Expression;
+ }
+ interface ObjectLiteralElement extends Declaration {
+ _objectLiteralBrandBrand: any;
+ }
+ interface PropertyAssignment extends ObjectLiteralElement {
+ _propertyAssignmentBrand: any;
+ name: DeclarationName;
+ questionToken?: Node;
+ initializer: Expression;
+ }
+ interface ShorthandPropertyAssignment extends ObjectLiteralElement {
+ name: Identifier;
+ questionToken?: Node;
+ }
+ interface VariableLikeDeclaration extends Declaration {
+ propertyName?: Identifier;
+ dotDotDotToken?: Node;
+ name: DeclarationName;
+ questionToken?: Node;
+ type?: TypeNode;
+ initializer?: Expression;
+ }
+ interface BindingPattern extends Node {
+ elements: NodeArray;
+ }
+ /**
+ * Several node kinds share function-like features such as a signature,
+ * a name, and a body. These nodes should extend FunctionLikeDeclaration.
+ * Examples:
+ * - FunctionDeclaration
+ * - MethodDeclaration
+ * - AccessorDeclaration
+ */
+ interface FunctionLikeDeclaration extends SignatureDeclaration {
+ _functionLikeDeclarationBrand: any;
+ asteriskToken?: Node;
+ questionToken?: Node;
+ body?: Block | Expression;
+ }
+ interface FunctionDeclaration extends FunctionLikeDeclaration, Statement {
+ name?: Identifier;
+ body?: Block;
+ }
+ interface MethodDeclaration extends FunctionLikeDeclaration, ClassElement, ObjectLiteralElement {
+ body?: Block;
+ }
+ interface ConstructorDeclaration extends FunctionLikeDeclaration, ClassElement {
+ body?: Block;
+ }
+ interface SemicolonClassElement extends ClassElement {
+ _semicolonClassElementBrand: any;
+ }
+ interface AccessorDeclaration extends FunctionLikeDeclaration, ClassElement, ObjectLiteralElement {
+ _accessorDeclarationBrand: any;
+ body: Block;
+ }
+ interface IndexSignatureDeclaration extends SignatureDeclaration, ClassElement {
+ _indexSignatureDeclarationBrand: any;
+ }
+ interface TypeNode extends Node {
+ _typeNodeBrand: any;
+ }
+ interface FunctionOrConstructorTypeNode extends TypeNode, SignatureDeclaration {
+ _functionOrConstructorTypeNodeBrand: any;
+ }
+ interface TypeReferenceNode extends TypeNode {
+ typeName: EntityName;
+ typeArguments?: NodeArray;
+ }
+ interface TypePredicateNode extends TypeNode {
+ parameterName: Identifier;
+ type: TypeNode;
+ }
+ interface TypeQueryNode extends TypeNode {
+ exprName: EntityName;
+ }
+ interface TypeLiteralNode extends TypeNode, Declaration {
+ members: NodeArray;
+ }
+ interface ArrayTypeNode extends TypeNode {
+ elementType: TypeNode;
+ }
+ interface TupleTypeNode extends TypeNode {
+ elementTypes: NodeArray;
+ }
+ interface UnionOrIntersectionTypeNode extends TypeNode {
+ types: NodeArray;
+ }
+ interface UnionTypeNode extends UnionOrIntersectionTypeNode {
+ }
+ interface IntersectionTypeNode extends UnionOrIntersectionTypeNode {
+ }
+ interface ParenthesizedTypeNode extends TypeNode {
+ type: TypeNode;
+ }
+ interface StringLiteral extends LiteralExpression, TypeNode {
+ _stringLiteralBrand: any;
+ }
+ interface Expression extends Node {
+ _expressionBrand: any;
+ contextualType?: Type;
+ }
+ interface UnaryExpression extends Expression {
+ _unaryExpressionBrand: any;
+ }
+ interface PrefixUnaryExpression extends UnaryExpression {
+ operator: SyntaxKind;
+ operand: UnaryExpression;
+ }
+ interface PostfixUnaryExpression extends PostfixExpression {
+ operand: LeftHandSideExpression;
+ operator: SyntaxKind;
+ }
+ interface PostfixExpression extends UnaryExpression {
+ _postfixExpressionBrand: any;
+ }
+ interface LeftHandSideExpression extends PostfixExpression {
+ _leftHandSideExpressionBrand: any;
+ }
+ interface MemberExpression extends LeftHandSideExpression {
+ _memberExpressionBrand: any;
+ }
+ interface PrimaryExpression extends MemberExpression {
+ _primaryExpressionBrand: any;
+ }
+ interface DeleteExpression extends UnaryExpression {
+ expression: UnaryExpression;
+ }
+ interface TypeOfExpression extends UnaryExpression {
+ expression: UnaryExpression;
+ }
+ interface VoidExpression extends UnaryExpression {
+ expression: UnaryExpression;
+ }
+ interface AwaitExpression extends UnaryExpression {
+ expression: UnaryExpression;
+ }
+ interface YieldExpression extends Expression {
+ asteriskToken?: Node;
+ expression?: Expression;
+ }
+ interface BinaryExpression extends Expression {
+ left: Expression;
+ operatorToken: Node;
+ right: Expression;
+ }
+ interface ConditionalExpression extends Expression {
+ condition: Expression;
+ questionToken: Node;
+ whenTrue: Expression;
+ colonToken: Node;
+ whenFalse: Expression;
+ }
+ interface FunctionExpression extends PrimaryExpression, FunctionLikeDeclaration {
+ name?: Identifier;
+ body: Block | Expression;
+ }
+ interface ArrowFunction extends Expression, FunctionLikeDeclaration {
+ equalsGreaterThanToken: Node;
+ }
+ interface LiteralExpression extends PrimaryExpression {
+ text: string;
+ isUnterminated?: boolean;
+ hasExtendedUnicodeEscape?: boolean;
+ }
+ interface TemplateExpression extends PrimaryExpression {
+ head: LiteralExpression;
+ templateSpans: NodeArray;
+ }
+ interface TemplateSpan extends Node {
+ expression: Expression;
+ literal: LiteralExpression;
+ }
+ interface ParenthesizedExpression extends PrimaryExpression {
+ expression: Expression;
+ }
+ interface ArrayLiteralExpression extends PrimaryExpression {
+ elements: NodeArray;
+ }
+ interface SpreadElementExpression extends Expression {
+ expression: Expression;
+ }
+ interface ObjectLiteralExpression extends PrimaryExpression, Declaration {
+ properties: NodeArray;
+ }
+ interface PropertyAccessExpression extends MemberExpression {
+ expression: LeftHandSideExpression;
+ dotToken: Node;
+ name: Identifier;
+ }
+ interface ElementAccessExpression extends MemberExpression {
+ expression: LeftHandSideExpression;
+ argumentExpression?: Expression;
+ }
+ interface CallExpression extends LeftHandSideExpression {
+ expression: LeftHandSideExpression;
+ typeArguments?: NodeArray;
+ arguments: NodeArray;
+ }
+ interface ExpressionWithTypeArguments extends TypeNode {
+ expression: LeftHandSideExpression;
+ typeArguments?: NodeArray;
+ }
+ interface NewExpression extends CallExpression, PrimaryExpression {
+ }
+ interface TaggedTemplateExpression extends MemberExpression {
+ tag: LeftHandSideExpression;
+ template: LiteralExpression | TemplateExpression;
+ }
+ type CallLikeExpression = CallExpression | NewExpression | TaggedTemplateExpression | Decorator;
+ interface AsExpression extends Expression {
+ expression: Expression;
+ type: TypeNode;
+ }
+ interface TypeAssertion extends UnaryExpression {
+ type: TypeNode;
+ expression: UnaryExpression;
+ }
+ type AssertionExpression = TypeAssertion | AsExpression;
+ interface JsxElement extends PrimaryExpression {
+ openingElement: JsxOpeningElement;
+ children: NodeArray;
+ closingElement: JsxClosingElement;
+ }
+ interface JsxOpeningElement extends Expression {
+ _openingElementBrand?: any;
+ tagName: EntityName;
+ attributes: NodeArray;
+ }
+ interface JsxSelfClosingElement extends PrimaryExpression, JsxOpeningElement {
+ _selfClosingElementBrand?: any;
+ }
+ type JsxOpeningLikeElement = JsxSelfClosingElement | JsxOpeningElement;
+ interface JsxAttribute extends Node {
+ name: Identifier;
+ initializer?: Expression;
+ }
+ interface JsxSpreadAttribute extends Node {
+ expression: Expression;
+ }
+ interface JsxClosingElement extends Node {
+ tagName: EntityName;
+ }
+ interface JsxExpression extends Expression {
+ expression?: Expression;
+ }
+ interface JsxText extends Node {
+ _jsxTextExpressionBrand: any;
+ }
+ type JsxChild = JsxText | JsxExpression | JsxElement | JsxSelfClosingElement;
+ interface Statement extends Node {
+ _statementBrand: any;
+ }
+ interface Block extends Statement {
+ statements: NodeArray;
+ }
+ interface VariableStatement extends Statement {
+ declarationList: VariableDeclarationList;
+ }
+ interface ExpressionStatement extends Statement {
+ expression: Expression;
+ }
+ interface IfStatement extends Statement {
+ expression: Expression;
+ thenStatement: Statement;
+ elseStatement?: Statement;
+ }
+ interface IterationStatement extends Statement {
+ statement: Statement;
+ }
+ interface DoStatement extends IterationStatement {
+ expression: Expression;
+ }
+ interface WhileStatement extends IterationStatement {
+ expression: Expression;
+ }
+ interface ForStatement extends IterationStatement {
+ initializer?: VariableDeclarationList | Expression;
+ condition?: Expression;
+ incrementor?: Expression;
+ }
+ interface ForInStatement extends IterationStatement {
+ initializer: VariableDeclarationList | Expression;
+ expression: Expression;
+ }
+ interface ForOfStatement extends IterationStatement {
+ initializer: VariableDeclarationList | Expression;
+ expression: Expression;
+ }
+ interface BreakOrContinueStatement extends Statement {
+ label?: Identifier;
+ }
+ interface ReturnStatement extends Statement {
+ expression?: Expression;
+ }
+ interface WithStatement extends Statement {
+ expression: Expression;
+ statement: Statement;
+ }
+ interface SwitchStatement extends Statement {
+ expression: Expression;
+ caseBlock: CaseBlock;
+ }
+ interface CaseBlock extends Node {
+ clauses: NodeArray;
+ }
+ interface CaseClause extends Node {
+ expression?: Expression;
+ statements: NodeArray;
+ }
+ interface DefaultClause extends Node {
+ statements: NodeArray;
+ }
+ type CaseOrDefaultClause = CaseClause | DefaultClause;
+ interface LabeledStatement extends Statement {
+ label: Identifier;
+ statement: Statement;
+ }
+ interface ThrowStatement extends Statement {
+ expression: Expression;
+ }
+ interface TryStatement extends Statement {
+ tryBlock: Block;
+ catchClause?: CatchClause;
+ finallyBlock?: Block;
+ }
+ interface CatchClause extends Node {
+ variableDeclaration: VariableDeclaration;
+ block: Block;
+ }
+ interface ClassLikeDeclaration extends Declaration {
+ name?: Identifier;
+ typeParameters?: NodeArray;
+ heritageClauses?: NodeArray;
+ members: NodeArray;
+ }
+ interface ClassDeclaration extends ClassLikeDeclaration, Statement {
+ }
+ interface ClassExpression extends ClassLikeDeclaration, PrimaryExpression {
+ }
+ interface ClassElement extends Declaration {
+ _classElementBrand: any;
+ }
+ interface InterfaceDeclaration extends Declaration, Statement {
+ name: Identifier;
+ typeParameters?: NodeArray;
+ heritageClauses?: NodeArray;
+ members: NodeArray;
+ }
+ interface HeritageClause extends Node {
+ token: SyntaxKind;
+ types?: NodeArray;
+ }
+ interface TypeAliasDeclaration extends Declaration, Statement {
+ name: Identifier;
+ typeParameters?: NodeArray;
+ type: TypeNode;
+ }
+ interface EnumMember extends Declaration {
+ name: DeclarationName;
+ initializer?: Expression;
+ }
+ interface EnumDeclaration extends Declaration, Statement {
+ name: Identifier;
+ members: NodeArray;
+ }
+ interface ModuleDeclaration extends Declaration, Statement {
+ name: Identifier | LiteralExpression;
+ body: ModuleBlock | ModuleDeclaration;
+ }
+ interface ModuleBlock extends Node, Statement {
+ statements: NodeArray;
+ }
+ interface ImportEqualsDeclaration extends Declaration, Statement {
+ name: Identifier;
+ moduleReference: EntityName | ExternalModuleReference;
+ }
+ interface ExternalModuleReference extends Node {
+ expression?: Expression;
+ }
+ interface ImportDeclaration extends Statement {
+ importClause?: ImportClause;
+ moduleSpecifier: Expression;
+ }
+ interface ImportClause extends Declaration {
+ name?: Identifier;
+ namedBindings?: NamespaceImport | NamedImports;
+ }
+ interface NamespaceImport extends Declaration {
+ name: Identifier;
+ }
+ interface ExportDeclaration extends Declaration, Statement {
+ exportClause?: NamedExports;
+ moduleSpecifier?: Expression;
+ }
+ interface NamedImportsOrExports extends Node {
+ elements: NodeArray;
+ }
+ type NamedImports = NamedImportsOrExports;
+ type NamedExports = NamedImportsOrExports;
+ interface ImportOrExportSpecifier extends Declaration {
+ propertyName?: Identifier;
+ name: Identifier;
+ }
+ type ImportSpecifier = ImportOrExportSpecifier;
+ type ExportSpecifier = ImportOrExportSpecifier;
+ interface ExportAssignment extends Declaration, Statement {
+ isExportEquals?: boolean;
+ expression: Expression;
+ }
+ interface FileReference extends TextRange {
+ fileName: string;
+ }
+ interface CommentRange extends TextRange {
+ hasTrailingNewLine?: boolean;
+ kind: SyntaxKind;
+ }
+ interface JSDocTypeExpression extends Node {
+ type: JSDocType;
+ }
+ interface JSDocType extends TypeNode {
+ _jsDocTypeBrand: any;
+ }
+ interface JSDocAllType extends JSDocType {
+ _JSDocAllTypeBrand: any;
+ }
+ interface JSDocUnknownType extends JSDocType {
+ _JSDocUnknownTypeBrand: any;
+ }
+ interface JSDocArrayType extends JSDocType {
+ elementType: JSDocType;
+ }
+ interface JSDocUnionType extends JSDocType {
+ types: NodeArray;
+ }
+ interface JSDocTupleType extends JSDocType {
+ types: NodeArray;
+ }
+ interface JSDocNonNullableType extends JSDocType {
+ type: JSDocType;
+ }
+ interface JSDocNullableType extends JSDocType {
+ type: JSDocType;
+ }
+ interface JSDocRecordType extends JSDocType, TypeLiteralNode {
+ members: NodeArray;
+ }
+ interface JSDocTypeReference extends JSDocType {
+ name: EntityName;
+ typeArguments: NodeArray;
+ }
+ interface JSDocOptionalType extends JSDocType {
+ type: JSDocType;
+ }
+ interface JSDocFunctionType extends JSDocType, SignatureDeclaration {
+ parameters: NodeArray;
+ type: JSDocType;
+ }
+ interface JSDocVariadicType extends JSDocType {
+ type: JSDocType;
+ }
+ interface JSDocConstructorType extends JSDocType {
+ type: JSDocType;
+ }
+ interface JSDocThisType extends JSDocType {
+ type: JSDocType;
+ }
+ interface JSDocRecordMember extends PropertyDeclaration {
+ name: Identifier | LiteralExpression;
+ type?: JSDocType;
+ }
+ interface JSDocComment extends Node {
+ tags: NodeArray;
+ }
+ interface JSDocTag extends Node {
+ atToken: Node;
+ tagName: Identifier;
+ }
+ interface JSDocTemplateTag extends JSDocTag {
+ typeParameters: NodeArray;
+ }
+ interface JSDocReturnTag extends JSDocTag {
+ typeExpression: JSDocTypeExpression;
+ }
+ interface JSDocTypeTag extends JSDocTag {
+ typeExpression: JSDocTypeExpression;
+ }
+ interface JSDocParameterTag extends JSDocTag {
+ preParameterName?: Identifier;
+ typeExpression?: JSDocTypeExpression;
+ postParameterName?: Identifier;
+ isBracketed: boolean;
+ }
+ interface SourceFile extends Declaration {
+ statements: NodeArray;
+ endOfFileToken: Node;
+ fileName: string;
+ text: string;
+ amdDependencies: {
+ path: string;
+ name: string;
+ }[];
+ moduleName: string;
+ referencedFiles: FileReference[];
+ languageVariant: LanguageVariant;
+ /**
+ * lib.d.ts should have a reference comment like
+ *
+ * ///
+ *
+ * If any other file has this comment, it signals not to include lib.d.ts
+ * because this containing file is intended to act as a default library.
+ */
+ hasNoDefaultLib: boolean;
+ languageVersion: ScriptTarget;
+ }
+ interface ScriptReferenceHost {
+ getCompilerOptions(): CompilerOptions;
+ getSourceFile(fileName: string): SourceFile;
+ getCurrentDirectory(): string;
+ }
+ interface ParseConfigHost extends ModuleResolutionHost {
+ readDirectory(rootDir: string, extension: string, exclude: string[]): string[];
+ }
+ interface WriteFileCallback {
+ (fileName: string, data: string, writeByteOrderMark: boolean, onError?: (message: string) => void): void;
+ }
+ class OperationCanceledException {
+ }
+ interface CancellationToken {
+ isCancellationRequested(): boolean;
+ /** @throws OperationCanceledException if isCancellationRequested is true */
+ throwIfCancellationRequested(): void;
+ }
+ interface Program extends ScriptReferenceHost {
+ /**
+ * Get a list of root file names that were passed to a 'createProgram'
+ */
+ getRootFileNames(): string[];
+ /**
+ * Get a list of files in the program
+ */
+ getSourceFiles(): SourceFile[];
+ /**
+ * Emits the JavaScript and declaration files. If targetSourceFile is not specified, then
+ * the JavaScript and declaration files will be produced for all the files in this program.
+ * If targetSourceFile is specified, then only the JavaScript and declaration for that
+ * specific file will be generated.
+ *
+ * If writeFile is not specified then the writeFile callback from the compiler host will be
+ * used for writing the JavaScript and declaration files. Otherwise, the writeFile parameter
+ * will be invoked when writing the JavaScript and declaration files.
+ */
+ emit(targetSourceFile?: SourceFile, writeFile?: WriteFileCallback, cancellationToken?: CancellationToken): EmitResult;
+ getOptionsDiagnostics(cancellationToken?: CancellationToken): Diagnostic[];
+ getGlobalDiagnostics(cancellationToken?: CancellationToken): Diagnostic[];
+ getSyntacticDiagnostics(sourceFile?: SourceFile, cancellationToken?: CancellationToken): Diagnostic[];
+ getSemanticDiagnostics(sourceFile?: SourceFile, cancellationToken?: CancellationToken): Diagnostic[];
+ getDeclarationDiagnostics(sourceFile?: SourceFile, cancellationToken?: CancellationToken): Diagnostic[];
+ /**
+ * Gets a type checker that can be used to semantically analyze source fils in the program.
+ */
+ getTypeChecker(): TypeChecker;
+ }
+ interface SourceMapSpan {
+ /** Line number in the .js file. */
+ emittedLine: number;
+ /** Column number in the .js file. */
+ emittedColumn: number;
+ /** Line number in the .ts file. */
+ sourceLine: number;
+ /** Column number in the .ts file. */
+ sourceColumn: number;
+ /** Optional name (index into names array) associated with this span. */
+ nameIndex?: number;
+ /** .ts file (index into sources array) associated with this span */
+ sourceIndex: number;
+ }
+ interface SourceMapData {
+ sourceMapFilePath: string;
+ jsSourceMappingURL: string;
+ sourceMapFile: string;
+ sourceMapSourceRoot: string;
+ sourceMapSources: string[];
+ sourceMapSourcesContent?: string[];
+ inputSourceFileNames: string[];
+ sourceMapNames?: string[];
+ sourceMapMappings: string;
+ sourceMapDecodedMappings: SourceMapSpan[];
+ }
+ /** Return code used by getEmitOutput function to indicate status of the function */
+ enum ExitStatus {
+ Success = 0,
+ DiagnosticsPresent_OutputsSkipped = 1,
+ DiagnosticsPresent_OutputsGenerated = 2,
+ }
+ interface EmitResult {
+ emitSkipped: boolean;
+ diagnostics: Diagnostic[];
+ }
+ interface TypeChecker {
+ getTypeOfSymbolAtLocation(symbol: Symbol, node: Node): Type;
+ getDeclaredTypeOfSymbol(symbol: Symbol): Type;
+ getPropertiesOfType(type: Type): Symbol[];
+ getPropertyOfType(type: Type, propertyName: string): Symbol;
+ getSignaturesOfType(type: Type, kind: SignatureKind): Signature[];
+ getIndexTypeOfType(type: Type, kind: IndexKind): Type;
+ getBaseTypes(type: InterfaceType): ObjectType[];
+ getReturnTypeOfSignature(signature: Signature): Type;
+ getSymbolsInScope(location: Node, meaning: SymbolFlags): Symbol[];
+ getSymbolAtLocation(node: Node): Symbol;
+ getShorthandAssignmentValueSymbol(location: Node): Symbol;
+ getTypeAtLocation(node: Node): Type;
+ typeToString(type: Type, enclosingDeclaration?: Node, flags?: TypeFormatFlags): string;
+ symbolToString(symbol: Symbol, enclosingDeclaration?: Node, meaning?: SymbolFlags): string;
+ getSymbolDisplayBuilder(): SymbolDisplayBuilder;
+ getFullyQualifiedName(symbol: Symbol): string;
+ getAugmentedPropertiesOfType(type: Type): Symbol[];
+ getRootSymbols(symbol: Symbol): Symbol[];
+ getContextualType(node: Expression): Type;
+ getResolvedSignature(node: CallLikeExpression, candidatesOutArray?: Signature[]): Signature;
+ getSignatureFromDeclaration(declaration: SignatureDeclaration): Signature;
+ isImplementationOfOverload(node: FunctionLikeDeclaration): boolean;
+ isUndefinedSymbol(symbol: Symbol): boolean;
+ isArgumentsSymbol(symbol: Symbol): boolean;
+ getConstantValue(node: EnumMember | PropertyAccessExpression | ElementAccessExpression): number;
+ isValidPropertyAccess(node: PropertyAccessExpression | QualifiedName, propertyName: string): boolean;
+ getAliasedSymbol(symbol: Symbol): Symbol;
+ getExportsOfModule(moduleSymbol: Symbol): Symbol[];
+ getJsxElementAttributesType(elementNode: JsxOpeningLikeElement): Type;
+ getJsxIntrinsicTagNames(): Symbol[];
+ isOptionalParameter(node: ParameterDeclaration): boolean;
+ }
+ interface SymbolDisplayBuilder {
+ buildTypeDisplay(type: Type, writer: SymbolWriter, enclosingDeclaration?: Node, flags?: TypeFormatFlags): void;
+ buildSymbolDisplay(symbol: Symbol, writer: SymbolWriter, enclosingDeclaration?: Node, meaning?: SymbolFlags, flags?: SymbolFormatFlags): void;
+ buildSignatureDisplay(signatures: Signature, writer: SymbolWriter, enclosingDeclaration?: Node, flags?: TypeFormatFlags): void;
+ buildParameterDisplay(parameter: Symbol, writer: SymbolWriter, enclosingDeclaration?: Node, flags?: TypeFormatFlags): void;
+ buildTypeParameterDisplay(tp: TypeParameter, writer: SymbolWriter, enclosingDeclaration?: Node, flags?: TypeFormatFlags): void;
+ buildTypeParameterDisplayFromSymbol(symbol: Symbol, writer: SymbolWriter, enclosingDeclaraiton?: Node, flags?: TypeFormatFlags): void;
+ buildDisplayForParametersAndDelimiters(parameters: Symbol[], writer: SymbolWriter, enclosingDeclaration?: Node, flags?: TypeFormatFlags): void;
+ buildDisplayForTypeParametersAndDelimiters(typeParameters: TypeParameter[], writer: SymbolWriter, enclosingDeclaration?: Node, flags?: TypeFormatFlags): void;
+ buildReturnTypeDisplay(signature: Signature, writer: SymbolWriter, enclosingDeclaration?: Node, flags?: TypeFormatFlags): void;
+ }
+ interface SymbolWriter {
+ writeKeyword(text: string): void;
+ writeOperator(text: string): void;
+ writePunctuation(text: string): void;
+ writeSpace(text: string): void;
+ writeStringLiteral(text: string): void;
+ writeParameter(text: string): void;
+ writeSymbol(text: string, symbol: Symbol): void;
+ writeLine(): void;
+ increaseIndent(): void;
+ decreaseIndent(): void;
+ clear(): void;
+ trackSymbol(symbol: Symbol, enclosingDeclaration?: Node, meaning?: SymbolFlags): void;
+ }
+ const enum TypeFormatFlags {
+ None = 0,
+ WriteArrayAsGenericType = 1,
+ UseTypeOfFunction = 2,
+ NoTruncation = 4,
+ WriteArrowStyleSignature = 8,
+ WriteOwnNameForAnyLike = 16,
+ WriteTypeArgumentsOfSignature = 32,
+ InElementType = 64,
+ UseFullyQualifiedType = 128,
+ }
+ const enum SymbolFormatFlags {
+ None = 0,
+ WriteTypeParametersOrArguments = 1,
+ UseOnlyExternalAliasing = 2,
+ }
+ interface TypePredicate {
+ parameterName: string;
+ parameterIndex: number;
+ type: Type;
+ }
+ const enum SymbolFlags {
+ None = 0,
+ FunctionScopedVariable = 1,
+ BlockScopedVariable = 2,
+ Property = 4,
+ EnumMember = 8,
+ Function = 16,
+ Class = 32,
+ Interface = 64,
+ ConstEnum = 128,
+ RegularEnum = 256,
+ ValueModule = 512,
+ NamespaceModule = 1024,
+ TypeLiteral = 2048,
+ ObjectLiteral = 4096,
+ Method = 8192,
+ Constructor = 16384,
+ GetAccessor = 32768,
+ SetAccessor = 65536,
+ Signature = 131072,
+ TypeParameter = 262144,
+ TypeAlias = 524288,
+ ExportValue = 1048576,
+ ExportType = 2097152,
+ ExportNamespace = 4194304,
+ Alias = 8388608,
+ Instantiated = 16777216,
+ Merged = 33554432,
+ Transient = 67108864,
+ Prototype = 134217728,
+ SyntheticProperty = 268435456,
+ Optional = 536870912,
+ ExportStar = 1073741824,
+ Enum = 384,
+ Variable = 3,
+ Value = 107455,
+ Type = 793056,
+ Namespace = 1536,
+ Module = 1536,
+ Accessor = 98304,
+ FunctionScopedVariableExcludes = 107454,
+ BlockScopedVariableExcludes = 107455,
+ ParameterExcludes = 107455,
+ PropertyExcludes = 107455,
+ EnumMemberExcludes = 107455,
+ FunctionExcludes = 106927,
+ ClassExcludes = 899519,
+ InterfaceExcludes = 792960,
+ RegularEnumExcludes = 899327,
+ ConstEnumExcludes = 899967,
+ ValueModuleExcludes = 106639,
+ NamespaceModuleExcludes = 0,
+ MethodExcludes = 99263,
+ GetAccessorExcludes = 41919,
+ SetAccessorExcludes = 74687,
+ TypeParameterExcludes = 530912,
+ TypeAliasExcludes = 793056,
+ AliasExcludes = 8388608,
+ ModuleMember = 8914931,
+ ExportHasLocal = 944,
+ HasExports = 1952,
+ HasMembers = 6240,
+ BlockScoped = 418,
+ PropertyOrAccessor = 98308,
+ Export = 7340032,
+ }
+ interface Symbol {
+ flags: SymbolFlags;
+ name: string;
+ declarations?: Declaration[];
+ valueDeclaration?: Declaration;
+ members?: SymbolTable;
+ exports?: SymbolTable;
+ }
+ interface SymbolTable {
+ [index: string]: Symbol;
+ }
+ const enum TypeFlags {
+ Any = 1,
+ String = 2,
+ Number = 4,
+ Boolean = 8,
+ Void = 16,
+ Undefined = 32,
+ Null = 64,
+ Enum = 128,
+ StringLiteral = 256,
+ TypeParameter = 512,
+ Class = 1024,
+ Interface = 2048,
+ Reference = 4096,
+ Tuple = 8192,
+ Union = 16384,
+ Intersection = 32768,
+ Anonymous = 65536,
+ Instantiated = 131072,
+ ObjectLiteral = 524288,
+ ESSymbol = 16777216,
+ StringLike = 258,
+ NumberLike = 132,
+ ObjectType = 80896,
+ UnionOrIntersection = 49152,
+ StructuredType = 130048,
+ }
+ interface Type {
+ flags: TypeFlags;
+ symbol?: Symbol;
+ }
+ interface StringLiteralType extends Type {
+ text: string;
+ }
+ interface ObjectType extends Type {
+ }
+ interface InterfaceType extends ObjectType {
+ typeParameters: TypeParameter[];
+ outerTypeParameters: TypeParameter[];
+ localTypeParameters: TypeParameter[];
+ }
+ interface InterfaceTypeWithDeclaredMembers extends InterfaceType {
+ declaredProperties: Symbol[];
+ declaredCallSignatures: Signature[];
+ declaredConstructSignatures: Signature[];
+ declaredStringIndexType: Type;
+ declaredNumberIndexType: Type;
+ }
+ interface TypeReference extends ObjectType {
+ target: GenericType;
+ typeArguments: Type[];
+ }
+ interface GenericType extends InterfaceType, TypeReference {
+ }
+ interface TupleType extends ObjectType {
+ elementTypes: Type[];
+ baseArrayType: TypeReference;
+ }
+ interface UnionOrIntersectionType extends Type {
+ types: Type[];
+ }
+ interface UnionType extends UnionOrIntersectionType {
+ }
+ interface IntersectionType extends UnionOrIntersectionType {
+ }
+ interface TypeParameter extends Type {
+ constraint: Type;
+ }
+ const enum SignatureKind {
+ Call = 0,
+ Construct = 1,
+ }
+ interface Signature {
+ declaration: SignatureDeclaration;
+ typeParameters: TypeParameter[];
+ parameters: Symbol[];
+ typePredicate?: TypePredicate;
+ }
+ const enum IndexKind {
+ String = 0,
+ Number = 1,
+ }
+ interface DiagnosticMessage {
+ key: string;
+ category: DiagnosticCategory;
+ code: number;
+ }
+ /**
+ * A linked list of formatted diagnostic messages to be used as part of a multiline message.
+ * It is built from the bottom up, leaving the head to be the "main" diagnostic.
+ * While it seems that DiagnosticMessageChain is structurally similar to DiagnosticMessage,
+ * the difference is that messages are all preformatted in DMC.
+ */
+ interface DiagnosticMessageChain {
+ messageText: string;
+ category: DiagnosticCategory;
+ code: number;
+ next?: DiagnosticMessageChain;
+ }
+ interface Diagnostic {
+ file: SourceFile;
+ start: number;
+ length: number;
+ messageText: string | DiagnosticMessageChain;
+ category: DiagnosticCategory;
+ code: number;
+ }
+ enum DiagnosticCategory {
+ Warning = 0,
+ Error = 1,
+ Message = 2,
+ }
+ const enum ModuleResolutionKind {
+ Classic = 1,
+ NodeJs = 2,
+ }
+ interface CompilerOptions {
+ allowNonTsExtensions?: boolean;
+ charset?: string;
+ declaration?: boolean;
+ diagnostics?: boolean;
+ emitBOM?: boolean;
+ help?: boolean;
+ init?: boolean;
+ inlineSourceMap?: boolean;
+ inlineSources?: boolean;
+ jsx?: JsxEmit;
+ listFiles?: boolean;
+ locale?: string;
+ mapRoot?: string;
+ module?: ModuleKind;
+ newLine?: NewLineKind;
+ noEmit?: boolean;
+ noEmitHelpers?: boolean;
+ noEmitOnError?: boolean;
+ noErrorTruncation?: boolean;
+ noImplicitAny?: boolean;
+ noLib?: boolean;
+ noResolve?: boolean;
+ out?: string;
+ outFile?: string;
+ outDir?: string;
+ preserveConstEnums?: boolean;
+ project?: string;
+ removeComments?: boolean;
+ rootDir?: string;
+ sourceMap?: boolean;
+ sourceRoot?: string;
+ suppressExcessPropertyErrors?: boolean;
+ suppressImplicitAnyIndexErrors?: boolean;
+ target?: ScriptTarget;
+ version?: boolean;
+ watch?: boolean;
+ isolatedModules?: boolean;
+ experimentalDecorators?: boolean;
+ experimentalAsyncFunctions?: boolean;
+ emitDecoratorMetadata?: boolean;
+ moduleResolution?: ModuleResolutionKind;
+ [option: string]: string | number | boolean;
+ }
+ const enum ModuleKind {
+ None = 0,
+ CommonJS = 1,
+ AMD = 2,
+ UMD = 3,
+ System = 4,
+ }
+ const enum JsxEmit {
+ None = 0,
+ Preserve = 1,
+ React = 2,
+ }
+ const enum NewLineKind {
+ CarriageReturnLineFeed = 0,
+ LineFeed = 1,
+ }
+ interface LineAndCharacter {
+ line: number;
+ character: number;
+ }
+ const enum ScriptTarget {
+ ES3 = 0,
+ ES5 = 1,
+ ES6 = 2,
+ Latest = 2,
+ }
+ const enum LanguageVariant {
+ Standard = 0,
+ JSX = 1,
+ }
+ interface ParsedCommandLine {
+ options: CompilerOptions;
+ fileNames: string[];
+ errors: Diagnostic[];
+ }
+ interface ModuleResolutionHost {
+ fileExists(fileName: string): boolean;
+ readFile(fileName: string): string;
+ }
+ interface ResolvedModule {
+ resolvedFileName: string;
+ isExternalLibraryImport?: boolean;
+ }
+ interface ResolvedModuleWithFailedLookupLocations {
+ resolvedModule: ResolvedModule;
+ failedLookupLocations: string[];
+ }
+ interface CompilerHost extends ModuleResolutionHost {
+ getSourceFile(fileName: string, languageVersion: ScriptTarget, onError?: (message: string) => void): SourceFile;
+ getCancellationToken?(): CancellationToken;
+ getDefaultLibFileName(options: CompilerOptions): string;
+ writeFile: WriteFileCallback;
+ getCurrentDirectory(): string;
+ getCanonicalFileName(fileName: string): string;
+ useCaseSensitiveFileNames(): boolean;
+ getNewLine(): string;
+ resolveModuleNames?(moduleNames: string[], containingFile: string): ResolvedModule[];
+ }
+ interface TextSpan {
+ start: number;
+ length: number;
+ }
+ interface TextChangeRange {
+ span: TextSpan;
+ newLength: number;
+ }
+}
+declare namespace ts {
+ interface System {
+ args: string[];
+ newLine: string;
+ useCaseSensitiveFileNames: boolean;
+ write(s: string): void;
+ readFile(path: string, encoding?: string): string;
+ writeFile(path: string, data: string, writeByteOrderMark?: boolean): void;
+ watchFile?(path: string, callback: (path: string) => void): FileWatcher;
+ resolvePath(path: string): string;
+ fileExists(path: string): boolean;
+ directoryExists(path: string): boolean;
+ createDirectory(path: string): void;
+ getExecutingFilePath(): string;
+ getCurrentDirectory(): string;
+ readDirectory(path: string, extension?: string, exclude?: string[]): string[];
+ getMemoryUsage?(): number;
+ exit(exitCode?: number): void;
+ }
+ interface FileWatcher {
+ close(): void;
+ }
+ var sys: System;
+}
+declare namespace ts {
+ interface ErrorCallback {
+ (message: DiagnosticMessage, length: number): void;
+ }
+ interface Scanner {
+ getStartPos(): number;
+ getToken(): SyntaxKind;
+ getTextPos(): number;
+ getTokenPos(): number;
+ getTokenText(): string;
+ getTokenValue(): string;
+ hasExtendedUnicodeEscape(): boolean;
+ hasPrecedingLineBreak(): boolean;
+ isIdentifier(): boolean;
+ isReservedWord(): boolean;
+ isUnterminated(): boolean;
+ reScanGreaterToken(): SyntaxKind;
+ reScanSlashToken(): SyntaxKind;
+ reScanTemplateToken(): SyntaxKind;
+ scanJsxIdentifier(): SyntaxKind;
+ reScanJsxToken(): SyntaxKind;
+ scanJsxToken(): SyntaxKind;
+ scan(): SyntaxKind;
+ setText(text: string, start?: number, length?: number): void;
+ setOnError(onError: ErrorCallback): void;
+ setScriptTarget(scriptTarget: ScriptTarget): void;
+ setLanguageVariant(variant: LanguageVariant): void;
+ setTextPos(textPos: number): void;
+ lookAhead(callback: () => T): T;
+ tryScan(callback: () => T): T;
+ }
+ function tokenToString(t: SyntaxKind): string;
+ function getPositionOfLineAndCharacter(sourceFile: SourceFile, line: number, character: number): number;
+ function getLineAndCharacterOfPosition(sourceFile: SourceFile, position: number): LineAndCharacter;
+ function isWhiteSpace(ch: number): boolean;
+ function isLineBreak(ch: number): boolean;
+ function couldStartTrivia(text: string, pos: number): boolean;
+ function getLeadingCommentRanges(text: string, pos: number): CommentRange[];
+ function getTrailingCommentRanges(text: string, pos: number): CommentRange[];
+ /** Optionally, get the shebang */
+ function getShebang(text: string): string;
+ function isIdentifierStart(ch: number, languageVersion: ScriptTarget): boolean;
+ function isIdentifierPart(ch: number, languageVersion: ScriptTarget): boolean;
+ function createScanner(languageVersion: ScriptTarget, skipTrivia: boolean, languageVariant?: LanguageVariant, text?: string, onError?: ErrorCallback, start?: number, length?: number): Scanner;
+}
+declare namespace ts {
+ function getDefaultLibFileName(options: CompilerOptions): string;
+ function textSpanEnd(span: TextSpan): number;
+ function textSpanIsEmpty(span: TextSpan): boolean;
+ function textSpanContainsPosition(span: TextSpan, position: number): boolean;
+ function textSpanContainsTextSpan(span: TextSpan, other: TextSpan): boolean;
+ function textSpanOverlapsWith(span: TextSpan, other: TextSpan): boolean;
+ function textSpanOverlap(span1: TextSpan, span2: TextSpan): TextSpan;
+ function textSpanIntersectsWithTextSpan(span: TextSpan, other: TextSpan): boolean;
+ function textSpanIntersectsWith(span: TextSpan, start: number, length: number): boolean;
+ function decodedTextSpanIntersectsWith(start1: number, length1: number, start2: number, length2: number): boolean;
+ function textSpanIntersectsWithPosition(span: TextSpan, position: number): boolean;
+ function textSpanIntersection(span1: TextSpan, span2: TextSpan): TextSpan;
+ function createTextSpan(start: number, length: number): TextSpan;
+ function createTextSpanFromBounds(start: number, end: number): TextSpan;
+ function textChangeRangeNewSpan(range: TextChangeRange): TextSpan;
+ function textChangeRangeIsUnchanged(range: TextChangeRange): boolean;
+ function createTextChangeRange(span: TextSpan, newLength: number): TextChangeRange;
+ let unchangedTextChangeRange: TextChangeRange;
+ /**
+ * Called to merge all the changes that occurred across several versions of a script snapshot
+ * into a single change. i.e. if a user keeps making successive edits to a script we will
+ * have a text change from V1 to V2, V2 to V3, ..., Vn.
+ *
+ * This function will then merge those changes into a single change range valid between V1 and
+ * Vn.
+ */
+ function collapseTextChangeRangesAcrossMultipleVersions(changes: TextChangeRange[]): TextChangeRange;
+ function getTypeParameterOwner(d: Declaration): Declaration;
+}
+declare namespace ts {
+ function getNodeConstructor(kind: SyntaxKind): new () => Node;
+ function createNode(kind: SyntaxKind): Node;
+ function forEachChild(node: Node, cbNode: (node: Node) => T, cbNodeArray?: (nodes: Node[]) => T): T;
+ function createSourceFile(fileName: string, sourceText: string, languageVersion: ScriptTarget, setParentNodes?: boolean): SourceFile;
+ function updateSourceFile(sourceFile: SourceFile, newText: string, textChangeRange: TextChangeRange, aggressiveChecks?: boolean): SourceFile;
+}
+declare namespace ts {
+ const version: string;
+ function findConfigFile(searchPath: string): string;
+ function resolveTripleslashReference(moduleName: string, containingFile: string): string;
+ function resolveModuleName(moduleName: string, containingFile: string, compilerOptions: CompilerOptions, host: ModuleResolutionHost): ResolvedModuleWithFailedLookupLocations;
+ function nodeModuleNameResolver(moduleName: string, containingFile: string, host: ModuleResolutionHost): ResolvedModuleWithFailedLookupLocations;
+ function classicNameResolver(moduleName: string, containingFile: string, compilerOptions: CompilerOptions, host: ModuleResolutionHost): ResolvedModuleWithFailedLookupLocations;
+ function createCompilerHost(options: CompilerOptions, setParentNodes?: boolean): CompilerHost;
+ function getPreEmitDiagnostics(program: Program, sourceFile?: SourceFile, cancellationToken?: CancellationToken): Diagnostic[];
+ function flattenDiagnosticMessageText(messageText: string | DiagnosticMessageChain, newLine: string): string;
+ function createProgram(rootNames: string[], options: CompilerOptions, host?: CompilerHost, oldProgram?: Program): Program;
+}
+declare namespace ts {
+ function parseCommandLine(commandLine: string[], readFile?: (path: string) => string): ParsedCommandLine;
+ /**
+ * Read tsconfig.json file
+ * @param fileName The path to the config file
+ */
+ function readConfigFile(fileName: string): {
+ config?: any;
+ error?: Diagnostic;
+ };
+ /**
+ * Parse the text of the tsconfig.json file
+ * @param fileName The path to the config file
+ * @param jsonText The text of the config file
+ */
+ function parseConfigFileText(fileName: string, jsonText: string): {
+ config?: any;
+ error?: Diagnostic;
+ };
+ /**
+ * Parse the contents of a config file (tsconfig.json).
+ * @param json The contents of the config file to parse
+ * @param basePath A root directory to resolve relative path entries in the config
+ * file to. e.g. outDir
+ */
+ function parseConfigFile(json: any, host: ParseConfigHost, basePath: string): ParsedCommandLine;
+}
+declare namespace ts {
+ /** The version of the language service API */
+ let servicesVersion: string;
+ interface Node {
+ getSourceFile(): SourceFile;
+ getChildCount(sourceFile?: SourceFile): number;
+ getChildAt(index: number, sourceFile?: SourceFile): Node;
+ getChildren(sourceFile?: SourceFile): Node[];
+ getStart(sourceFile?: SourceFile): number;
+ getFullStart(): number;
+ getEnd(): number;
+ getWidth(sourceFile?: SourceFile): number;
+ getFullWidth(): number;
+ getLeadingTriviaWidth(sourceFile?: SourceFile): number;
+ getFullText(sourceFile?: SourceFile): string;
+ getText(sourceFile?: SourceFile): string;
+ getFirstToken(sourceFile?: SourceFile): Node;
+ getLastToken(sourceFile?: SourceFile): Node;
+ }
+ interface Symbol {
+ getFlags(): SymbolFlags;
+ getName(): string;
+ getDeclarations(): Declaration[];
+ getDocumentationComment(): SymbolDisplayPart[];
+ }
+ interface Type {
+ getFlags(): TypeFlags;
+ getSymbol(): Symbol;
+ getProperties(): Symbol[];
+ getProperty(propertyName: string): Symbol;
+ getApparentProperties(): Symbol[];
+ getCallSignatures(): Signature[];
+ getConstructSignatures(): Signature[];
+ getStringIndexType(): Type;
+ getNumberIndexType(): Type;
+ getBaseTypes(): ObjectType[];
+ }
+ interface Signature {
+ getDeclaration(): SignatureDeclaration;
+ getTypeParameters(): Type[];
+ getParameters(): Symbol[];
+ getReturnType(): Type;
+ getDocumentationComment(): SymbolDisplayPart[];
+ }
+ interface SourceFile {
+ getLineAndCharacterOfPosition(pos: number): LineAndCharacter;
+ getLineStarts(): number[];
+ getPositionOfLineAndCharacter(line: number, character: number): number;
+ update(newText: string, textChangeRange: TextChangeRange): SourceFile;
+ }
+ /**
+ * Represents an immutable snapshot of a script at a specified time.Once acquired, the
+ * snapshot is observably immutable. i.e. the same calls with the same parameters will return
+ * the same values.
+ */
+ interface IScriptSnapshot {
+ /** Gets a portion of the script snapshot specified by [start, end). */
+ getText(start: number, end: number): string;
+ /** Gets the length of this script snapshot. */
+ getLength(): number;
+ /**
+ * Gets the TextChangeRange that describe how the text changed between this text and
+ * an older version. This information is used by the incremental parser to determine
+ * what sections of the script need to be re-parsed. 'undefined' can be returned if the
+ * change range cannot be determined. However, in that case, incremental parsing will
+ * not happen and the entire document will be re - parsed.
+ */
+ getChangeRange(oldSnapshot: IScriptSnapshot): TextChangeRange;
+ /** Releases all resources held by this script snapshot */
+ dispose?(): void;
+ }
+ module ScriptSnapshot {
+ function fromString(text: string): IScriptSnapshot;
+ }
+ interface PreProcessedFileInfo {
+ referencedFiles: FileReference[];
+ importedFiles: FileReference[];
+ ambientExternalModules: string[];
+ isLibFile: boolean;
+ }
+ interface HostCancellationToken {
+ isCancellationRequested(): boolean;
+ }
+ interface LanguageServiceHost {
+ getCompilationSettings(): CompilerOptions;
+ getNewLine?(): string;
+ getProjectVersion?(): string;
+ getScriptFileNames(): string[];
+ getScriptVersion(fileName: string): string;
+ getScriptSnapshot(fileName: string): IScriptSnapshot;
+ getLocalizedDiagnosticMessages?(): any;
+ getCancellationToken?(): HostCancellationToken;
+ getCurrentDirectory(): string;
+ getDefaultLibFileName(options: CompilerOptions): string;
+ log?(s: string): void;
+ trace?(s: string): void;
+ error?(s: string): void;
+ useCaseSensitiveFileNames?(): boolean;
+ resolveModuleNames?(moduleNames: string[], containingFile: string): ResolvedModule[];
+ }
+ interface LanguageService {
+ cleanupSemanticCache(): void;
+ getSyntacticDiagnostics(fileName: string): Diagnostic[];
+ getSemanticDiagnostics(fileName: string): Diagnostic[];
+ getCompilerOptionsDiagnostics(): Diagnostic[];
+ /**
+ * @deprecated Use getEncodedSyntacticClassifications instead.
+ */
+ getSyntacticClassifications(fileName: string, span: TextSpan): ClassifiedSpan[];
+ /**
+ * @deprecated Use getEncodedSemanticClassifications instead.
+ */
+ getSemanticClassifications(fileName: string, span: TextSpan): ClassifiedSpan[];
+ getEncodedSyntacticClassifications(fileName: string, span: TextSpan): Classifications;
+ getEncodedSemanticClassifications(fileName: string, span: TextSpan): Classifications;
+ getCompletionsAtPosition(fileName: string, position: number): CompletionInfo;
+ getCompletionEntryDetails(fileName: string, position: number, entryName: string): CompletionEntryDetails;
+ getQuickInfoAtPosition(fileName: string, position: number): QuickInfo;
+ getNameOrDottedNameSpan(fileName: string, startPos: number, endPos: number): TextSpan;
+ getBreakpointStatementAtPosition(fileName: string, position: number): TextSpan;
+ getSignatureHelpItems(fileName: string, position: number): SignatureHelpItems;
+ getRenameInfo(fileName: string, position: number): RenameInfo;
+ findRenameLocations(fileName: string, position: number, findInStrings: boolean, findInComments: boolean): RenameLocation[];
+ getDefinitionAtPosition(fileName: string, position: number): DefinitionInfo[];
+ getTypeDefinitionAtPosition(fileName: string, position: number): DefinitionInfo[];
+ getReferencesAtPosition(fileName: string, position: number): ReferenceEntry[];
+ findReferences(fileName: string, position: number): ReferencedSymbol[];
+ getDocumentHighlights(fileName: string, position: number, filesToSearch: string[]): DocumentHighlights[];
+ /** @deprecated */
+ getOccurrencesAtPosition(fileName: string, position: number): ReferenceEntry[];
+ getNavigateToItems(searchValue: string, maxResultCount?: number): NavigateToItem[];
+ getNavigationBarItems(fileName: string): NavigationBarItem[];
+ getOutliningSpans(fileName: string): OutliningSpan[];
+ getTodoComments(fileName: string, descriptors: TodoCommentDescriptor[]): TodoComment[];
+ getBraceMatchingAtPosition(fileName: string, position: number): TextSpan[];
+ getIndentationAtPosition(fileName: string, position: number, options: EditorOptions): number;
+ getFormattingEditsForRange(fileName: string, start: number, end: number, options: FormatCodeOptions): TextChange[];
+ getFormattingEditsForDocument(fileName: string, options: FormatCodeOptions): TextChange[];
+ getFormattingEditsAfterKeystroke(fileName: string, position: number, key: string, options: FormatCodeOptions): TextChange[];
+ getDocCommentTemplateAtPosition(fileName: string, position: number): TextInsertion;
+ getEmitOutput(fileName: string): EmitOutput;
+ getProgram(): Program;
+ getSourceFile(fileName: string): SourceFile;
+ dispose(): void;
+ }
+ interface Classifications {
+ spans: number[];
+ endOfLineState: EndOfLineState;
+ }
+ interface ClassifiedSpan {
+ textSpan: TextSpan;
+ classificationType: string;
+ }
+ interface NavigationBarItem {
+ text: string;
+ kind: string;
+ kindModifiers: string;
+ spans: TextSpan[];
+ childItems: NavigationBarItem[];
+ indent: number;
+ bolded: boolean;
+ grayed: boolean;
+ }
+ interface TodoCommentDescriptor {
+ text: string;
+ priority: number;
+ }
+ interface TodoComment {
+ descriptor: TodoCommentDescriptor;
+ message: string;
+ position: number;
+ }
+ class TextChange {
+ span: TextSpan;
+ newText: string;
+ }
+ interface TextInsertion {
+ newText: string;
+ /** The position in newText the caret should point to after the insertion. */
+ caretOffset: number;
+ }
+ interface RenameLocation {
+ textSpan: TextSpan;
+ fileName: string;
+ }
+ interface ReferenceEntry {
+ textSpan: TextSpan;
+ fileName: string;
+ isWriteAccess: boolean;
+ }
+ interface DocumentHighlights {
+ fileName: string;
+ highlightSpans: HighlightSpan[];
+ }
+ module HighlightSpanKind {
+ const none: string;
+ const definition: string;
+ const reference: string;
+ const writtenReference: string;
+ }
+ interface HighlightSpan {
+ fileName?: string;
+ textSpan: TextSpan;
+ kind: string;
+ }
+ interface NavigateToItem {
+ name: string;
+ kind: string;
+ kindModifiers: string;
+ matchKind: string;
+ isCaseSensitive: boolean;
+ fileName: string;
+ textSpan: TextSpan;
+ containerName: string;
+ containerKind: string;
+ }
+ interface EditorOptions {
+ IndentSize: number;
+ TabSize: number;
+ NewLineCharacter: string;
+ ConvertTabsToSpaces: boolean;
+ }
+ interface FormatCodeOptions extends EditorOptions {
+ InsertSpaceAfterCommaDelimiter: boolean;
+ InsertSpaceAfterSemicolonInForStatements: boolean;
+ InsertSpaceBeforeAndAfterBinaryOperators: boolean;
+ InsertSpaceAfterKeywordsInControlFlowStatements: boolean;
+ InsertSpaceAfterFunctionKeywordForAnonymousFunctions: boolean;
+ InsertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis: boolean;
+ InsertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets: boolean;
+ PlaceOpenBraceOnNewLineForFunctions: boolean;
+ PlaceOpenBraceOnNewLineForControlBlocks: boolean;
+ [s: string]: boolean | number | string;
+ }
+ interface DefinitionInfo {
+ fileName: string;
+ textSpan: TextSpan;
+ kind: string;
+ name: string;
+ containerKind: string;
+ containerName: string;
+ }
+ interface ReferencedSymbol {
+ definition: DefinitionInfo;
+ references: ReferenceEntry[];
+ }
+ enum SymbolDisplayPartKind {
+ aliasName = 0,
+ className = 1,
+ enumName = 2,
+ fieldName = 3,
+ interfaceName = 4,
+ keyword = 5,
+ lineBreak = 6,
+ numericLiteral = 7,
+ stringLiteral = 8,
+ localName = 9,
+ methodName = 10,
+ moduleName = 11,
+ operator = 12,
+ parameterName = 13,
+ propertyName = 14,
+ punctuation = 15,
+ space = 16,
+ text = 17,
+ typeParameterName = 18,
+ enumMemberName = 19,
+ functionName = 20,
+ regularExpressionLiteral = 21,
+ }
+ interface SymbolDisplayPart {
+ text: string;
+ kind: string;
+ }
+ interface QuickInfo {
+ kind: string;
+ kindModifiers: string;
+ textSpan: TextSpan;
+ displayParts: SymbolDisplayPart[];
+ documentation: SymbolDisplayPart[];
+ }
+ interface RenameInfo {
+ canRename: boolean;
+ localizedErrorMessage: string;
+ displayName: string;
+ fullDisplayName: string;
+ kind: string;
+ kindModifiers: string;
+ triggerSpan: TextSpan;
+ }
+ interface SignatureHelpParameter {
+ name: string;
+ documentation: SymbolDisplayPart[];
+ displayParts: SymbolDisplayPart[];
+ isOptional: boolean;
+ }
+ /**
+ * Represents a single signature to show in signature help.
+ * The id is used for subsequent calls into the language service to ask questions about the
+ * signature help item in the context of any documents that have been updated. i.e. after
+ * an edit has happened, while signature help is still active, the host can ask important
+ * questions like 'what parameter is the user currently contained within?'.
+ */
+ interface SignatureHelpItem {
+ isVariadic: boolean;
+ prefixDisplayParts: SymbolDisplayPart[];
+ suffixDisplayParts: SymbolDisplayPart[];
+ separatorDisplayParts: SymbolDisplayPart[];
+ parameters: SignatureHelpParameter[];
+ documentation: SymbolDisplayPart[];
+ }
+ /**
+ * Represents a set of signature help items, and the preferred item that should be selected.
+ */
+ interface SignatureHelpItems {
+ items: SignatureHelpItem[];
+ applicableSpan: TextSpan;
+ selectedItemIndex: number;
+ argumentIndex: number;
+ argumentCount: number;
+ }
+ interface CompletionInfo {
+ isMemberCompletion: boolean;
+ isNewIdentifierLocation: boolean;
+ entries: CompletionEntry[];
+ }
+ interface CompletionEntry {
+ name: string;
+ kind: string;
+ kindModifiers: string;
+ sortText: string;
+ }
+ interface CompletionEntryDetails {
+ name: string;
+ kind: string;
+ kindModifiers: string;
+ displayParts: SymbolDisplayPart[];
+ documentation: SymbolDisplayPart[];
+ }
+ interface OutliningSpan {
+ /** The span of the document to actually collapse. */
+ textSpan: TextSpan;
+ /** The span of the document to display when the user hovers over the collapsed span. */
+ hintSpan: TextSpan;
+ /** The text to display in the editor for the collapsed region. */
+ bannerText: string;
+ /**
+ * Whether or not this region should be automatically collapsed when
+ * the 'Collapse to Definitions' command is invoked.
+ */
+ autoCollapse: boolean;
+ }
+ interface EmitOutput {
+ outputFiles: OutputFile[];
+ emitSkipped: boolean;
+ }
+ const enum OutputFileType {
+ JavaScript = 0,
+ SourceMap = 1,
+ Declaration = 2,
+ }
+ interface OutputFile {
+ name: string;
+ writeByteOrderMark: boolean;
+ text: string;
+ }
+ const enum EndOfLineState {
+ None = 0,
+ InMultiLineCommentTrivia = 1,
+ InSingleQuoteStringLiteral = 2,
+ InDoubleQuoteStringLiteral = 3,
+ InTemplateHeadOrNoSubstitutionTemplate = 4,
+ InTemplateMiddleOrTail = 5,
+ InTemplateSubstitutionPosition = 6,
+ }
+ enum TokenClass {
+ Punctuation = 0,
+ Keyword = 1,
+ Operator = 2,
+ Comment = 3,
+ Whitespace = 4,
+ Identifier = 5,
+ NumberLiteral = 6,
+ StringLiteral = 7,
+ RegExpLiteral = 8,
+ }
+ interface ClassificationResult {
+ finalLexState: EndOfLineState;
+ entries: ClassificationInfo[];
+ }
+ interface ClassificationInfo {
+ length: number;
+ classification: TokenClass;
+ }
+ interface Classifier {
+ /**
+ * Gives lexical classifications of tokens on a line without any syntactic context.
+ * For instance, a token consisting of the text 'string' can be either an identifier
+ * named 'string' or the keyword 'string', however, because this classifier is not aware,
+ * it relies on certain heuristics to give acceptable results. For classifications where
+ * speed trumps accuracy, this function is preferable; however, for true accuracy, the
+ * syntactic classifier is ideal. In fact, in certain editing scenarios, combining the
+ * lexical, syntactic, and semantic classifiers may issue the best user experience.
+ *
+ * @param text The text of a line to classify.
+ * @param lexState The state of the lexical classifier at the end of the previous line.
+ * @param syntacticClassifierAbsent Whether the client is *not* using a syntactic classifier.
+ * If there is no syntactic classifier (syntacticClassifierAbsent=true),
+ * certain heuristics may be used in its place; however, if there is a
+ * syntactic classifier (syntacticClassifierAbsent=false), certain
+ * classifications which may be incorrectly categorized will be given
+ * back as Identifiers in order to allow the syntactic classifier to
+ * subsume the classification.
+ * @deprecated Use getLexicalClassifications instead.
+ */
+ getClassificationsForLine(text: string, lexState: EndOfLineState, syntacticClassifierAbsent: boolean): ClassificationResult;
+ getEncodedLexicalClassifications(text: string, endOfLineState: EndOfLineState, syntacticClassifierAbsent: boolean): Classifications;
+ }
+ /**
+ * The document registry represents a store of SourceFile objects that can be shared between
+ * multiple LanguageService instances. A LanguageService instance holds on the SourceFile (AST)
+ * of files in the context.
+ * SourceFile objects account for most of the memory usage by the language service. Sharing
+ * the same DocumentRegistry instance between different instances of LanguageService allow
+ * for more efficient memory utilization since all projects will share at least the library
+ * file (lib.d.ts).
+ *
+ * A more advanced use of the document registry is to serialize sourceFile objects to disk
+ * and re-hydrate them when needed.
+ *
+ * To create a default DocumentRegistry, use createDocumentRegistry to create one, and pass it
+ * to all subsequent createLanguageService calls.
+ */
+ interface DocumentRegistry {
+ /**
+ * Request a stored SourceFile with a given fileName and compilationSettings.
+ * The first call to acquire will call createLanguageServiceSourceFile to generate
+ * the SourceFile if was not found in the registry.
+ *
+ * @param fileName The name of the file requested
+ * @param compilationSettings Some compilation settings like target affects the
+ * shape of a the resulting SourceFile. This allows the DocumentRegistry to store
+ * multiple copies of the same file for different compilation settings.
+ * @parm scriptSnapshot Text of the file. Only used if the file was not found
+ * in the registry and a new one was created.
+ * @parm version Current version of the file. Only used if the file was not found
+ * in the registry and a new one was created.
+ */
+ acquireDocument(fileName: string, compilationSettings: CompilerOptions, scriptSnapshot: IScriptSnapshot, version: string): SourceFile;
+ /**
+ * Request an updated version of an already existing SourceFile with a given fileName
+ * and compilationSettings. The update will in-turn call updateLanguageServiceSourceFile
+ * to get an updated SourceFile.
+ *
+ * @param fileName The name of the file requested
+ * @param compilationSettings Some compilation settings like target affects the
+ * shape of a the resulting SourceFile. This allows the DocumentRegistry to store
+ * multiple copies of the same file for different compilation settings.
+ * @param scriptSnapshot Text of the file.
+ * @param version Current version of the file.
+ */
+ updateDocument(fileName: string, compilationSettings: CompilerOptions, scriptSnapshot: IScriptSnapshot, version: string): SourceFile;
+ /**
+ * Informs the DocumentRegistry that a file is not needed any longer.
+ *
+ * Note: It is not allowed to call release on a SourceFile that was not acquired from
+ * this registry originally.
+ *
+ * @param fileName The name of the file to be released
+ * @param compilationSettings The compilation settings used to acquire the file
+ */
+ releaseDocument(fileName: string, compilationSettings: CompilerOptions): void;
+ reportStats(): string;
+ }
+ module ScriptElementKind {
+ const unknown: string;
+ const warning: string;
+ const keyword: string;
+ const scriptElement: string;
+ const moduleElement: string;
+ const classElement: string;
+ const localClassElement: string;
+ const interfaceElement: string;
+ const typeElement: string;
+ const enumElement: string;
+ const variableElement: string;
+ const localVariableElement: string;
+ const functionElement: string;
+ const localFunctionElement: string;
+ const memberFunctionElement: string;
+ const memberGetAccessorElement: string;
+ const memberSetAccessorElement: string;
+ const memberVariableElement: string;
+ const constructorImplementationElement: string;
+ const callSignatureElement: string;
+ const indexSignatureElement: string;
+ const constructSignatureElement: string;
+ const parameterElement: string;
+ const typeParameterElement: string;
+ const primitiveType: string;
+ const label: string;
+ const alias: string;
+ const constElement: string;
+ const letElement: string;
+ }
+ module ScriptElementKindModifier {
+ const none: string;
+ const publicMemberModifier: string;
+ const privateMemberModifier: string;
+ const protectedMemberModifier: string;
+ const exportedModifier: string;
+ const ambientModifier: string;
+ const staticModifier: string;
+ const abstractModifier: string;
+ }
+ class ClassificationTypeNames {
+ static comment: string;
+ static identifier: string;
+ static keyword: string;
+ static numericLiteral: string;
+ static operator: string;
+ static stringLiteral: string;
+ static whiteSpace: string;
+ static text: string;
+ static punctuation: string;
+ static className: string;
+ static enumName: string;
+ static interfaceName: string;
+ static moduleName: string;
+ static typeParameterName: string;
+ static typeAliasName: string;
+ static parameterName: string;
+ static docCommentTagName: string;
+ }
+ const enum ClassificationType {
+ comment = 1,
+ identifier = 2,
+ keyword = 3,
+ numericLiteral = 4,
+ operator = 5,
+ stringLiteral = 6,
+ regularExpressionLiteral = 7,
+ whiteSpace = 8,
+ text = 9,
+ punctuation = 10,
+ className = 11,
+ enumName = 12,
+ interfaceName = 13,
+ moduleName = 14,
+ typeParameterName = 15,
+ typeAliasName = 16,
+ parameterName = 17,
+ docCommentTagName = 18,
+ }
+ interface DisplayPartsSymbolWriter extends SymbolWriter {
+ displayParts(): SymbolDisplayPart[];
+ }
+ function displayPartsToString(displayParts: SymbolDisplayPart[]): string;
+ function getDefaultCompilerOptions(): CompilerOptions;
+ interface TranspileOptions {
+ compilerOptions?: CompilerOptions;
+ fileName?: string;
+ reportDiagnostics?: boolean;
+ moduleName?: string;
+ renamedDependencies?: Map;
+ }
+ interface TranspileOutput {
+ outputText: string;
+ diagnostics?: Diagnostic[];
+ sourceMapText?: string;
+ }
+ function transpileModule(input: string, transpileOptions: TranspileOptions): TranspileOutput;
+ function transpile(input: string, compilerOptions?: CompilerOptions, fileName?: string, diagnostics?: Diagnostic[], moduleName?: string): string;
+ function createLanguageServiceSourceFile(fileName: string, scriptSnapshot: IScriptSnapshot, scriptTarget: ScriptTarget, version: string, setNodeParents: boolean): SourceFile;
+ let disableIncrementalParsing: boolean;
+ function updateLanguageServiceSourceFile(sourceFile: SourceFile, scriptSnapshot: IScriptSnapshot, version: string, textChangeRange: TextChangeRange, aggressiveChecks?: boolean): SourceFile;
+ function createGetCanonicalFileName(useCaseSensitivefileNames: boolean): (fileName: string) => string;
+ function createDocumentRegistry(useCaseSensitiveFileNames?: boolean): DocumentRegistry;
+ function preProcessFile(sourceText: string, readImportFiles?: boolean): PreProcessedFileInfo;
+ function createLanguageService(host: LanguageServiceHost, documentRegistry?: DocumentRegistry): LanguageService;
+ function createClassifier(): Classifier;
+ /**
+ * Get the path of the default library files (lib.d.ts) as distributed with the typescript
+ * node package.
+ * The functionality is not supported if the ts module is consumed outside of a node module.
+ */
+ function getDefaultLibFilePath(options: CompilerOptions): string;
+}
diff --git a/typescript/typescript.d.ts b/typescript/typescript.d.ts
index 1139c46489..8078c6de27 100644
--- a/typescript/typescript.d.ts
+++ b/typescript/typescript.d.ts
@@ -22,6 +22,14 @@ declare module "typescript" {
interface Map {
[index: string]: T;
}
+ interface FileMap {
+ get(fileName: string): T;
+ set(fileName: string, value: T): void;
+ contains(fileName: string): boolean;
+ remove(fileName: string): void;
+ forEachValue(f: (v: T) => void): void;
+ clear(): void;
+ }
interface TextRange {
pos: number;
end: number;
@@ -33,230 +41,294 @@ declare module "typescript" {
MultiLineCommentTrivia = 3,
NewLineTrivia = 4,
WhitespaceTrivia = 5,
- NumericLiteral = 6,
- StringLiteral = 7,
- RegularExpressionLiteral = 8,
- NoSubstitutionTemplateLiteral = 9,
- TemplateHead = 10,
- TemplateMiddle = 11,
- TemplateTail = 12,
- OpenBraceToken = 13,
- CloseBraceToken = 14,
- OpenParenToken = 15,
- CloseParenToken = 16,
- OpenBracketToken = 17,
- CloseBracketToken = 18,
- DotToken = 19,
- DotDotDotToken = 20,
- SemicolonToken = 21,
- CommaToken = 22,
- LessThanToken = 23,
- GreaterThanToken = 24,
- LessThanEqualsToken = 25,
- GreaterThanEqualsToken = 26,
- EqualsEqualsToken = 27,
- ExclamationEqualsToken = 28,
- EqualsEqualsEqualsToken = 29,
- ExclamationEqualsEqualsToken = 30,
- EqualsGreaterThanToken = 31,
- PlusToken = 32,
- MinusToken = 33,
- AsteriskToken = 34,
- SlashToken = 35,
- PercentToken = 36,
- PlusPlusToken = 37,
- MinusMinusToken = 38,
- LessThanLessThanToken = 39,
- GreaterThanGreaterThanToken = 40,
- GreaterThanGreaterThanGreaterThanToken = 41,
- AmpersandToken = 42,
- BarToken = 43,
- CaretToken = 44,
- ExclamationToken = 45,
- TildeToken = 46,
- AmpersandAmpersandToken = 47,
- BarBarToken = 48,
- QuestionToken = 49,
- ColonToken = 50,
- EqualsToken = 51,
- PlusEqualsToken = 52,
- MinusEqualsToken = 53,
- AsteriskEqualsToken = 54,
- SlashEqualsToken = 55,
- PercentEqualsToken = 56,
- LessThanLessThanEqualsToken = 57,
- GreaterThanGreaterThanEqualsToken = 58,
- GreaterThanGreaterThanGreaterThanEqualsToken = 59,
- AmpersandEqualsToken = 60,
- BarEqualsToken = 61,
- CaretEqualsToken = 62,
- Identifier = 63,
- BreakKeyword = 64,
- CaseKeyword = 65,
- CatchKeyword = 66,
- ClassKeyword = 67,
- ConstKeyword = 68,
- ContinueKeyword = 69,
- DebuggerKeyword = 70,
- DefaultKeyword = 71,
- DeleteKeyword = 72,
- DoKeyword = 73,
- ElseKeyword = 74,
- EnumKeyword = 75,
- ExportKeyword = 76,
- ExtendsKeyword = 77,
- FalseKeyword = 78,
- FinallyKeyword = 79,
- ForKeyword = 80,
- FunctionKeyword = 81,
- IfKeyword = 82,
- ImportKeyword = 83,
- InKeyword = 84,
- InstanceOfKeyword = 85,
- NewKeyword = 86,
- NullKeyword = 87,
- ReturnKeyword = 88,
- SuperKeyword = 89,
- SwitchKeyword = 90,
- ThisKeyword = 91,
- ThrowKeyword = 92,
- TrueKeyword = 93,
- TryKeyword = 94,
- TypeOfKeyword = 95,
- VarKeyword = 96,
- VoidKeyword = 97,
- WhileKeyword = 98,
- WithKeyword = 99,
- ImplementsKeyword = 100,
- InterfaceKeyword = 101,
- LetKeyword = 102,
- PackageKeyword = 103,
- PrivateKeyword = 104,
- ProtectedKeyword = 105,
- PublicKeyword = 106,
- StaticKeyword = 107,
- YieldKeyword = 108,
- AnyKeyword = 109,
- BooleanKeyword = 110,
- ConstructorKeyword = 111,
- DeclareKeyword = 112,
- GetKeyword = 113,
- ModuleKeyword = 114,
- RequireKeyword = 115,
- NumberKeyword = 116,
- SetKeyword = 117,
- StringKeyword = 118,
- TypeKeyword = 119,
- QualifiedName = 120,
- ComputedPropertyName = 121,
- TypeParameter = 122,
- Parameter = 123,
- Property = 124,
- Method = 125,
- Constructor = 126,
- GetAccessor = 127,
- SetAccessor = 128,
- CallSignature = 129,
- ConstructSignature = 130,
- IndexSignature = 131,
- TypeReference = 132,
- FunctionType = 133,
- ConstructorType = 134,
- TypeQuery = 135,
- TypeLiteral = 136,
- ArrayType = 137,
- TupleType = 138,
- UnionType = 139,
- ParenthesizedType = 140,
- ArrayLiteralExpression = 141,
- ObjectLiteralExpression = 142,
- PropertyAccessExpression = 143,
- ElementAccessExpression = 144,
- CallExpression = 145,
- NewExpression = 146,
- TaggedTemplateExpression = 147,
- TypeAssertionExpression = 148,
- ParenthesizedExpression = 149,
- FunctionExpression = 150,
- ArrowFunction = 151,
- DeleteExpression = 152,
- TypeOfExpression = 153,
- VoidExpression = 154,
- PrefixUnaryExpression = 155,
- PostfixUnaryExpression = 156,
- BinaryExpression = 157,
- ConditionalExpression = 158,
- TemplateExpression = 159,
- YieldExpression = 160,
- OmittedExpression = 161,
- TemplateSpan = 162,
- Block = 163,
- VariableStatement = 164,
- EmptyStatement = 165,
- ExpressionStatement = 166,
- IfStatement = 167,
- DoStatement = 168,
- WhileStatement = 169,
- ForStatement = 170,
- ForInStatement = 171,
- ContinueStatement = 172,
- BreakStatement = 173,
- ReturnStatement = 174,
- WithStatement = 175,
- SwitchStatement = 176,
- LabeledStatement = 177,
- ThrowStatement = 178,
- TryStatement = 179,
- TryBlock = 180,
- FinallyBlock = 181,
- DebuggerStatement = 182,
- VariableDeclaration = 183,
- FunctionDeclaration = 184,
- ClassDeclaration = 185,
- InterfaceDeclaration = 186,
- TypeAliasDeclaration = 187,
- EnumDeclaration = 188,
- ModuleDeclaration = 189,
- ModuleBlock = 190,
- ImportDeclaration = 191,
- ExportAssignment = 192,
- ExternalModuleReference = 193,
- CaseClause = 194,
- DefaultClause = 195,
- HeritageClause = 196,
- CatchClause = 197,
- PropertyAssignment = 198,
- ShorthandPropertyAssignment = 199,
- EnumMember = 200,
- SourceFile = 201,
- Program = 202,
- SyntaxList = 203,
- Count = 204,
- FirstAssignment = 51,
- LastAssignment = 62,
- FirstReservedWord = 64,
- LastReservedWord = 99,
- FirstKeyword = 64,
- LastKeyword = 119,
- FirstFutureReservedWord = 100,
- LastFutureReservedWord = 108,
- FirstTypeNode = 132,
- LastTypeNode = 140,
- FirstPunctuation = 13,
- LastPunctuation = 62,
+ ShebangTrivia = 6,
+ ConflictMarkerTrivia = 7,
+ NumericLiteral = 8,
+ StringLiteral = 9,
+ RegularExpressionLiteral = 10,
+ NoSubstitutionTemplateLiteral = 11,
+ TemplateHead = 12,
+ TemplateMiddle = 13,
+ TemplateTail = 14,
+ OpenBraceToken = 15,
+ CloseBraceToken = 16,
+ OpenParenToken = 17,
+ CloseParenToken = 18,
+ OpenBracketToken = 19,
+ CloseBracketToken = 20,
+ DotToken = 21,
+ DotDotDotToken = 22,
+ SemicolonToken = 23,
+ CommaToken = 24,
+ LessThanToken = 25,
+ LessThanSlashToken = 26,
+ GreaterThanToken = 27,
+ LessThanEqualsToken = 28,
+ GreaterThanEqualsToken = 29,
+ EqualsEqualsToken = 30,
+ ExclamationEqualsToken = 31,
+ EqualsEqualsEqualsToken = 32,
+ ExclamationEqualsEqualsToken = 33,
+ EqualsGreaterThanToken = 34,
+ PlusToken = 35,
+ MinusToken = 36,
+ AsteriskToken = 37,
+ SlashToken = 38,
+ PercentToken = 39,
+ PlusPlusToken = 40,
+ MinusMinusToken = 41,
+ LessThanLessThanToken = 42,
+ GreaterThanGreaterThanToken = 43,
+ GreaterThanGreaterThanGreaterThanToken = 44,
+ AmpersandToken = 45,
+ BarToken = 46,
+ CaretToken = 47,
+ ExclamationToken = 48,
+ TildeToken = 49,
+ AmpersandAmpersandToken = 50,
+ BarBarToken = 51,
+ QuestionToken = 52,
+ ColonToken = 53,
+ AtToken = 54,
+ EqualsToken = 55,
+ PlusEqualsToken = 56,
+ MinusEqualsToken = 57,
+ AsteriskEqualsToken = 58,
+ SlashEqualsToken = 59,
+ PercentEqualsToken = 60,
+ LessThanLessThanEqualsToken = 61,
+ GreaterThanGreaterThanEqualsToken = 62,
+ GreaterThanGreaterThanGreaterThanEqualsToken = 63,
+ AmpersandEqualsToken = 64,
+ BarEqualsToken = 65,
+ CaretEqualsToken = 66,
+ Identifier = 67,
+ BreakKeyword = 68,
+ CaseKeyword = 69,
+ CatchKeyword = 70,
+ ClassKeyword = 71,
+ ConstKeyword = 72,
+ ContinueKeyword = 73,
+ DebuggerKeyword = 74,
+ DefaultKeyword = 75,
+ DeleteKeyword = 76,
+ DoKeyword = 77,
+ ElseKeyword = 78,
+ EnumKeyword = 79,
+ ExportKeyword = 80,
+ ExtendsKeyword = 81,
+ FalseKeyword = 82,
+ FinallyKeyword = 83,
+ ForKeyword = 84,
+ FunctionKeyword = 85,
+ IfKeyword = 86,
+ ImportKeyword = 87,
+ InKeyword = 88,
+ InstanceOfKeyword = 89,
+ NewKeyword = 90,
+ NullKeyword = 91,
+ ReturnKeyword = 92,
+ SuperKeyword = 93,
+ SwitchKeyword = 94,
+ ThisKeyword = 95,
+ ThrowKeyword = 96,
+ TrueKeyword = 97,
+ TryKeyword = 98,
+ TypeOfKeyword = 99,
+ VarKeyword = 100,
+ VoidKeyword = 101,
+ WhileKeyword = 102,
+ WithKeyword = 103,
+ ImplementsKeyword = 104,
+ InterfaceKeyword = 105,
+ LetKeyword = 106,
+ PackageKeyword = 107,
+ PrivateKeyword = 108,
+ ProtectedKeyword = 109,
+ PublicKeyword = 110,
+ StaticKeyword = 111,
+ YieldKeyword = 112,
+ AbstractKeyword = 113,
+ AsKeyword = 114,
+ AnyKeyword = 115,
+ AsyncKeyword = 116,
+ AwaitKeyword = 117,
+ BooleanKeyword = 118,
+ ConstructorKeyword = 119,
+ DeclareKeyword = 120,
+ GetKeyword = 121,
+ IsKeyword = 122,
+ ModuleKeyword = 123,
+ NamespaceKeyword = 124,
+ RequireKeyword = 125,
+ NumberKeyword = 126,
+ SetKeyword = 127,
+ StringKeyword = 128,
+ SymbolKeyword = 129,
+ TypeKeyword = 130,
+ FromKeyword = 131,
+ OfKeyword = 132,
+ QualifiedName = 133,
+ ComputedPropertyName = 134,
+ TypeParameter = 135,
+ Parameter = 136,
+ Decorator = 137,
+ PropertySignature = 138,
+ PropertyDeclaration = 139,
+ MethodSignature = 140,
+ MethodDeclaration = 141,
+ Constructor = 142,
+ GetAccessor = 143,
+ SetAccessor = 144,
+ CallSignature = 145,
+ ConstructSignature = 146,
+ IndexSignature = 147,
+ TypePredicate = 148,
+ TypeReference = 149,
+ FunctionType = 150,
+ ConstructorType = 151,
+ TypeQuery = 152,
+ TypeLiteral = 153,
+ ArrayType = 154,
+ TupleType = 155,
+ UnionType = 156,
+ IntersectionType = 157,
+ ParenthesizedType = 158,
+ ObjectBindingPattern = 159,
+ ArrayBindingPattern = 160,
+ BindingElement = 161,
+ ArrayLiteralExpression = 162,
+ ObjectLiteralExpression = 163,
+ PropertyAccessExpression = 164,
+ ElementAccessExpression = 165,
+ CallExpression = 166,
+ NewExpression = 167,
+ TaggedTemplateExpression = 168,
+ TypeAssertionExpression = 169,
+ ParenthesizedExpression = 170,
+ FunctionExpression = 171,
+ ArrowFunction = 172,
+ DeleteExpression = 173,
+ TypeOfExpression = 174,
+ VoidExpression = 175,
+ AwaitExpression = 176,
+ PrefixUnaryExpression = 177,
+ PostfixUnaryExpression = 178,
+ BinaryExpression = 179,
+ ConditionalExpression = 180,
+ TemplateExpression = 181,
+ YieldExpression = 182,
+ SpreadElementExpression = 183,
+ ClassExpression = 184,
+ OmittedExpression = 185,
+ ExpressionWithTypeArguments = 186,
+ AsExpression = 187,
+ TemplateSpan = 188,
+ SemicolonClassElement = 189,
+ Block = 190,
+ VariableStatement = 191,
+ EmptyStatement = 192,
+ ExpressionStatement = 193,
+ IfStatement = 194,
+ DoStatement = 195,
+ WhileStatement = 196,
+ ForStatement = 197,
+ ForInStatement = 198,
+ ForOfStatement = 199,
+ ContinueStatement = 200,
+ BreakStatement = 201,
+ ReturnStatement = 202,
+ WithStatement = 203,
+ SwitchStatement = 204,
+ LabeledStatement = 205,
+ ThrowStatement = 206,
+ TryStatement = 207,
+ DebuggerStatement = 208,
+ VariableDeclaration = 209,
+ VariableDeclarationList = 210,
+ FunctionDeclaration = 211,
+ ClassDeclaration = 212,
+ InterfaceDeclaration = 213,
+ TypeAliasDeclaration = 214,
+ EnumDeclaration = 215,
+ ModuleDeclaration = 216,
+ ModuleBlock = 217,
+ CaseBlock = 218,
+ ImportEqualsDeclaration = 219,
+ ImportDeclaration = 220,
+ ImportClause = 221,
+ NamespaceImport = 222,
+ NamedImports = 223,
+ ImportSpecifier = 224,
+ ExportAssignment = 225,
+ ExportDeclaration = 226,
+ NamedExports = 227,
+ ExportSpecifier = 228,
+ MissingDeclaration = 229,
+ ExternalModuleReference = 230,
+ JsxElement = 231,
+ JsxSelfClosingElement = 232,
+ JsxOpeningElement = 233,
+ JsxText = 234,
+ JsxClosingElement = 235,
+ JsxAttribute = 236,
+ JsxSpreadAttribute = 237,
+ JsxExpression = 238,
+ CaseClause = 239,
+ DefaultClause = 240,
+ HeritageClause = 241,
+ CatchClause = 242,
+ PropertyAssignment = 243,
+ ShorthandPropertyAssignment = 244,
+ EnumMember = 245,
+ SourceFile = 246,
+ JSDocTypeExpression = 247,
+ JSDocAllType = 248,
+ JSDocUnknownType = 249,
+ JSDocArrayType = 250,
+ JSDocUnionType = 251,
+ JSDocTupleType = 252,
+ JSDocNullableType = 253,
+ JSDocNonNullableType = 254,
+ JSDocRecordType = 255,
+ JSDocRecordMember = 256,
+ JSDocTypeReference = 257,
+ JSDocOptionalType = 258,
+ JSDocFunctionType = 259,
+ JSDocVariadicType = 260,
+ JSDocConstructorType = 261,
+ JSDocThisType = 262,
+ JSDocComment = 263,
+ JSDocTag = 264,
+ JSDocParameterTag = 265,
+ JSDocReturnTag = 266,
+ JSDocTypeTag = 267,
+ JSDocTemplateTag = 268,
+ SyntaxList = 269,
+ Count = 270,
+ FirstAssignment = 55,
+ LastAssignment = 66,
+ FirstReservedWord = 68,
+ LastReservedWord = 103,
+ FirstKeyword = 68,
+ LastKeyword = 132,
+ FirstFutureReservedWord = 104,
+ LastFutureReservedWord = 112,
+ FirstTypeNode = 149,
+ LastTypeNode = 158,
+ FirstPunctuation = 15,
+ LastPunctuation = 66,
FirstToken = 0,
- LastToken = 119,
+ LastToken = 132,
FirstTriviaToken = 2,
- LastTriviaToken = 5,
- FirstLiteralToken = 6,
- LastLiteralToken = 9,
- FirstTemplateToken = 9,
- LastTemplateToken = 12,
- FirstOperator = 21,
- LastOperator = 62,
- FirstBinaryOperator = 23,
- LastBinaryOperator = 62,
- FirstNode = 120,
+ LastTriviaToken = 7,
+ FirstLiteralToken = 8,
+ LastLiteralToken = 11,
+ FirstTemplateToken = 11,
+ LastTemplateToken = 14,
+ FirstBinaryOperator = 25,
+ LastBinaryOperator = 66,
+ FirstNode = 133,
}
const enum NodeFlags {
Export = 1,
@@ -265,35 +337,35 @@ declare module "typescript" {
Private = 32,
Protected = 64,
Static = 128,
- MultiLine = 256,
- Synthetic = 512,
- DeclarationFile = 1024,
- Let = 2048,
- Const = 4096,
- OctalLiteral = 8192,
- Modifier = 243,
+ Abstract = 256,
+ Async = 512,
+ Default = 1024,
+ MultiLine = 2048,
+ Synthetic = 4096,
+ DeclarationFile = 8192,
+ Let = 16384,
+ Const = 32768,
+ OctalLiteral = 65536,
+ Namespace = 131072,
+ ExportContext = 262144,
+ Modifier = 2035,
AccessibilityModifier = 112,
- BlockScoped = 6144,
+ BlockScoped = 49152,
}
- const enum ParserContextFlags {
- StrictMode = 1,
- DisallowIn = 2,
- Yield = 4,
- GeneratorParameter = 8,
- ContainsError = 16,
- HasPropagatedChildContainsErrorFlag = 32,
+ const enum JsxFlags {
+ None = 0,
+ IntrinsicNamedElement = 1,
+ IntrinsicIndexedElement = 2,
+ ClassElement = 4,
+ UnknownElement = 8,
+ IntrinsicElement = 3,
}
interface Node extends TextRange {
kind: SyntaxKind;
flags: NodeFlags;
- parserContextFlags?: ParserContextFlags;
- id?: number;
- parent?: Node;
- symbol?: Symbol;
- locals?: SymbolTable;
- nextContainer?: Node;
- localSymbol?: Symbol;
+ decorators?: NodeArray;
modifiers?: ModifiersArray;
+ parent?: Node;
}
interface NodeArray extends Array, TextRange {
hasTrailingComma?: boolean;
@@ -303,13 +375,14 @@ declare module "typescript" {
}
interface Identifier extends PrimaryExpression {
text: string;
+ originalKeywordKind?: SyntaxKind;
}
interface QualifiedName extends Node {
left: EntityName;
right: Identifier;
}
type EntityName = Identifier | QualifiedName;
- type DeclarationName = Identifier | LiteralExpression | ComputedPropertyName;
+ type DeclarationName = Identifier | LiteralExpression | ComputedPropertyName | BindingPattern;
interface Declaration extends Node {
_declarationBrand: any;
name?: DeclarationName;
@@ -317,6 +390,9 @@ declare module "typescript" {
interface ComputedPropertyName extends Node {
expression: Expression;
}
+ interface Decorator extends Node {
+ expression: LeftHandSideExpression;
+ }
interface TypeParameterDeclaration extends Declaration {
name: Identifier;
constraint?: TypeNode;
@@ -328,45 +404,64 @@ declare module "typescript" {
type?: TypeNode;
}
interface VariableDeclaration extends Declaration {
- name: Identifier;
+ parent?: VariableDeclarationList;
+ name: Identifier | BindingPattern;
type?: TypeNode;
initializer?: Expression;
}
+ interface VariableDeclarationList extends Node {
+ declarations: NodeArray;
+ }
interface ParameterDeclaration extends Declaration {
dotDotDotToken?: Node;
- name: Identifier;
- questionToken?: Node;
- type?: TypeNode | StringLiteralExpression;
- initializer?: Expression;
- }
- interface PropertyDeclaration extends Declaration, ClassElement {
- _propertyDeclarationBrand: any;
+ name: Identifier | BindingPattern;
+ questionToken?: Node;
+ type?: TypeNode;
+ initializer?: Expression;
+ }
+ interface BindingElement extends Declaration {
+ propertyName?: Identifier;
+ dotDotDotToken?: Node;
+ name: Identifier | BindingPattern;
+ initializer?: Expression;
+ }
+ interface PropertyDeclaration extends Declaration, ClassElement {
+ name: DeclarationName;
questionToken?: Node;
type?: TypeNode;
initializer?: Expression;
}
- type VariableOrParameterDeclaration = VariableDeclaration | ParameterDeclaration;
- type VariableOrParameterOrPropertyDeclaration = VariableOrParameterDeclaration | PropertyDeclaration;
interface ObjectLiteralElement extends Declaration {
_objectLiteralBrandBrand: any;
}
- interface ShorthandPropertyAssignment extends ObjectLiteralElement {
- name: Identifier;
- questionToken?: Node;
- }
interface PropertyAssignment extends ObjectLiteralElement {
_propertyAssignmentBrand: any;
name: DeclarationName;
questionToken?: Node;
initializer: Expression;
}
+ interface ShorthandPropertyAssignment extends ObjectLiteralElement {
+ name: Identifier;
+ questionToken?: Node;
+ }
+ interface VariableLikeDeclaration extends Declaration {
+ propertyName?: Identifier;
+ dotDotDotToken?: Node;
+ name: DeclarationName;
+ questionToken?: Node;
+ type?: TypeNode;
+ initializer?: Expression;
+ }
+ interface BindingPattern extends Node {
+ elements: NodeArray;
+ }
/**
* Several node kinds share function-like features such as a signature,
* a name, and a body. These nodes should extend FunctionLikeDeclaration.
* Examples:
- * FunctionDeclaration
- * MethodDeclaration
- * AccessorDeclaration
+ * - FunctionDeclaration
+ * - MethodDeclaration
+ * - AccessorDeclaration
*/
interface FunctionLikeDeclaration extends SignatureDeclaration {
_functionLikeDeclarationBrand: any;
@@ -375,7 +470,7 @@ declare module "typescript" {
body?: Block | Expression;
}
interface FunctionDeclaration extends FunctionLikeDeclaration, Statement {
- name: Identifier;
+ name?: Identifier;
body?: Block;
}
interface MethodDeclaration extends FunctionLikeDeclaration, ClassElement, ObjectLiteralElement {
@@ -384,6 +479,9 @@ declare module "typescript" {
interface ConstructorDeclaration extends FunctionLikeDeclaration, ClassElement {
body?: Block;
}
+ interface SemicolonClassElement extends ClassElement {
+ _semicolonClassElementBrand: any;
+ }
interface AccessorDeclaration extends FunctionLikeDeclaration, ClassElement, ObjectLiteralElement {
_accessorDeclarationBrand: any;
body: Block;
@@ -401,6 +499,10 @@ declare module "typescript" {
typeName: EntityName;
typeArguments?: NodeArray;
}
+ interface TypePredicateNode extends TypeNode {
+ parameterName: Identifier;
+ type: TypeNode;
+ }
interface TypeQueryNode extends TypeNode {
exprName: EntityName;
}
@@ -413,12 +515,19 @@ declare module "typescript" {
interface TupleTypeNode extends TypeNode {
elementTypes: NodeArray;
}
- interface UnionTypeNode extends TypeNode {
+ interface UnionOrIntersectionTypeNode extends TypeNode {
types: NodeArray;
}
+ interface UnionTypeNode extends UnionOrIntersectionTypeNode {
+ }
+ interface IntersectionTypeNode extends UnionOrIntersectionTypeNode {
+ }
interface ParenthesizedTypeNode extends TypeNode {
type: TypeNode;
}
+ interface StringLiteral extends LiteralExpression, TypeNode {
+ _stringLiteralBrand: any;
+ }
interface Expression extends Node {
_expressionBrand: any;
contextualType?: Type;
@@ -455,30 +564,36 @@ declare module "typescript" {
interface VoidExpression extends UnaryExpression {
expression: UnaryExpression;
}
+ interface AwaitExpression extends UnaryExpression {
+ expression: UnaryExpression;
+ }
interface YieldExpression extends Expression {
asteriskToken?: Node;
- expression: Expression;
+ expression?: Expression;
}
interface BinaryExpression extends Expression {
left: Expression;
- operator: SyntaxKind;
+ operatorToken: Node;
right: Expression;
}
interface ConditionalExpression extends Expression {
condition: Expression;
+ questionToken: Node;
whenTrue: Expression;
+ colonToken: Node;
whenFalse: Expression;
}
interface FunctionExpression extends PrimaryExpression, FunctionLikeDeclaration {
name?: Identifier;
body: Block | Expression;
}
+ interface ArrowFunction extends Expression, FunctionLikeDeclaration {
+ equalsGreaterThanToken: Node;
+ }
interface LiteralExpression extends PrimaryExpression {
text: string;
isUnterminated?: boolean;
- }
- interface StringLiteralExpression extends LiteralExpression {
- _stringLiteralExpressionBrand: any;
+ hasExtendedUnicodeEscape?: boolean;
}
interface TemplateExpression extends PrimaryExpression {
head: LiteralExpression;
@@ -494,11 +609,15 @@ declare module "typescript" {
interface ArrayLiteralExpression extends PrimaryExpression {
elements: NodeArray;
}
+ interface SpreadElementExpression extends Expression {
+ expression: Expression;
+ }
interface ObjectLiteralExpression extends PrimaryExpression, Declaration {
properties: NodeArray;
}
interface PropertyAccessExpression extends MemberExpression {
expression: LeftHandSideExpression;
+ dotToken: Node;
name: Identifier;
}
interface ElementAccessExpression extends MemberExpression {
@@ -510,25 +629,65 @@ declare module "typescript" {
typeArguments?: NodeArray;
arguments: NodeArray;
}
+ interface ExpressionWithTypeArguments extends TypeNode {
+ expression: LeftHandSideExpression;
+ typeArguments?: NodeArray;
+ }
interface NewExpression extends CallExpression, PrimaryExpression {
}
interface TaggedTemplateExpression extends MemberExpression {
tag: LeftHandSideExpression;
template: LiteralExpression | TemplateExpression;
}
- type CallLikeExpression = CallExpression | NewExpression | TaggedTemplateExpression;
+ type CallLikeExpression = CallExpression | NewExpression | TaggedTemplateExpression | Decorator;
+ interface AsExpression extends Expression {
+ expression: Expression;
+ type: TypeNode;
+ }
interface TypeAssertion extends UnaryExpression {
type: TypeNode;
expression: UnaryExpression;
}
- interface Statement extends Node, ModuleElement {
+ type AssertionExpression = TypeAssertion | AsExpression;
+ interface JsxElement extends PrimaryExpression {
+ openingElement: JsxOpeningElement;
+ children: NodeArray;
+ closingElement: JsxClosingElement;
+ }
+ interface JsxOpeningElement extends Expression {
+ _openingElementBrand?: any;
+ tagName: EntityName;
+ attributes: NodeArray;
+ }
+ interface JsxSelfClosingElement extends PrimaryExpression, JsxOpeningElement {
+ _selfClosingElementBrand?: any;
+ }
+ type JsxOpeningLikeElement = JsxSelfClosingElement | JsxOpeningElement;
+ interface JsxAttribute extends Node {
+ name: Identifier;
+ initializer?: Expression;
+ }
+ interface JsxSpreadAttribute extends Node {
+ expression: Expression;
+ }
+ interface JsxClosingElement extends Node {
+ tagName: EntityName;
+ }
+ interface JsxExpression extends Expression {
+ expression?: Expression;
+ }
+ interface JsxText extends Node {
+ _jsxTextExpressionBrand: any;
+ }
+ type JsxChild = JsxText | JsxExpression | JsxElement | JsxSelfClosingElement;
+ interface Statement extends Node {
_statementBrand: any;
}
interface Block extends Statement {
statements: NodeArray;
}
interface VariableStatement extends Statement {
- declarations: NodeArray;
+ declarationList: VariableDeclarationList;
}
interface ExpressionStatement extends Statement {
expression: Expression;
@@ -548,14 +707,16 @@ declare module "typescript" {
expression: Expression;
}
interface ForStatement extends IterationStatement {
- declarations?: NodeArray;
- initializer?: Expression;
+ initializer?: VariableDeclarationList | Expression;
condition?: Expression;
- iterator?: Expression;
+ incrementor?: Expression;
}
interface ForInStatement extends IterationStatement {
- declarations?: NodeArray;
- variable?: Expression;
+ initializer: VariableDeclarationList | Expression;
+ expression: Expression;
+ }
+ interface ForOfStatement extends IterationStatement {
+ initializer: VariableDeclarationList | Expression;
expression: Expression;
}
interface BreakOrContinueStatement extends Statement {
@@ -570,6 +731,9 @@ declare module "typescript" {
}
interface SwitchStatement extends Statement {
expression: Expression;
+ caseBlock: CaseBlock;
+ }
+ interface CaseBlock extends Node {
clauses: NodeArray;
}
interface CaseClause extends Node {
@@ -592,24 +756,24 @@ declare module "typescript" {
catchClause?: CatchClause;
finallyBlock?: Block;
}
- interface CatchClause extends Declaration {
- name: Identifier;
- type?: TypeNode;
+ interface CatchClause extends Node {
+ variableDeclaration: VariableDeclaration;
block: Block;
}
- interface ModuleElement extends Node {
- _moduleElementBrand: any;
- }
- interface ClassDeclaration extends Declaration, ModuleElement {
- name: Identifier;
+ interface ClassLikeDeclaration extends Declaration {
+ name?: Identifier;
typeParameters?: NodeArray;
heritageClauses?: NodeArray;
members: NodeArray;
}
+ interface ClassDeclaration extends ClassLikeDeclaration, Statement {
+ }
+ interface ClassExpression extends ClassLikeDeclaration, PrimaryExpression {
+ }
interface ClassElement extends Declaration {
_classElementBrand: any;
}
- interface InterfaceDeclaration extends Declaration, ModuleElement {
+ interface InterfaceDeclaration extends Declaration, Statement {
name: Identifier;
typeParameters?: NodeArray;
heritageClauses?: NodeArray;
@@ -617,85 +781,231 @@ declare module "typescript" {
}
interface HeritageClause extends Node {
token: SyntaxKind;
- types?: NodeArray;
+ types?: NodeArray;
}
- interface TypeAliasDeclaration extends Declaration, ModuleElement {
+ interface TypeAliasDeclaration extends Declaration, Statement {
name: Identifier;
+ typeParameters?: NodeArray;
type: TypeNode;
}
interface EnumMember extends Declaration {
name: DeclarationName;
initializer?: Expression;
}
- interface EnumDeclaration extends Declaration, ModuleElement {
+ interface EnumDeclaration extends Declaration, Statement {
name: Identifier;
members: NodeArray;
}
- interface ModuleDeclaration extends Declaration, ModuleElement {
+ interface ModuleDeclaration extends Declaration, Statement {
name: Identifier | LiteralExpression;
body: ModuleBlock | ModuleDeclaration;
}
- interface ModuleBlock extends Node, ModuleElement {
- statements: NodeArray;
+ interface ModuleBlock extends Node, Statement {
+ statements: NodeArray;
}
- interface ImportDeclaration extends Declaration, ModuleElement {
+ interface ImportEqualsDeclaration extends Declaration, Statement {
name: Identifier;
moduleReference: EntityName | ExternalModuleReference;
}
interface ExternalModuleReference extends Node {
expression?: Expression;
}
- interface ExportAssignment extends Statement, ModuleElement {
- exportName: Identifier;
+ interface ImportDeclaration extends Statement {
+ importClause?: ImportClause;
+ moduleSpecifier: Expression;
+ }
+ interface ImportClause extends Declaration {
+ name?: Identifier;
+ namedBindings?: NamespaceImport | NamedImports;
+ }
+ interface NamespaceImport extends Declaration {
+ name: Identifier;
+ }
+ interface ExportDeclaration extends Declaration, Statement {
+ exportClause?: NamedExports;
+ moduleSpecifier?: Expression;
+ }
+ interface NamedImportsOrExports extends Node {
+ elements: NodeArray;
+ }
+ type NamedImports = NamedImportsOrExports;
+ type NamedExports = NamedImportsOrExports;
+ interface ImportOrExportSpecifier extends Declaration {
+ propertyName?: Identifier;
+ name: Identifier;
+ }
+ type ImportSpecifier = ImportOrExportSpecifier;
+ type ExportSpecifier = ImportOrExportSpecifier;
+ interface ExportAssignment extends Declaration, Statement {
+ isExportEquals?: boolean;
+ expression: Expression;
}
interface FileReference extends TextRange {
- filename: string;
+ fileName: string;
}
interface CommentRange extends TextRange {
hasTrailingNewLine?: boolean;
+ kind: SyntaxKind;
+ }
+ interface JSDocTypeExpression extends Node {
+ type: JSDocType;
+ }
+ interface JSDocType extends TypeNode {
+ _jsDocTypeBrand: any;
+ }
+ interface JSDocAllType extends JSDocType {
+ _JSDocAllTypeBrand: any;
+ }
+ interface JSDocUnknownType extends JSDocType {
+ _JSDocUnknownTypeBrand: any;
+ }
+ interface JSDocArrayType extends JSDocType {
+ elementType: JSDocType;
+ }
+ interface JSDocUnionType extends JSDocType {
+ types: NodeArray;
+ }
+ interface JSDocTupleType extends JSDocType {
+ types: NodeArray;
+ }
+ interface JSDocNonNullableType extends JSDocType {
+ type: JSDocType;
+ }
+ interface JSDocNullableType extends JSDocType {
+ type: JSDocType;
+ }
+ interface JSDocRecordType extends JSDocType, TypeLiteralNode {
+ members: NodeArray;
+ }
+ interface JSDocTypeReference extends JSDocType {
+ name: EntityName;
+ typeArguments: NodeArray;
+ }
+ interface JSDocOptionalType extends JSDocType {
+ type: JSDocType;
+ }
+ interface JSDocFunctionType extends JSDocType, SignatureDeclaration {
+ parameters: NodeArray;
+ type: JSDocType;
+ }
+ interface JSDocVariadicType extends JSDocType {
+ type: JSDocType;
+ }
+ interface JSDocConstructorType extends JSDocType {
+ type: JSDocType;
+ }
+ interface JSDocThisType extends JSDocType {
+ type: JSDocType;
+ }
+ interface JSDocRecordMember extends PropertyDeclaration {
+ name: Identifier | LiteralExpression;
+ type?: JSDocType;
+ }
+ interface JSDocComment extends Node {
+ tags: NodeArray;
+ }
+ interface JSDocTag extends Node {
+ atToken: Node;
+ tagName: Identifier;
+ }
+ interface JSDocTemplateTag extends JSDocTag {
+ typeParameters: NodeArray;
+ }
+ interface JSDocReturnTag extends JSDocTag {
+ typeExpression: JSDocTypeExpression;
+ }
+ interface JSDocTypeTag extends JSDocTag {
+ typeExpression: JSDocTypeExpression;
+ }
+ interface JSDocParameterTag extends JSDocTag {
+ preParameterName?: Identifier;
+ typeExpression?: JSDocTypeExpression;
+ postParameterName?: Identifier;
+ isBracketed: boolean;
}
interface SourceFile extends Declaration {
- statements: NodeArray;
+ statements: NodeArray;
endOfFileToken: Node;
- filename: string;
+ fileName: string;
text: string;
- getLineAndCharacterFromPosition(position: number): LineAndCharacter;
- getPositionFromLineAndCharacter(line: number, character: number): number;
- getLineStarts(): number[];
- amdDependencies: string[];
- amdModuleName: string;
+ amdDependencies: {
+ path: string;
+ name: string;
+ }[];
+ moduleName: string;
referencedFiles: FileReference[];
- referenceDiagnostics: Diagnostic[];
- parseDiagnostics: Diagnostic[];
- grammarDiagnostics: Diagnostic[];
- getSyntacticDiagnostics(): Diagnostic[];
- semanticDiagnostics: Diagnostic[];
+ languageVariant: LanguageVariant;
+ /**
+ * lib.d.ts should have a reference comment like
+ *
+ * ///
+ *
+ * If any other file has this comment, it signals not to include lib.d.ts
+ * because this containing file is intended to act as a default library.
+ */
hasNoDefaultLib: boolean;
- externalModuleIndicator: Node;
- nodeCount: number;
- identifierCount: number;
- symbolCount: number;
- isOpen: boolean;
- version: string;
languageVersion: ScriptTarget;
- identifiers: Map;
}
- interface Program {
- getSourceFile(filename: string): SourceFile;
- getSourceFiles(): SourceFile[];
+ interface ScriptReferenceHost {
getCompilerOptions(): CompilerOptions;
- getCompilerHost(): CompilerHost;
- getDiagnostics(sourceFile?: SourceFile): Diagnostic[];
- getGlobalDiagnostics(): Diagnostic[];
- getTypeChecker(fullTypeCheckMode: boolean): TypeChecker;
- getCommonSourceDirectory(): string;
+ getSourceFile(fileName: string): SourceFile;
+ getCurrentDirectory(): string;
+ }
+ interface ParseConfigHost extends ModuleResolutionHost {
+ readDirectory(rootDir: string, extension: string, exclude: string[]): string[];
+ }
+ interface WriteFileCallback {
+ (fileName: string, data: string, writeByteOrderMark: boolean, onError?: (message: string) => void): void;
+ }
+ class OperationCanceledException {
+ }
+ interface CancellationToken {
+ isCancellationRequested(): boolean;
+ /** @throws OperationCanceledException if isCancellationRequested is true */
+ throwIfCancellationRequested(): void;
+ }
+ interface Program extends ScriptReferenceHost {
+ /**
+ * Get a list of root file names that were passed to a 'createProgram'
+ */
+ getRootFileNames(): string[];
+ /**
+ * Get a list of files in the program
+ */
+ getSourceFiles(): SourceFile[];
+ /**
+ * Emits the JavaScript and declaration files. If targetSourceFile is not specified, then
+ * the JavaScript and declaration files will be produced for all the files in this program.
+ * If targetSourceFile is specified, then only the JavaScript and declaration for that
+ * specific file will be generated.
+ *
+ * If writeFile is not specified then the writeFile callback from the compiler host will be
+ * used for writing the JavaScript and declaration files. Otherwise, the writeFile parameter
+ * will be invoked when writing the JavaScript and declaration files.
+ */
+ emit(targetSourceFile?: SourceFile, writeFile?: WriteFileCallback, cancellationToken?: CancellationToken): EmitResult;
+ getOptionsDiagnostics(cancellationToken?: CancellationToken): Diagnostic[];
+ getGlobalDiagnostics(cancellationToken?: CancellationToken): Diagnostic[];
+ getSyntacticDiagnostics(sourceFile?: SourceFile, cancellationToken?: CancellationToken): Diagnostic[];
+ getSemanticDiagnostics(sourceFile?: SourceFile, cancellationToken?: CancellationToken): Diagnostic[];
+ getDeclarationDiagnostics(sourceFile?: SourceFile, cancellationToken?: CancellationToken): Diagnostic[];
+ /**
+ * Gets a type checker that can be used to semantically analyze source fils in the program.
+ */
+ getTypeChecker(): TypeChecker;
}
interface SourceMapSpan {
+ /** Line number in the .js file. */
emittedLine: number;
+ /** Column number in the .js file. */
emittedColumn: number;
+ /** Line number in the .ts file. */
sourceLine: number;
+ /** Column number in the .ts file. */
sourceColumn: number;
+ /** Optional name (index into names array) associated with this span. */
nameIndex?: number;
+ /** .ts file (index into sources array) associated with this span */
sourceIndex: number;
}
interface SourceMapData {
@@ -704,40 +1014,30 @@ declare module "typescript" {
sourceMapFile: string;
sourceMapSourceRoot: string;
sourceMapSources: string[];
+ sourceMapSourcesContent?: string[];
inputSourceFileNames: string[];
sourceMapNames?: string[];
sourceMapMappings: string;
sourceMapDecodedMappings: SourceMapSpan[];
}
- enum EmitReturnStatus {
- Succeeded = 0,
- AllOutputGenerationSkipped = 1,
- JSGeneratedWithSemanticErrors = 2,
- DeclarationGenerationSkipped = 3,
- EmitErrorsEncountered = 4,
- CompilerOptionsErrors = 5,
+ /** Return code used by getEmitOutput function to indicate status of the function */
+ enum ExitStatus {
+ Success = 0,
+ DiagnosticsPresent_OutputsSkipped = 1,
+ DiagnosticsPresent_OutputsGenerated = 2,
}
interface EmitResult {
- emitResultStatus: EmitReturnStatus;
+ emitSkipped: boolean;
diagnostics: Diagnostic[];
- sourceMaps: SourceMapData[];
}
interface TypeChecker {
- getProgram(): Program;
- getDiagnostics(sourceFile?: SourceFile): Diagnostic[];
- getDeclarationDiagnostics(sourceFile: SourceFile): Diagnostic[];
- getGlobalDiagnostics(): Diagnostic[];
- getNodeCount(): number;
- getIdentifierCount(): number;
- getSymbolCount(): number;
- getTypeCount(): number;
- emitFiles(targetSourceFile?: SourceFile): EmitResult;
getTypeOfSymbolAtLocation(symbol: Symbol, node: Node): Type;
getDeclaredTypeOfSymbol(symbol: Symbol): Type;
getPropertiesOfType(type: Type): Symbol[];
getPropertyOfType(type: Type, propertyName: string): Symbol;
getSignaturesOfType(type: Type, kind: SignatureKind): Signature[];
getIndexTypeOfType(type: Type, kind: IndexKind): Type;
+ getBaseTypes(type: InterfaceType): ObjectType[];
getReturnTypeOfSignature(signature: Signature): Type;
getSymbolsInScope(location: Node, meaning: SymbolFlags): Symbol[];
getSymbolAtLocation(node: Node): Symbol;
@@ -755,10 +1055,13 @@ declare module "typescript" {
isImplementationOfOverload(node: FunctionLikeDeclaration): boolean;
isUndefinedSymbol(symbol: Symbol): boolean;
isArgumentsSymbol(symbol: Symbol): boolean;
- isEmitBlocked(sourceFile?: SourceFile): boolean;
- getEnumMemberValue(node: EnumMember): number;
+ getConstantValue(node: EnumMember | PropertyAccessExpression | ElementAccessExpression): number;
isValidPropertyAccess(node: PropertyAccessExpression | QualifiedName, propertyName: string): boolean;
getAliasedSymbol(symbol: Symbol): Symbol;
+ getExportsOfModule(moduleSymbol: Symbol): Symbol[];
+ getJsxElementAttributesType(elementNode: JsxOpeningLikeElement): Type;
+ getJsxIntrinsicTagNames(): Symbol[];
+ isOptionalParameter(node: ParameterDeclaration): boolean;
}
interface SymbolDisplayBuilder {
buildTypeDisplay(type: Type, writer: SymbolWriter, enclosingDeclaration?: Node, flags?: TypeFormatFlags): void;
@@ -794,46 +1097,20 @@ declare module "typescript" {
WriteOwnNameForAnyLike = 16,
WriteTypeArgumentsOfSignature = 32,
InElementType = 64,
+ UseFullyQualifiedType = 128,
}
const enum SymbolFormatFlags {
None = 0,
WriteTypeParametersOrArguments = 1,
UseOnlyExternalAliasing = 2,
}
- const enum SymbolAccessibility {
- Accessible = 0,
- NotAccessible = 1,
- CannotBeNamed = 2,
- }
- interface SymbolVisibilityResult {
- accessibility: SymbolAccessibility;
- aliasesToMakeVisible?: ImportDeclaration[];
- errorSymbolName?: string;
- errorNode?: Node;
- }
- interface SymbolAccessiblityResult extends SymbolVisibilityResult {
- errorModuleName?: string;
- }
- interface EmitResolver {
- getProgram(): Program;
- getLocalNameOfContainer(container: ModuleDeclaration | EnumDeclaration): string;
- getExpressionNamePrefix(node: Identifier): string;
- getExportAssignmentName(node: SourceFile): string;
- isReferencedImportDeclaration(node: ImportDeclaration): boolean;
- isTopLevelValueImportWithEntityName(node: ImportDeclaration): boolean;
- getNodeCheckFlags(node: Node): NodeCheckFlags;
- getEnumMemberValue(node: EnumMember): number;
- hasSemanticErrors(sourceFile?: SourceFile): boolean;
- isDeclarationVisible(node: Declaration): boolean;
- isImplementationOfOverload(node: FunctionLikeDeclaration): boolean;
- writeTypeOfDeclaration(declaration: AccessorDeclaration | VariableOrParameterDeclaration, enclosingDeclaration: Node, flags: TypeFormatFlags, writer: SymbolWriter): void;
- writeReturnTypeOfSignatureDeclaration(signatureDeclaration: SignatureDeclaration, enclosingDeclaration: Node, flags: TypeFormatFlags, writer: SymbolWriter): void;
- isSymbolAccessible(symbol: Symbol, enclosingDeclaration: Node, meaning: SymbolFlags): SymbolAccessiblityResult;
- isEntityNameVisible(entityName: EntityName, enclosingDeclaration: Node): SymbolVisibilityResult;
- getConstantValue(node: PropertyAccessExpression | ElementAccessExpression): number;
- isEmitBlocked(sourceFile?: SourceFile): boolean;
+ interface TypePredicate {
+ parameterName: string;
+ parameterIndex: number;
+ type: Type;
}
const enum SymbolFlags {
+ None = 0,
FunctionScopedVariable = 1,
BlockScopedVariable = 2,
Property = 4,
@@ -851,103 +1128,64 @@ declare module "typescript" {
Constructor = 16384,
GetAccessor = 32768,
SetAccessor = 65536,
- CallSignature = 131072,
- ConstructSignature = 262144,
- IndexSignature = 524288,
- TypeParameter = 1048576,
- TypeAlias = 2097152,
- ExportValue = 4194304,
- ExportType = 8388608,
- ExportNamespace = 16777216,
- Import = 33554432,
- Instantiated = 67108864,
- Merged = 134217728,
- Transient = 268435456,
- Prototype = 536870912,
- UnionProperty = 1073741824,
+ Signature = 131072,
+ TypeParameter = 262144,
+ TypeAlias = 524288,
+ ExportValue = 1048576,
+ ExportType = 2097152,
+ ExportNamespace = 4194304,
+ Alias = 8388608,
+ Instantiated = 16777216,
+ Merged = 33554432,
+ Transient = 67108864,
+ Prototype = 134217728,
+ SyntheticProperty = 268435456,
+ Optional = 536870912,
+ ExportStar = 1073741824,
Enum = 384,
Variable = 3,
Value = 107455,
- Type = 3152352,
+ Type = 793056,
Namespace = 1536,
Module = 1536,
Accessor = 98304,
- Signature = 917504,
FunctionScopedVariableExcludes = 107454,
BlockScopedVariableExcludes = 107455,
ParameterExcludes = 107455,
PropertyExcludes = 107455,
EnumMemberExcludes = 107455,
FunctionExcludes = 106927,
- ClassExcludes = 3258879,
- InterfaceExcludes = 3152288,
- RegularEnumExcludes = 3258623,
- ConstEnumExcludes = 3259263,
+ ClassExcludes = 899519,
+ InterfaceExcludes = 792960,
+ RegularEnumExcludes = 899327,
+ ConstEnumExcludes = 899967,
ValueModuleExcludes = 106639,
NamespaceModuleExcludes = 0,
MethodExcludes = 99263,
GetAccessorExcludes = 41919,
SetAccessorExcludes = 74687,
- TypeParameterExcludes = 2103776,
- TypeAliasExcludes = 3152352,
- ImportExcludes = 33554432,
- ModuleMember = 35653619,
+ TypeParameterExcludes = 530912,
+ TypeAliasExcludes = 793056,
+ AliasExcludes = 8388608,
+ ModuleMember = 8914931,
ExportHasLocal = 944,
- HasLocals = 1041936,
HasExports = 1952,
HasMembers = 6240,
- IsContainer = 1048560,
+ BlockScoped = 418,
PropertyOrAccessor = 98308,
- Export = 29360128,
+ Export = 7340032,
}
interface Symbol {
flags: SymbolFlags;
name: string;
- id?: number;
- mergeId?: number;
declarations?: Declaration[];
- parent?: Symbol;
+ valueDeclaration?: Declaration;
members?: SymbolTable;
exports?: SymbolTable;
- exportSymbol?: Symbol;
- valueDeclaration?: Declaration;
- constEnumOnlyModule?: boolean;
- }
- interface SymbolLinks {
- target?: Symbol;
- type?: Type;
- declaredType?: Type;
- mapper?: TypeMapper;
- referenced?: boolean;
- exportAssignSymbol?: Symbol;
- unionType?: UnionType;
- }
- interface TransientSymbol extends Symbol, SymbolLinks {
}
interface SymbolTable {
[index: string]: Symbol;
}
- const enum NodeCheckFlags {
- TypeChecked = 1,
- LexicalThis = 2,
- CaptureThis = 4,
- EmitExtends = 8,
- SuperInstance = 16,
- SuperStatic = 32,
- ContextChecked = 64,
- EnumValuesComputed = 128,
- }
- interface NodeLinks {
- resolvedType?: Type;
- resolvedSignature?: Signature;
- resolvedSymbol?: Symbol;
- flags?: NodeCheckFlags;
- enumMemberValue?: number;
- isIllegalTypeReferenceInConstraint?: boolean;
- isVisible?: boolean;
- localModuleName?: string;
- assignmentChecks?: Map;
- }
const enum TypeFlags {
Any = 1,
String = 2,
@@ -964,21 +1202,21 @@ declare module "typescript" {
Reference = 4096,
Tuple = 8192,
Union = 16384,
- Anonymous = 32768,
- FromSignature = 65536,
- Intrinsic = 127,
+ Intersection = 32768,
+ Anonymous = 65536,
+ Instantiated = 131072,
+ ObjectLiteral = 524288,
+ ESSymbol = 16777216,
StringLike = 258,
NumberLike = 132,
- ObjectType = 48128,
+ ObjectType = 80896,
+ UnionOrIntersection = 49152,
+ StructuredType = 130048,
}
interface Type {
flags: TypeFlags;
- id: number;
symbol?: Symbol;
}
- interface IntrinsicType extends Type {
- intrinsicName: string;
- }
interface StringLiteralType extends Type {
text: string;
}
@@ -986,7 +1224,10 @@ declare module "typescript" {
}
interface InterfaceType extends ObjectType {
typeParameters: TypeParameter[];
- baseTypes: ObjectType[];
+ outerTypeParameters: TypeParameter[];
+ localTypeParameters: TypeParameter[];
+ }
+ interface InterfaceTypeWithDeclaredMembers extends InterfaceType {
declaredProperties: Symbol[];
declaredCallSignatures: Signature[];
declaredConstructSignatures: Signature[];
@@ -998,30 +1239,20 @@ declare module "typescript" {
typeArguments: Type[];
}
interface GenericType extends InterfaceType, TypeReference {
- instantiations: Map;
- openReferenceTargets: GenericType[];
- openReferenceChecks: Map;
}
interface TupleType extends ObjectType {
elementTypes: Type[];
baseArrayType: TypeReference;
}
- interface UnionType extends Type {
+ interface UnionOrIntersectionType extends Type {
types: Type[];
- resolvedProperties: SymbolTable;
}
- interface ResolvedType extends ObjectType, UnionType {
- members: SymbolTable;
- properties: Symbol[];
- callSignatures: Signature[];
- constructSignatures: Signature[];
- stringIndexType: Type;
- numberIndexType: Type;
+ interface UnionType extends UnionOrIntersectionType {
+ }
+ interface IntersectionType extends UnionOrIntersectionType {
}
interface TypeParameter extends Type {
constraint: Type;
- target?: TypeParameter;
- mapper?: TypeMapper;
}
const enum SignatureKind {
Call = 0,
@@ -1031,40 +1262,23 @@ declare module "typescript" {
declaration: SignatureDeclaration;
typeParameters: TypeParameter[];
parameters: Symbol[];
- resolvedReturnType: Type;
- minArgumentCount: number;
- hasRestParameter: boolean;
- hasStringLiterals: boolean;
- target?: Signature;
- mapper?: TypeMapper;
- unionSignatures?: Signature[];
- erasedSignatureCache?: Signature;
- isolatedSignatureType?: ObjectType;
+ typePredicate?: TypePredicate;
}
const enum IndexKind {
String = 0,
Number = 1,
}
- interface TypeMapper {
- (t: Type): Type;
- }
- interface TypeInferences {
- primary: Type[];
- secondary: Type[];
- }
- interface InferenceContext {
- typeParameters: TypeParameter[];
- inferUnionTypes: boolean;
- inferences: TypeInferences[];
- inferredTypes: Type[];
- failedTypeParameterIndex?: number;
- }
interface DiagnosticMessage {
key: string;
category: DiagnosticCategory;
code: number;
- isEarly?: boolean;
}
+ /**
+ * A linked list of formatted diagnostic messages to be used as part of a multiline message.
+ * It is built from the bottom up, leaving the head to be the "main" diagnostic.
+ * While it seems that DiagnosticMessageChain is structurally similar to DiagnosticMessage,
+ * the difference is that messages are all preformatted in DMC.
+ */
interface DiagnosticMessageChain {
messageText: string;
category: DiagnosticCategory;
@@ -1075,52 +1289,78 @@ declare module "typescript" {
file: SourceFile;
start: number;
length: number;
- messageText: string;
+ messageText: string | DiagnosticMessageChain;
category: DiagnosticCategory;
code: number;
- /**
- * Early error - any error (can be produced at parsing\binding\typechecking step) that blocks emit
- */
- isEarly?: boolean;
}
enum DiagnosticCategory {
Warning = 0,
Error = 1,
Message = 2,
}
+ const enum ModuleResolutionKind {
+ Classic = 1,
+ NodeJs = 2,
+ }
interface CompilerOptions {
allowNonTsExtensions?: boolean;
charset?: string;
- codepage?: number;
declaration?: boolean;
diagnostics?: boolean;
emitBOM?: boolean;
help?: boolean;
+ init?: boolean;
+ inlineSourceMap?: boolean;
+ inlineSources?: boolean;
+ jsx?: JsxEmit;
+ listFiles?: boolean;
locale?: string;
mapRoot?: string;
module?: ModuleKind;
+ newLine?: NewLineKind;
+ noEmit?: boolean;
+ noEmitHelpers?: boolean;
noEmitOnError?: boolean;
noErrorTruncation?: boolean;
noImplicitAny?: boolean;
noLib?: boolean;
- noLibCheck?: boolean;
noResolve?: boolean;
out?: string;
+ outFile?: string;
outDir?: string;
preserveConstEnums?: boolean;
+ project?: string;
removeComments?: boolean;
+ rootDir?: string;
sourceMap?: boolean;
sourceRoot?: string;
+ suppressExcessPropertyErrors?: boolean;
suppressImplicitAnyIndexErrors?: boolean;
target?: ScriptTarget;
version?: boolean;
watch?: boolean;
+ isolatedModules?: boolean;
+ experimentalDecorators?: boolean;
+ experimentalAsyncFunctions?: boolean;
+ emitDecoratorMetadata?: boolean;
+ moduleResolution?: ModuleResolutionKind;
[option: string]: string | number | boolean;
}
const enum ModuleKind {
None = 0,
CommonJS = 1,
AMD = 2,
+ UMD = 3,
+ System = 4,
+ }
+ const enum JsxEmit {
+ None = 0,
+ Preserve = 1,
+ React = 2,
+ }
+ const enum NewLineKind {
+ CarriageReturnLineFeed = 0,
+ LineFeed = 1,
}
interface LineAndCharacter {
line: number;
@@ -1132,164 +1372,74 @@ declare module "typescript" {
ES6 = 2,
Latest = 2,
}
+ const enum LanguageVariant {
+ Standard = 0,
+ JSX = 1,
+ }
interface ParsedCommandLine {
options: CompilerOptions;
- filenames: string[];
+ fileNames: string[];
errors: Diagnostic[];
}
- interface CommandLineOption {
- name: string;
- type: string | Map;
- shortName?: string;
- description?: DiagnosticMessage;
- paramType?: DiagnosticMessage;
- error?: DiagnosticMessage;
+ interface ModuleResolutionHost {
+ fileExists(fileName: string): boolean;
+ readFile(fileName: string): string;
}
- const enum CharacterCodes {
- nullCharacter = 0,
- maxAsciiCharacter = 127,
- lineFeed = 10,
- carriageReturn = 13,
- lineSeparator = 8232,
- paragraphSeparator = 8233,
- nextLine = 133,
- space = 32,
- nonBreakingSpace = 160,
- enQuad = 8192,
- emQuad = 8193,
- enSpace = 8194,
- emSpace = 8195,
- threePerEmSpace = 8196,
- fourPerEmSpace = 8197,
- sixPerEmSpace = 8198,
- figureSpace = 8199,
- punctuationSpace = 8200,
- thinSpace = 8201,
- hairSpace = 8202,
- zeroWidthSpace = 8203,
- narrowNoBreakSpace = 8239,
- ideographicSpace = 12288,
- mathematicalSpace = 8287,
- ogham = 5760,
- _ = 95,
- $ = 36,
- _0 = 48,
- _1 = 49,
- _2 = 50,
- _3 = 51,
- _4 = 52,
- _5 = 53,
- _6 = 54,
- _7 = 55,
- _8 = 56,
- _9 = 57,
- a = 97,
- b = 98,
- c = 99,
- d = 100,
- e = 101,
- f = 102,
- g = 103,
- h = 104,
- i = 105,
- j = 106,
- k = 107,
- l = 108,
- m = 109,
- n = 110,
- o = 111,
- p = 112,
- q = 113,
- r = 114,
- s = 115,
- t = 116,
- u = 117,
- v = 118,
- w = 119,
- x = 120,
- y = 121,
- z = 122,
- A = 65,
- B = 66,
- C = 67,
- D = 68,
- E = 69,
- F = 70,
- G = 71,
- H = 72,
- I = 73,
- J = 74,
- K = 75,
- L = 76,
- M = 77,
- N = 78,
- O = 79,
- P = 80,
- Q = 81,
- R = 82,
- S = 83,
- T = 84,
- U = 85,
- V = 86,
- W = 87,
- X = 88,
- Y = 89,
- Z = 90,
- ampersand = 38,
- asterisk = 42,
- at = 64,
- backslash = 92,
- backtick = 96,
- bar = 124,
- caret = 94,
- closeBrace = 125,
- closeBracket = 93,
- closeParen = 41,
- colon = 58,
- comma = 44,
- dot = 46,
- doubleQuote = 34,
- equals = 61,
- exclamation = 33,
- greaterThan = 62,
- lessThan = 60,
- minus = 45,
- openBrace = 123,
- openBracket = 91,
- openParen = 40,
- percent = 37,
- plus = 43,
- question = 63,
- semicolon = 59,
- singleQuote = 39,
- slash = 47,
- tilde = 126,
- backspace = 8,
- formFeed = 12,
- byteOrderMark = 65279,
- tab = 9,
- verticalTab = 11,
+ interface ResolvedModule {
+ resolvedFileName: string;
+ isExternalLibraryImport?: boolean;
}
- interface CancellationToken {
- isCancellationRequested(): boolean;
+ interface ResolvedModuleWithFailedLookupLocations {
+ resolvedModule: ResolvedModule;
+ failedLookupLocations: string[];
}
- interface CompilerHost {
- getSourceFile(filename: string, languageVersion: ScriptTarget, onError?: (message: string) => void): SourceFile;
- getDefaultLibFilename(options: CompilerOptions): string;
+ interface CompilerHost extends ModuleResolutionHost {
+ getSourceFile(fileName: string, languageVersion: ScriptTarget, onError?: (message: string) => void): SourceFile;
getCancellationToken?(): CancellationToken;
- writeFile(filename: string, data: string, writeByteOrderMark: boolean, onError?: (message: string) => void): void;
+ getDefaultLibFileName(options: CompilerOptions): string;
+ writeFile: WriteFileCallback;
getCurrentDirectory(): string;
getCanonicalFileName(fileName: string): string;
useCaseSensitiveFileNames(): boolean;
getNewLine(): string;
+ resolveModuleNames?(moduleNames: string[], containingFile: string): ResolvedModule[];
+ }
+ interface TextSpan {
+ start: number;
+ length: number;
+ }
+ interface TextChangeRange {
+ span: TextSpan;
+ newLength: number;
}
}
declare module "typescript" {
- interface ErrorCallback {
- (message: DiagnosticMessage): void;
+ interface System {
+ args: string[];
+ newLine: string;
+ useCaseSensitiveFileNames: boolean;
+ write(s: string): void;
+ readFile(path: string, encoding?: string): string;
+ writeFile(path: string, data: string, writeByteOrderMark?: boolean): void;
+ watchFile?(path: string, callback: (path: string) => void): FileWatcher;
+ resolvePath(path: string): string;
+ fileExists(path: string): boolean;
+ directoryExists(path: string): boolean;
+ createDirectory(path: string): void;
+ getExecutingFilePath(): string;
+ getCurrentDirectory(): string;
+ readDirectory(path: string, extension?: string, exclude?: string[]): string[];
+ getMemoryUsage?(): number;
+ exit(exitCode?: number): void;
}
- interface CommentCallback {
- (pos: number, end: number): void;
+ interface FileWatcher {
+ close(): void;
+ }
+ var sys: System;
+}
+declare module "typescript" {
+ interface ErrorCallback {
+ (message: DiagnosticMessage, length: number): void;
}
interface Scanner {
getStartPos(): number;
@@ -1298,6 +1448,7 @@ declare module "typescript" {
getTokenPos(): number;
getTokenText(): string;
getTokenValue(): string;
+ hasExtendedUnicodeEscape(): boolean;
hasPrecedingLineBreak(): boolean;
isIdentifier(): boolean;
isReservedWord(): boolean;
@@ -1305,45 +1456,111 @@ declare module "typescript" {
reScanGreaterToken(): SyntaxKind;
reScanSlashToken(): SyntaxKind;
reScanTemplateToken(): SyntaxKind;
+ scanJsxIdentifier(): SyntaxKind;
+ reScanJsxToken(): SyntaxKind;
+ scanJsxToken(): SyntaxKind;
scan(): SyntaxKind;
- setText(text: string): void;
+ setText(text: string, start?: number, length?: number): void;
+ setOnError(onError: ErrorCallback): void;
+ setScriptTarget(scriptTarget: ScriptTarget): void;
+ setLanguageVariant(variant: LanguageVariant): void;
setTextPos(textPos: number): void;
lookAhead(callback: () => T): T;
tryScan(callback: () => T): T;
}
function tokenToString(t: SyntaxKind): string;
- function computeLineStarts(text: string): number[];
- function getPositionFromLineAndCharacter(lineStarts: number[], line: number, character: number): number;
- function getLineAndCharacterOfPosition(lineStarts: number[], position: number): {
- line: number;
- character: number;
- };
- function positionToLineAndCharacter(text: string, pos: number): {
- line: number;
- character: number;
- };
+ function getPositionOfLineAndCharacter(sourceFile: SourceFile, line: number, character: number): number;
+ function getLineAndCharacterOfPosition(sourceFile: SourceFile, position: number): LineAndCharacter;
function isWhiteSpace(ch: number): boolean;
function isLineBreak(ch: number): boolean;
- function isOctalDigit(ch: number): boolean;
- function skipTrivia(text: string, pos: number, stopAfterLineBreak?: boolean): number;
+ function couldStartTrivia(text: string, pos: number): boolean;
function getLeadingCommentRanges(text: string, pos: number): CommentRange[];
function getTrailingCommentRanges(text: string, pos: number): CommentRange[];
+ /** Optionally, get the shebang */
+ function getShebang(text: string): string;
function isIdentifierStart(ch: number, languageVersion: ScriptTarget): boolean;
function isIdentifierPart(ch: number, languageVersion: ScriptTarget): boolean;
- function createScanner(languageVersion: ScriptTarget, skipTrivia: boolean, text?: string, onError?: ErrorCallback): Scanner;
+ function createScanner(languageVersion: ScriptTarget, skipTrivia: boolean, languageVariant?: LanguageVariant, text?: string, onError?: ErrorCallback, start?: number, length?: number): Scanner;
+}
+declare module "typescript" {
+ function getDefaultLibFileName(options: CompilerOptions): string;
+ function textSpanEnd(span: TextSpan): number;
+ function textSpanIsEmpty(span: TextSpan): boolean;
+ function textSpanContainsPosition(span: TextSpan, position: number): boolean;
+ function textSpanContainsTextSpan(span: TextSpan, other: TextSpan): boolean;
+ function textSpanOverlapsWith(span: TextSpan, other: TextSpan): boolean;
+ function textSpanOverlap(span1: TextSpan, span2: TextSpan): TextSpan;
+ function textSpanIntersectsWithTextSpan(span: TextSpan, other: TextSpan): boolean;
+ function textSpanIntersectsWith(span: TextSpan, start: number, length: number): boolean;
+ function decodedTextSpanIntersectsWith(start1: number, length1: number, start2: number, length2: number): boolean;
+ function textSpanIntersectsWithPosition(span: TextSpan, position: number): boolean;
+ function textSpanIntersection(span1: TextSpan, span2: TextSpan): TextSpan;
+ function createTextSpan(start: number, length: number): TextSpan;
+ function createTextSpanFromBounds(start: number, end: number): TextSpan;
+ function textChangeRangeNewSpan(range: TextChangeRange): TextSpan;
+ function textChangeRangeIsUnchanged(range: TextChangeRange): boolean;
+ function createTextChangeRange(span: TextSpan, newLength: number): TextChangeRange;
+ let unchangedTextChangeRange: TextChangeRange;
+ /**
+ * Called to merge all the changes that occurred across several versions of a script snapshot
+ * into a single change. i.e. if a user keeps making successive edits to a script we will
+ * have a text change from V1 to V2, V2 to V3, ..., Vn.
+ *
+ * This function will then merge those changes into a single change range valid between V1 and
+ * Vn.
+ */
+ function collapseTextChangeRangesAcrossMultipleVersions(changes: TextChangeRange[]): TextChangeRange;
+ function getTypeParameterOwner(d: Declaration): Declaration;
}
declare module "typescript" {
function getNodeConstructor(kind: SyntaxKind): new () => Node;
- function forEachChild(node: Node, cbNode: (node: Node) => T, cbNodes?: (nodes: Node[]) => T): T;
- function createCompilerHost(options: CompilerOptions): CompilerHost;
- function createSourceFile(filename: string, sourceText: string, languageVersion: ScriptTarget, version: string, isOpen?: boolean): SourceFile;
- function createProgram(rootNames: string[], options: CompilerOptions, host: CompilerHost): Program;
+ function createNode(kind: SyntaxKind): Node;
+ function forEachChild(node: Node, cbNode: (node: Node) => T, cbNodeArray?: (nodes: Node[]) => T): T;
+ function createSourceFile(fileName: string, sourceText: string, languageVersion: ScriptTarget, setParentNodes?: boolean): SourceFile;
+ function updateSourceFile(sourceFile: SourceFile, newText: string, textChangeRange: TextChangeRange, aggressiveChecks?: boolean): SourceFile;
}
declare module "typescript" {
- function createTypeChecker(program: Program, fullTypeCheck: boolean): TypeChecker;
+ const version: string;
+ function findConfigFile(searchPath: string): string;
+ function resolveTripleslashReference(moduleName: string, containingFile: string): string;
+ function resolveModuleName(moduleName: string, containingFile: string, compilerOptions: CompilerOptions, host: ModuleResolutionHost): ResolvedModuleWithFailedLookupLocations;
+ function nodeModuleNameResolver(moduleName: string, containingFile: string, host: ModuleResolutionHost): ResolvedModuleWithFailedLookupLocations;
+ function classicNameResolver(moduleName: string, containingFile: string, compilerOptions: CompilerOptions, host: ModuleResolutionHost): ResolvedModuleWithFailedLookupLocations;
+ function createCompilerHost(options: CompilerOptions, setParentNodes?: boolean): CompilerHost;
+ function getPreEmitDiagnostics(program: Program, sourceFile?: SourceFile, cancellationToken?: CancellationToken): Diagnostic[];
+ function flattenDiagnosticMessageText(messageText: string | DiagnosticMessageChain, newLine: string): string;
+ function createProgram(rootNames: string[], options: CompilerOptions, host?: CompilerHost, oldProgram?: Program): Program;
}
declare module "typescript" {
- var servicesVersion: string;
+ function parseCommandLine(commandLine: string[], readFile?: (path: string) => string): ParsedCommandLine;
+ /**
+ * Read tsconfig.json file
+ * @param fileName The path to the config file
+ */
+ function readConfigFile(fileName: string): {
+ config?: any;
+ error?: Diagnostic;
+ };
+ /**
+ * Parse the text of the tsconfig.json file
+ * @param fileName The path to the config file
+ * @param jsonText The text of the config file
+ */
+ function parseConfigFileText(fileName: string, jsonText: string): {
+ config?: any;
+ error?: Diagnostic;
+ };
+ /**
+ * Parse the contents of a config file (tsconfig.json).
+ * @param json The contents of the config file to parse
+ * @param basePath A root directory to resolve relative path entries in the config
+ * file to. e.g. outDir
+ */
+ function parseConfigFile(json: any, host: ParseConfigHost, basePath: string): ParsedCommandLine;
+}
+declare module "typescript" {
+ /** The version of the language service API */
+ let servicesVersion: string;
interface Node {
getSourceFile(): SourceFile;
getChildCount(sourceFile?: SourceFile): number;
@@ -1376,6 +1593,7 @@ declare module "typescript" {
getConstructSignatures(): Signature[];
getStringIndexType(): Type;
getNumberIndexType(): Type;
+ getBaseTypes(): ObjectType[];
}
interface Signature {
getDeclaration(): SignatureDeclaration;
@@ -1385,9 +1603,10 @@ declare module "typescript" {
getDocumentationComment(): SymbolDisplayPart[];
}
interface SourceFile {
- getScriptSnapshot(): IScriptSnapshot;
- getNamedDeclarations(): Declaration[];
- update(scriptSnapshot: IScriptSnapshot, version: string, isOpen: boolean, textChangeRange: TextChangeRange): SourceFile;
+ getLineAndCharacterOfPosition(pos: number): LineAndCharacter;
+ getLineStarts(): number[];
+ getPositionOfLineAndCharacter(line: number, character: number): number;
+ update(newText: string, textChangeRange: TextChangeRange): SourceFile;
}
/**
* Represents an immutable snapshot of a script at a specified time.Once acquired, the
@@ -1399,12 +1618,6 @@ declare module "typescript" {
getText(start: number, end: number): string;
/** Gets the length of this script snapshot. */
getLength(): number;
- /**
- * This call returns the array containing the start position of every line.
- * i.e."[0, 10, 55]". TODO: consider making this optional. The language service could
- * always determine this (albeit in a more expensive manner).
- */
- getLineStartPositions(): number[];
/**
* Gets the TextChangeRange that describe how the text changed between this text and
* an older version. This information is used by the incremental parser to determine
@@ -1413,6 +1626,8 @@ declare module "typescript" {
* not happen and the entire document will be re - parsed.
*/
getChangeRange(oldSnapshot: IScriptSnapshot): TextChangeRange;
+ /** Releases all resources held by this script snapshot */
+ dispose?(): void;
}
module ScriptSnapshot {
function fromString(text: string): IScriptSnapshot;
@@ -1420,29 +1635,44 @@ declare module "typescript" {
interface PreProcessedFileInfo {
referencedFiles: FileReference[];
importedFiles: FileReference[];
+ ambientExternalModules: string[];
isLibFile: boolean;
}
- interface Logger {
- log(s: string): void;
+ interface HostCancellationToken {
+ isCancellationRequested(): boolean;
}
- interface LanguageServiceHost extends Logger {
+ interface LanguageServiceHost {
getCompilationSettings(): CompilerOptions;
+ getNewLine?(): string;
+ getProjectVersion?(): string;
getScriptFileNames(): string[];
getScriptVersion(fileName: string): string;
- getScriptIsOpen(fileName: string): boolean;
getScriptSnapshot(fileName: string): IScriptSnapshot;
getLocalizedDiagnosticMessages?(): any;
- getCancellationToken?(): CancellationToken;
+ getCancellationToken?(): HostCancellationToken;
getCurrentDirectory(): string;
- getDefaultLibFilename(options: CompilerOptions): string;
+ getDefaultLibFileName(options: CompilerOptions): string;
+ log?(s: string): void;
+ trace?(s: string): void;
+ error?(s: string): void;
+ useCaseSensitiveFileNames?(): boolean;
+ resolveModuleNames?(moduleNames: string[], containingFile: string): ResolvedModule[];
}
interface LanguageService {
cleanupSemanticCache(): void;
getSyntacticDiagnostics(fileName: string): Diagnostic[];
getSemanticDiagnostics(fileName: string): Diagnostic[];
getCompilerOptionsDiagnostics(): Diagnostic[];
+ /**
+ * @deprecated Use getEncodedSyntacticClassifications instead.
+ */
getSyntacticClassifications(fileName: string, span: TextSpan): ClassifiedSpan[];
+ /**
+ * @deprecated Use getEncodedSemanticClassifications instead.
+ */
getSemanticClassifications(fileName: string, span: TextSpan): ClassifiedSpan[];
+ getEncodedSyntacticClassifications(fileName: string, span: TextSpan): Classifications;
+ getEncodedSemanticClassifications(fileName: string, span: TextSpan): Classifications;
getCompletionsAtPosition(fileName: string, position: number): CompletionInfo;
getCompletionEntryDetails(fileName: string, position: number, entryName: string): CompletionEntryDetails;
getQuickInfoAtPosition(fileName: string, position: number): QuickInfo;
@@ -1452,9 +1682,13 @@ declare module "typescript" {
getRenameInfo(fileName: string, position: number): RenameInfo;
findRenameLocations(fileName: string, position: number, findInStrings: boolean, findInComments: boolean): RenameLocation[];
getDefinitionAtPosition(fileName: string, position: number): DefinitionInfo[];
+ getTypeDefinitionAtPosition(fileName: string, position: number): DefinitionInfo[];
getReferencesAtPosition(fileName: string, position: number): ReferenceEntry[];
+ findReferences(fileName: string, position: number): ReferencedSymbol[];
+ getDocumentHighlights(fileName: string, position: number, filesToSearch: string[]): DocumentHighlights[];
+ /** @deprecated */
getOccurrencesAtPosition(fileName: string, position: number): ReferenceEntry[];
- getNavigateToItems(searchValue: string): NavigateToItem[];
+ getNavigateToItems(searchValue: string, maxResultCount?: number): NavigateToItem[];
getNavigationBarItems(fileName: string): NavigationBarItem[];
getOutliningSpans(fileName: string): OutliningSpan[];
getTodoComments(fileName: string, descriptors: TodoCommentDescriptor[]): TodoComment[];
@@ -1463,99 +1697,15 @@ declare module "typescript" {
getFormattingEditsForRange(fileName: string, start: number, end: number, options: FormatCodeOptions): TextChange[];
getFormattingEditsForDocument(fileName: string, options: FormatCodeOptions): TextChange[];
getFormattingEditsAfterKeystroke(fileName: string, position: number, key: string, options: FormatCodeOptions): TextChange[];
+ getDocCommentTemplateAtPosition(fileName: string, position: number): TextInsertion;
getEmitOutput(fileName: string): EmitOutput;
- getSourceFile(filename: string): SourceFile;
+ getProgram(): Program;
+ getSourceFile(fileName: string): SourceFile;
dispose(): void;
}
- class TextSpan {
- private _start;
- private _length;
- /**
- * Creates a TextSpan instance beginning with the position Start and having the Length
- * specified with length.
- */
- constructor(start: number, length: number);
- toJSON(key: any): any;
- start(): number;
- length(): number;
- end(): number;
- isEmpty(): boolean;
- /**
- * Determines whether the position lies within the span. Returns true if the position is greater than or equal to Start and strictly less
- * than End, otherwise false.
- * @param position The position to check.
- */
- containsPosition(position: number): boolean;
- /**
- * Determines whether span falls completely within this span. Returns true if the specified span falls completely within this span, otherwise false.
- * @param span The span to check.
- */
- containsTextSpan(span: TextSpan): boolean;
- /**
- * Determines whether the given span overlaps this span. Two spans are considered to overlap
- * if they have positions in common and neither is empty. Empty spans do not overlap with any
- * other span. Returns true if the spans overlap, false otherwise.
- * @param span The span to check.
- */
- overlapsWith(span: TextSpan): boolean;
- /**
- * Returns the overlap with the given span, or undefined if there is no overlap.
- * @param span The span to check.
- */
- overlap(span: TextSpan): TextSpan;
- /**
- * Determines whether span intersects this span. Two spans are considered to
- * intersect if they have positions in common or the end of one span
- * coincides with the start of the other span. Returns true if the spans intersect, false otherwise.
- * @param The span to check.
- */
- intersectsWithTextSpan(span: TextSpan): boolean;
- intersectsWith(start: number, length: number): boolean;
- /**
- * Determines whether the given position intersects this span.
- * A position is considered to intersect if it is between the start and
- * end positions (inclusive) of this span. Returns true if the position intersects, false otherwise.
- * @param position The position to check.
- */
- intersectsWithPosition(position: number): boolean;
- /**
- * Returns the intersection with the given span, or undefined if there is no intersection.
- * @param span The span to check.
- */
- intersection(span: TextSpan): TextSpan;
- /**
- * Creates a new TextSpan from the given start and end positions
- * as opposed to a position and length.
- */
- static fromBounds(start: number, end: number): TextSpan;
- }
- class TextChangeRange {
- static unchanged: TextChangeRange;
- private _span;
- private _newLength;
- /**
- * Initializes a new instance of TextChangeRange.
- */
- constructor(span: TextSpan, newLength: number);
- /**
- * The span of text before the edit which is being changed
- */
- span(): TextSpan;
- /**
- * Width of the span after the edit. A 0 here would represent a delete
- */
- newLength(): number;
- newSpan(): TextSpan;
- isUnchanged(): boolean;
- /**
- * Called to merge all the changes that occurred across several versions of a script snapshot
- * into a single change. i.e. if a user keeps making successive edits to a script we will
- * have a text change from V1 to V2, V2 to V3, ..., Vn.
- *
- * This function will then merge those changes into a single change range valid between V1 and
- * Vn.
- */
- static collapseChangesAcrossMultipleVersions(changes: TextChangeRange[]): TextChangeRange;
+ interface Classifications {
+ spans: number[];
+ endOfLineState: EndOfLineState;
}
interface ClassifiedSpan {
textSpan: TextSpan;
@@ -1584,6 +1734,11 @@ declare module "typescript" {
span: TextSpan;
newText: string;
}
+ interface TextInsertion {
+ newText: string;
+ /** The position in newText the caret should point to after the insertion. */
+ caretOffset: number;
+ }
interface RenameLocation {
textSpan: TextSpan;
fileName: string;
@@ -1593,11 +1748,27 @@ declare module "typescript" {
fileName: string;
isWriteAccess: boolean;
}
+ interface DocumentHighlights {
+ fileName: string;
+ highlightSpans: HighlightSpan[];
+ }
+ module HighlightSpanKind {
+ const none: string;
+ const definition: string;
+ const reference: string;
+ const writtenReference: string;
+ }
+ interface HighlightSpan {
+ fileName?: string;
+ textSpan: TextSpan;
+ kind: string;
+ }
interface NavigateToItem {
name: string;
kind: string;
kindModifiers: string;
matchKind: string;
+ isCaseSensitive: boolean;
fileName: string;
textSpan: TextSpan;
containerName: string;
@@ -1616,8 +1787,10 @@ declare module "typescript" {
InsertSpaceAfterKeywordsInControlFlowStatements: boolean;
InsertSpaceAfterFunctionKeywordForAnonymousFunctions: boolean;
InsertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis: boolean;
+ InsertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets: boolean;
PlaceOpenBraceOnNewLineForFunctions: boolean;
PlaceOpenBraceOnNewLineForControlBlocks: boolean;
+ [s: string]: boolean | number | string;
}
interface DefinitionInfo {
fileName: string;
@@ -1627,6 +1800,10 @@ declare module "typescript" {
containerKind: string;
containerName: string;
}
+ interface ReferencedSymbol {
+ definition: DefinitionInfo;
+ references: ReferenceEntry[];
+ }
enum SymbolDisplayPartKind {
aliasName = 0,
className = 1,
@@ -1704,12 +1881,14 @@ declare module "typescript" {
}
interface CompletionInfo {
isMemberCompletion: boolean;
+ isNewIdentifierLocation: boolean;
entries: CompletionEntry[];
}
interface CompletionEntry {
name: string;
kind: string;
kindModifiers: string;
+ sortText: string;
}
interface CompletionEntryDetails {
name: string;
@@ -1733,7 +1912,7 @@ declare module "typescript" {
}
interface EmitOutput {
outputFiles: OutputFile[];
- emitOutputStatus: EmitReturnStatus;
+ emitSkipped: boolean;
}
const enum OutputFileType {
JavaScript = 0,
@@ -1746,10 +1925,13 @@ declare module "typescript" {
text: string;
}
const enum EndOfLineState {
- Start = 0,
+ None = 0,
InMultiLineCommentTrivia = 1,
InSingleQuoteStringLiteral = 2,
InDoubleQuoteStringLiteral = 3,
+ InTemplateHeadOrNoSubstitutionTemplate = 4,
+ InTemplateMiddleOrTail = 5,
+ InTemplateSubstitutionPosition = 6,
}
enum TokenClass {
Punctuation = 0,
@@ -1771,50 +1953,125 @@ declare module "typescript" {
classification: TokenClass;
}
interface Classifier {
- getClassificationsForLine(text: string, lexState: EndOfLineState, classifyKeywordsInGenerics?: boolean): ClassificationResult;
+ /**
+ * Gives lexical classifications of tokens on a line without any syntactic context.
+ * For instance, a token consisting of the text 'string' can be either an identifier
+ * named 'string' or the keyword 'string', however, because this classifier is not aware,
+ * it relies on certain heuristics to give acceptable results. For classifications where
+ * speed trumps accuracy, this function is preferable; however, for true accuracy, the
+ * syntactic classifier is ideal. In fact, in certain editing scenarios, combining the
+ * lexical, syntactic, and semantic classifiers may issue the best user experience.
+ *
+ * @param text The text of a line to classify.
+ * @param lexState The state of the lexical classifier at the end of the previous line.
+ * @param syntacticClassifierAbsent Whether the client is *not* using a syntactic classifier.
+ * If there is no syntactic classifier (syntacticClassifierAbsent=true),
+ * certain heuristics may be used in its place; however, if there is a
+ * syntactic classifier (syntacticClassifierAbsent=false), certain
+ * classifications which may be incorrectly categorized will be given
+ * back as Identifiers in order to allow the syntactic classifier to
+ * subsume the classification.
+ * @deprecated Use getLexicalClassifications instead.
+ */
+ getClassificationsForLine(text: string, lexState: EndOfLineState, syntacticClassifierAbsent: boolean): ClassificationResult;
+ getEncodedLexicalClassifications(text: string, endOfLineState: EndOfLineState, syntacticClassifierAbsent: boolean): Classifications;
}
+ /**
+ * The document registry represents a store of SourceFile objects that can be shared between
+ * multiple LanguageService instances. A LanguageService instance holds on the SourceFile (AST)
+ * of files in the context.
+ * SourceFile objects account for most of the memory usage by the language service. Sharing
+ * the same DocumentRegistry instance between different instances of LanguageService allow
+ * for more efficient memory utilization since all projects will share at least the library
+ * file (lib.d.ts).
+ *
+ * A more advanced use of the document registry is to serialize sourceFile objects to disk
+ * and re-hydrate them when needed.
+ *
+ * To create a default DocumentRegistry, use createDocumentRegistry to create one, and pass it
+ * to all subsequent createLanguageService calls.
+ */
interface DocumentRegistry {
- acquireDocument(filename: string, compilationSettings: CompilerOptions, scriptSnapshot: IScriptSnapshot, version: string, isOpen: boolean): SourceFile;
- updateDocument(sourceFile: SourceFile, filename: string, compilationSettings: CompilerOptions, scriptSnapshot: IScriptSnapshot, version: string, isOpen: boolean, textChangeRange: TextChangeRange): SourceFile;
- releaseDocument(filename: string, compilationSettings: CompilerOptions): void;
+ /**
+ * Request a stored SourceFile with a given fileName and compilationSettings.
+ * The first call to acquire will call createLanguageServiceSourceFile to generate
+ * the SourceFile if was not found in the registry.
+ *
+ * @param fileName The name of the file requested
+ * @param compilationSettings Some compilation settings like target affects the
+ * shape of a the resulting SourceFile. This allows the DocumentRegistry to store
+ * multiple copies of the same file for different compilation settings.
+ * @parm scriptSnapshot Text of the file. Only used if the file was not found
+ * in the registry and a new one was created.
+ * @parm version Current version of the file. Only used if the file was not found
+ * in the registry and a new one was created.
+ */
+ acquireDocument(fileName: string, compilationSettings: CompilerOptions, scriptSnapshot: IScriptSnapshot, version: string): SourceFile;
+ /**
+ * Request an updated version of an already existing SourceFile with a given fileName
+ * and compilationSettings. The update will in-turn call updateLanguageServiceSourceFile
+ * to get an updated SourceFile.
+ *
+ * @param fileName The name of the file requested
+ * @param compilationSettings Some compilation settings like target affects the
+ * shape of a the resulting SourceFile. This allows the DocumentRegistry to store
+ * multiple copies of the same file for different compilation settings.
+ * @param scriptSnapshot Text of the file.
+ * @param version Current version of the file.
+ */
+ updateDocument(fileName: string, compilationSettings: CompilerOptions, scriptSnapshot: IScriptSnapshot, version: string): SourceFile;
+ /**
+ * Informs the DocumentRegistry that a file is not needed any longer.
+ *
+ * Note: It is not allowed to call release on a SourceFile that was not acquired from
+ * this registry originally.
+ *
+ * @param fileName The name of the file to be released
+ * @param compilationSettings The compilation settings used to acquire the file
+ */
+ releaseDocument(fileName: string, compilationSettings: CompilerOptions): void;
+ reportStats(): string;
}
- class ScriptElementKind {
- static unknown: string;
- static keyword: string;
- static scriptElement: string;
- static moduleElement: string;
- static classElement: string;
- static interfaceElement: string;
- static typeElement: string;
- static enumElement: string;
- static variableElement: string;
- static localVariableElement: string;
- static functionElement: string;
- static localFunctionElement: string;
- static memberFunctionElement: string;
- static memberGetAccessorElement: string;
- static memberSetAccessorElement: string;
- static memberVariableElement: string;
- static constructorImplementationElement: string;
- static callSignatureElement: string;
- static indexSignatureElement: string;
- static constructSignatureElement: string;
- static parameterElement: string;
- static typeParameterElement: string;
- static primitiveType: string;
- static label: string;
- static alias: string;
- static constElement: string;
- static letElement: string;
+ module ScriptElementKind {
+ const unknown: string;
+ const warning: string;
+ const keyword: string;
+ const scriptElement: string;
+ const moduleElement: string;
+ const classElement: string;
+ const localClassElement: string;
+ const interfaceElement: string;
+ const typeElement: string;
+ const enumElement: string;
+ const variableElement: string;
+ const localVariableElement: string;
+ const functionElement: string;
+ const localFunctionElement: string;
+ const memberFunctionElement: string;
+ const memberGetAccessorElement: string;
+ const memberSetAccessorElement: string;
+ const memberVariableElement: string;
+ const constructorImplementationElement: string;
+ const callSignatureElement: string;
+ const indexSignatureElement: string;
+ const constructSignatureElement: string;
+ const parameterElement: string;
+ const typeParameterElement: string;
+ const primitiveType: string;
+ const label: string;
+ const alias: string;
+ const constElement: string;
+ const letElement: string;
}
- class ScriptElementKindModifier {
- static none: string;
- static publicMemberModifier: string;
- static privateMemberModifier: string;
- static protectedMemberModifier: string;
- static exportedModifier: string;
- static ambientModifier: string;
- static staticModifier: string;
+ module ScriptElementKindModifier {
+ const none: string;
+ const publicMemberModifier: string;
+ const privateMemberModifier: string;
+ const protectedMemberModifier: string;
+ const exportedModifier: string;
+ const ambientModifier: string;
+ const staticModifier: string;
+ const abstractModifier: string;
}
class ClassificationTypeNames {
static comment: string;
@@ -1831,24 +2088,61 @@ declare module "typescript" {
static interfaceName: string;
static moduleName: string;
static typeParameterName: string;
- static typeAlias: string;
+ static typeAliasName: string;
+ static parameterName: string;
+ static docCommentTagName: string;
+ }
+ const enum ClassificationType {
+ comment = 1,
+ identifier = 2,
+ keyword = 3,
+ numericLiteral = 4,
+ operator = 5,
+ stringLiteral = 6,
+ regularExpressionLiteral = 7,
+ whiteSpace = 8,
+ text = 9,
+ punctuation = 10,
+ className = 11,
+ enumName = 12,
+ interfaceName = 13,
+ moduleName = 14,
+ typeParameterName = 15,
+ typeAliasName = 16,
+ parameterName = 17,
+ docCommentTagName = 18,
}
interface DisplayPartsSymbolWriter extends SymbolWriter {
displayParts(): SymbolDisplayPart[];
}
function displayPartsToString(displayParts: SymbolDisplayPart[]): string;
function getDefaultCompilerOptions(): CompilerOptions;
- class OperationCanceledException {
+ interface TranspileOptions {
+ compilerOptions?: CompilerOptions;
+ fileName?: string;
+ reportDiagnostics?: boolean;
+ moduleName?: string;
+ renamedDependencies?: Map;
}
- class CancellationTokenObject {
- private cancellationToken;
- static None: CancellationTokenObject;
- constructor(cancellationToken: CancellationToken);
- isCancellationRequested(): boolean;
- throwIfCancellationRequested(): void;
+ interface TranspileOutput {
+ outputText: string;
+ diagnostics?: Diagnostic[];
+ sourceMapText?: string;
}
- function createDocumentRegistry(): DocumentRegistry;
+ function transpileModule(input: string, transpileOptions: TranspileOptions): TranspileOutput;
+ function transpile(input: string, compilerOptions?: CompilerOptions, fileName?: string, diagnostics?: Diagnostic[], moduleName?: string): string;
+ function createLanguageServiceSourceFile(fileName: string, scriptSnapshot: IScriptSnapshot, scriptTarget: ScriptTarget, version: string, setNodeParents: boolean): SourceFile;
+ let disableIncrementalParsing: boolean;
+ function updateLanguageServiceSourceFile(sourceFile: SourceFile, scriptSnapshot: IScriptSnapshot, version: string, textChangeRange: TextChangeRange, aggressiveChecks?: boolean): SourceFile;
+ function createGetCanonicalFileName(useCaseSensitivefileNames: boolean): (fileName: string) => string;
+ function createDocumentRegistry(useCaseSensitiveFileNames?: boolean): DocumentRegistry;
function preProcessFile(sourceText: string, readImportFiles?: boolean): PreProcessedFileInfo;
- function createLanguageService(host: LanguageServiceHost, documentRegistry: DocumentRegistry): LanguageService;
- function createClassifier(host: Logger): Classifier;
+ function createLanguageService(host: LanguageServiceHost, documentRegistry?: DocumentRegistry): LanguageService;
+ function createClassifier(): Classifier;
+ /**
+ * Get the path of the default library files (lib.d.ts) as distributed with the typescript
+ * node package.
+ * The functionality is not supported if the ts module is consumed outside of a node module.
+ */
+ function getDefaultLibFilePath(options: CompilerOptions): string;
}