import { Provider, TokenId } from '@tsdi/ioc'; import { IBuilderService } from '@tsdi/boot'; import { ITemplateOption, ITemplateContext } from './compile/TemplateContext'; /** * component build token. */ export declare const ComponentBuilderToken: TokenId; /** * component builder. * * @export * @interface IComponentBuilder * @extends {IBuilderService} */ export interface IComponentBuilder extends IBuilderService { /** * build template. * * @param {ITemplateOption} options * @param {...Provider[]} providers * @returns {Promise} * @memberof IComponentBuilder */ buildTemplate(options: ITemplateOption, ...providers: Provider[]): Promise; /** * reolve template. * * @param {ITemplateOption} options * @param {...Provider[]} providers * @returns {Promise} * @memberof IComponentBuilder */ resolveTemplate(options: ITemplateOption, ...providers: Provider[]): Promise; /** * serialize component as template json. * * @param {*} component * @returns {*} * @memberof IComponentBuilder */ serialize(component: any): any; }