import { ComponentInfo } from '../models/component-info'; import { RenderOptions } from './renderer-options'; import { FunctionDefinition } from '../ast/renderer-ast-dfn'; /** * helper 常用函数别名,有利于减少代码压缩体积 */ export declare const helperAliases: Map; /** * 每个 ComponentClass 对应一个 Render 函数,由 RendererCompiler 生成。 */ export declare class RendererCompiler { private options; private id; constructor(options: RenderOptions); /** * 把 ComponentInfo 编译成函数源码,返回 Renderer 函数的 AST */ compileToRenderer(componentInfo: ComponentInfo): FunctionDefinition; private compileClientRendererBody; private compileComponentRendererBody; private compileTemplateComponentRendererBody; private compileDataStringify; private compileGenInstance; private compileContext; private compileTemplateComponentContext; /** * 产出 initData() 的函数调用 * * 注意即使对于 JSComponentInfo,也不能在编译期调用 initData。 * 因为字面量是无法表示嵌套关系的,详细讨论见: * https://github.com/baidu/san-ssr/issues/99 */ private emitInitData; }