UNPKG

@foxpage/foxpage-manager

Version:

foxpage resource manager

49 lines (48 loc) 1.56 kB
import { Application, Relations, ResourceUpdateInfo, Variable, VariableManager } from '@foxpage/foxpage-types'; import { ManagerBaseImpl } from '../common'; import { VariableInstance } from './variable'; /** * variable manager * * @export * @class VariableManager * @extends {ManagerBaseImpl} */ export declare class VariableManagerImpl extends ManagerBaseImpl<Variable> implements VariableManager { constructor(app: Application); /** * add variable to manager * * @param {Variable} variable */ addVariable(variable: Variable): VariableInstance; /** * remove local variable via variableId * * @param {string[]} variableIds */ removeVariables(variableIds: string[]): void; /** * get variable from local first, not exist will fetch from server * * @param {string} variableId * @return {*} {(Promise<Variable | undefined>)} */ getVariable(variableId: string): Promise<Variable | undefined>; /** * get variables * * @param {string[]} variableIds * @return {*} {Promise<Variable[]>} */ getVariables(variableIds: string[]): Promise<Variable[]>; /** * fetch application variable */ freshVariables(variableIds: string[]): Promise<Variable[]>; protected onFetch(list: string[]): Promise<Variable[]>; protected onPull(data: ResourceUpdateInfo): Promise<void>; protected onStash(data: Relations): void; protected createInstance(data: Variable): Promise<VariableInstance>; private newVariable; }