import type { Node } from '@/types/pug'; import type { ComponentRegistry } from './componentRegistry.js'; import { type ErrorHandlerOptions } from './errorHandler.js'; import type { SlotResolver } from './slotResolver.js'; export interface ASTTransformerOptions extends ErrorHandlerOptions { validation?: { scopeIsolation?: 'error' | 'warn' | 'off'; allowedGlobals?: string[]; }; debug?: boolean; } export declare class ASTTransformer { private registry; private resolver; private errorHandler; private callStack; private config; constructor(registry: ComponentRegistry, resolver: SlotResolver, options?: ASTTransformerOptions); transform(ast: Node): Node; private detectAndRegisterComponents; private expandComponents; private expandComponentsInBlock; private expandComponentCall; private replaceSlots; private getDefaultSlotBlock; private isComponentCall; private extractCallName; private injectAttributes; private removeComponentDefinitions; private flattenIncludes; } //# sourceMappingURL=astTransformer.d.ts.map