import { DECORATOR_TYPES } from '../constants'; import type { BabelAPI, LwcBabelPluginPass } from '../types'; import type { Node, types, Visitor, NodePath } from '@babel/core'; import type { ImportSpecifier, LwcDecoratorName } from './types'; export type DecoratorType = (typeof DECORATOR_TYPES)[keyof typeof DECORATOR_TYPES]; export interface DecoratorMeta { name: LwcDecoratorName; propertyName: string; path: NodePath; decoratedNodeType: DecoratorType | null; type?: DecoratorType; } declare function validateImportedLwcDecoratorUsage(engineImportSpecifiers: ImportSpecifier[], state: LwcBabelPluginPass): void; /** * Remove import specifiers. It also removes the import statement if the specifier list becomes empty * @param engineImportSpecifiers */ declare function removeImportedDecoratorSpecifiers(engineImportSpecifiers: { name: any; path: NodePath; }[]): void; declare function decorators({ types: t }: BabelAPI): Visitor; export { decorators, removeImportedDecoratorSpecifiers, validateImportedLwcDecoratorUsage }; //# sourceMappingURL=index.d.ts.map