/**
 * A utility class that carries an operation result of any type
 * along with executable after actions that should be performed at a later time.
 */
export declare class ResultWithAfterActions<T> {
    protected _result: T;
    protected _afterActions: Array<() => void>;
    /**
     * @param _result the result of an operation
     * @param _afterActions the lambdas that should be executed at some later time. Defaults to an empty array.
     */
    constructor(_result: T, _afterActions?: Array<() => void>);
    /**
     * The result of an operations.
     */
    get result(): T;
    /**
     * Executes all the after action lambdas.
     */
    executeAfterActions(): void;
}
