import { Command } from './command.interface'; import { CommandProcessor } from './processor.interface'; import { Transaction, TransactionOptions } from './transaction.interface'; import { TransactionRepository } from './repository.interface'; export interface SagaConfig { processors: CommandProcessor[]; repository?: TransactionRepository; } export declare class Saga { private readonly processors; private readonly repository?; constructor(config: SagaConfig); initTransaction(commands: Command[], options?: TransactionOptions): Promise>; commitTransaction(transaction: Transaction): Promise; rollBackTransaction(transaction: Transaction): Promise; execute(commands: Command[], options?: TransactionOptions): Promise>; private processTransaction; } //# sourceMappingURL=saga.d.ts.map