export type ObserverOfThrottleable = (error: any, result: T) => void; /** * Aggregates an action whose execution can be deffered and offers the * necessary functionality to notify observers when the action had been * executed, providing the outcome. */ declare class Throttleable { private _actionFn; private _observers; private _result; private _error; private _executed; protected get actionFn(): () => Promise; protected get observers(): ObserverOfThrottleable[]; protected get result(): T; protected get error(): any; protected get executed(): boolean; constructor(actionFn: () => Promise); execute(): Promise; observe(observerFn: ObserverOfThrottleable): void; createObservingPromise(): Promise; protected notifyObservers(): void; private notifyObserver; private addObserver; private executeActionAndSetOutcome; private setExecutedFlag; } export { Throttleable };