import { HooksHandler } from '../Contracts';
/**
 * Runner to execute hooks and cleanup actions
 */
export declare class Runner {
    private hooksHandlers?;
    private withoutHooks?;
    private cleanupActions;
    constructor(hooksHandlers?: Set<HooksHandler> | undefined, withoutHooks?: string[] | undefined);
    /**
     * Find if cleanup call is pending or not. The cleanup is only
     * pending when the run method has been called
     */
    isCleanupPending: boolean;
    private shouldRunHandler;
    /**
     * Run hooks
     */
    run(...data: any[]): Promise<void>;
    /**
     * Execute cleanup actions
     */
    cleanup(...data: any[]): Promise<void>;
}
