import type { ActionInterface, ActionPayload, ActionType } from '../Sheet/SheetActions';
import { type SheetInterface } from '../Sheet/SheetInterface';
import { type TransactionInterface } from '../Sheet/TransactionInterface';
export type ActionParams = {
type: A;
payload: ActionPayload;
transaction: TransactionInterface;
};
export type ActionSubClassParams = Omit, 'type'>;
export declare abstract class Action implements ActionInterface {
readonly type: A;
readonly payload: ActionPayload;
readonly transaction: TransactionInterface;
readonly description: string;
constructor(params: ActionParams);
abstract execute(): void;
abstract getDescription(): string;
}