import * as CompilerDOM from '@vue/compiler-dom'; import type * as ts from 'typescript'; import type { Code, Sfc, VueCompilerOptions } from '../../types'; import { TemplateCodegenContext } from './context'; export interface TemplateCodegenOptions { ts: typeof ts; compilerOptions: ts.CompilerOptions; vueCompilerOptions: VueCompilerOptions; template: NonNullable; edited: boolean; scriptSetupBindingNames: Set; scriptSetupImportComponentNames: Set; destructuredPropNames: Set; templateRefNames: Set; hasDefineSlots?: boolean; slotsAssignName?: string; propsAssignName?: string; inheritAttrs: boolean; } export declare function generateTemplate(options: TemplateCodegenOptions): Generator; export declare function forEachElementNode(node: CompilerDOM.RootNode | CompilerDOM.TemplateChildNode): Generator;