export interface IEvaServicePromise { serviceContext: string; promise: Promise; resolve: (value?: RES) => void; reject: (reason?: any) => void; created_at: Date; resolved_at?: Date; } /** * Each promise chain has it's own promise that resolves when all the parts have * been collected and resolved * * @export * @interface IEvaServicePromiseChain */ export interface IEvaServicePromiseChain { parts: Promise[]; promise: Promise; } /** * Registers a new EVA call promise * * @export * @template RES * @param {string} serviceContext The unique service context * @param {string} [chainContext] The unique chain this call belongs to * @returns {Promise} */ export declare function registerServicePromise(serviceContext: string, chainContext: string): Promise; /** * Retrieve a promise using its context * * @export * @param {string} context * @returns IEvaServicePromise|void */ export declare function getServicePromise(serviceContext: string): IEvaServicePromise; /** * Retrieves a promise chain using its context * * @export * @param {string} chainContext * @returns */ export declare function getServicePromiseChain(chainContext: string): IEvaServicePromiseChain; //# sourceMappingURL=promise.d.ts.map