@foxpage/foxpage-manager
Version:
foxpage resource manager
52 lines (51 loc) • 1.66 kB
TypeScript
import { Application, Condition, ConditionManager, Relations, ResourceUpdateInfo } from '@foxpage/foxpage-types';
import { ManagerBaseImpl } from '../common';
import { ConditionInstance } from './condition';
/**
* condition manager
*
* @export
* @class ConditionManager impl
* @extends {ManagerBaseImpl}
*/
export declare class ConditionManagerImpl extends ManagerBaseImpl<Condition> implements ConditionManager {
constructor(app: Application);
/**
* add condition to manager
*
* @param {Condition} condition
*/
addCondition(condition: Condition): ConditionInstance;
/**
* remove application conditions
*
* @param {string[]} conditionIds
*/
removeConditions(conditionIds: string[]): void;
/**
* get condition via conditionId from local
*
* @param {string} conditionId
* @return {*} {Promise<Condition|undefined>}
*/
getCondition(conditionId: string): Promise<Condition | undefined>;
/**
* get conditions
*
* @param {string[]} conditionIds
* @return {*} {Promise<Condition[]>}
*/
getConditions(conditionIds: string[]): Promise<Condition[]>;
/**
* fetch application conditions
*
* @param {string[]} conditionIds
* @return {*} {Promise<Condition[]>}
*/
freshConditions(conditionIds: string[]): Promise<Condition[]>;
protected onFetch(list: string[]): Promise<Condition[]>;
protected onPull(data: ResourceUpdateInfo): Promise<void>;
protected onStash(data: Relations): void;
protected createInstance(data: Condition): Promise<ConditionInstance>;
private newCondition;
}