UNPKG

@foxpage/foxpage-manager

Version:

foxpage resource manager

49 lines (48 loc) 1.52 kB
import { Application, Relations, ResourceUpdateInfo, Template, TemplateManager } from '@foxpage/foxpage-types'; import { ManagerBaseImpl } from '../common'; import { TemplateInstance } from './template'; /** * template manager * * @export * @class TemplateManager */ export declare class TemplateManagerImpl extends ManagerBaseImpl<Template> implements TemplateManager { constructor(app: Application); /** * add template to manager * * @param {Template} template */ addTemplate(template: Template): TemplateInstance; /** * get template * if not exist local, will fetch from server then cache to local * @param {string} templateId */ getTemplate(templateId: string): Promise<Template | undefined>; /** * get templates batch * * @param {string[]} templateIds * @return {*} {Promise<Template[]>} */ getTemplates(templateIds: string[]): Promise<Template[]>; /** * remove template * * @param {string[]} templateIds */ removeTemplates(templateIds: string[]): void; /** * fetch templates from server * * @return {*} Promise<Template[]> */ freshTemplates(templateIds?: string[]): Promise<Template[]>; protected onFetch(templateIds?: string[]): Promise<Template[]>; protected onPull(data: ResourceUpdateInfo): Promise<void>; protected onStash(data: Relations): void; protected createInstance(data: Template): Promise<TemplateInstance>; private newTemplate; }