import type { Rule } from 'eslint'; import { type JSXAttribute, type JSXElement, type JSXFragment, type JSXSpreadAttribute } from 'eslint-codemod-utils'; export declare const JSXElementHelper: { /** * Names of JSXElements can be any of: * `` - (JSXIdentifier) * `` - `MyComponents` is a namespace (JSXNamespacedName) * `` - `MyComponents` is an object (JSXMemberExpression) * * getting the name of a JSXMemberExpression is difficult, because object can contain objects, which is recursively defined in the AST. * e.g. Getting the name of `` would require `getName` to recursively resolve all parts of the name. * `getName` does not currently have this functionality. Add it if you need it. */ getName(node: JSXElement): string; updateName(node: JSXElement, newName: string, fixer: Rule.RuleFixer): Rule.Fix[]; isSelfClosing(node: JSXElement): boolean; getAttributes(node: JSXElement): (JSXAttribute | JSXSpreadAttribute)[]; getAttributeByName(node: JSXElement, name: string): JSXAttribute | undefined; containsSpreadAttributes(node: JSXElement): boolean; addAttribute(node: JSXElement, name: string, value: string, fixer: Rule.RuleFixer): Rule.Fix; getChildren(node: JSXElement | JSXFragment): JSXElement['children']; hasAllowedAttrsOnly(node: JSXElement, allowedProps: string[]): boolean; }; export { JSXElementHelper as JSXElement };