export declare const queryDart = "\n; Comments\n(comment) @comment\n(documentation_comment) @comment\n\n; Import and export statements\n(import_or_export) @definition.import\n\n; Class declaration\n(class_definition\n name: (identifier) @name.definition.class) @definition.class\n\n; Mixin declaration\n; mixin_declaration has no named field; the identifier child is the mixin name\n; (interface names live inside an 'interfaces' sub-node, so they are not matched here)\n(mixin_declaration\n (identifier) @name.definition.mixin) @definition.mixin\n\n; Enum declaration\n(enum_declaration\n name: (identifier) @name.definition.enum) @definition.enum\n\n; Extension declaration\n(extension_declaration\n name: (identifier) @name.definition.extension) @definition.extension\n\n; Typedef / type alias\n; type_alias has no named field; the type_identifier (not identifier) is the alias name\n(type_alias\n (type_identifier) @name.definition.type) @definition.type\n\n; Function declaration\n(function_signature\n name: (identifier) @name.definition.function) @definition.function\n\n; Getter / setter\n(getter_signature\n name: (identifier) @name.definition.method) @definition.method\n\n(setter_signature\n name: (identifier) @name.definition.method) @definition.method\n\n; Constructor declaration\n; constructor_signature can be wrapped in method_signature (when followed by a body)\n; or sit directly under 'declaration' (e.g., bare 'Foo(this.x);').\n; Capturing the whole signature node emits its source line(s) regardless of inner\n; shape, which also keeps the queries robust across grammar tweaks.\n(method_signature\n (constructor_signature) @name.definition.method) @definition.method\n\n(declaration\n (constructor_signature) @name.definition.method) @definition.method\n\n; Constant constructor (e.g. 'const Animal(this.name);', 'const Animal.zero() : ...;')\n; constant_constructor_signature is a direct child of 'declaration'.\n(declaration\n (constant_constructor_signature) @name.definition.method) @definition.method\n\n; Operator overload (e.g. 'int operator +(int o)', 'int operator [](int i)')\n; operator_signature has no identifier name field \u2014 the operator token is a\n; (binary_operator) / ([]) / ([]=) child. Capture the whole operator_signature\n; as the name so DefaultParseStrategy emits its full source range.\n(method_signature\n (operator_signature) @name.definition.method) @definition.method\n\n; Factory constructor\n; Wrapped in method_signature when it has a body, but bare under 'declaration' for\n; 'external factory ...;' and 'const factory ...;' \u2014 so query both shapes.\n(method_signature\n (factory_constructor_signature) @name.definition.method) @definition.method\n\n(declaration\n (factory_constructor_signature) @name.definition.method) @definition.method\n\n; Redirecting factory constructor (e.g. 'factory Foo.copy(other) = Bar;', 'const factory Foo() = Bar;')\n; Always a direct child of 'declaration', never wrapped in method_signature.\n(declaration\n (redirecting_factory_constructor_signature) @name.definition.method) @definition.method\n";