import type * as ts from 'typescript'; import type { Code, Sfc, VueCompilerOptions } from '../../types'; export interface TemplateCodegenOptions { typescript: typeof ts; vueCompilerOptions: VueCompilerOptions; template: NonNullable; setupRefs: Set; setupConsts: Set; hasDefineSlots?: boolean; propsAssignName?: string; slotsAssignName?: string; inheritAttrs: boolean; componentName: string; } export { generate as generateTemplate }; declare function generate(options: TemplateCodegenOptions): { generatedTypes: Set; currentInfo: { ignoreError?: boolean; expectError?: { token: number; node: import("@vue/compiler-dom").CommentNode; }; generic?: { content: string; offset: number; }; }; resolveCodeFeatures: (features: import("../../types").VueCodeInformation) => import("../../types").VueCodeInformation; inVFor: boolean; slots: { name: string; offset?: number; tagRange: [number, number]; nodeLoc: any; propsVar: string; }[]; dynamicSlots: { expVar: string; propsVar: string; }[]; dollarVars: Set; componentAccessMap: Map>>; blockConditions: string[]; inlayHints: import("../inlayHints").InlayHintInfo[]; inheritedAttrVars: Set; templateRefs: Map; singleRootElTypes: Set; singleRootNodes: Set; addTemplateRef(name: string, typeExp: string, offset: number): void; recordComponentAccess(source: string, name: string, offset?: number): void; scopes: Set[]; components: (() => string)[]; declare(...varNames: string[]): void; startScope(): () => Generator; getInternalVariable(): string; getHoistVariable(originalVar: string): string; generateHoistVariables(): Generator; generateConditionGuards(): Generator; enter(node: import("@vue/compiler-dom").RootNode | import("@vue/compiler-dom").TemplateChildNode | import("@vue/compiler-dom").SimpleExpressionNode): boolean; exit(): Generator; codes: Code[]; };