import type { ActionHandler, Context, Action } from "./types"; export declare class ActionHandlerError extends Error { cause?: Error; constructor(reason: string, cause?: Error); } interface ActionHandlerBuilderConfig { validateManually?: boolean; } export declare class ActionHandlerBuilder { #private; constructor(config?: ActionHandlerBuilderConfig); validate(actionHandler: ActionHandler): this; /** * What actions do you want to do, in order * when this action is received? */ do(...actionHandler: ActionHandler[]): this; /** * What must be true in order for us to be able to do this? */ where(...predicates: ((action: Action) => Promise)[]): this; /** * Given some Context and Action, exec through * the pipeline, in sequential order. */ exec(context: Context, action: Action): Promise; handlers(): string[]; } export {}; //# sourceMappingURL=action-handler.d.ts.map