import type { TypedExecutionContext } from '../../types/base-types';
import type { ExpressionEvaluator } from '../../core/expression-evaluator';
import { type DecoratedCommand, type CommandMetadata } from '../decorators';
import { type NumericTargetRawInput, type NumericTargetInput } from '../helpers/numeric-target-parser';
export type NumericOperation = 'increment' | 'decrement';
export interface NumericModifyInput extends NumericTargetInput {
    operation: NumericOperation;
}
export type { NumericTargetInput as IncrementCommandInput };
export type { NumericTargetInput as DecrementCommandInput };
export declare class NumericModifyCommand implements DecoratedCommand {
    readonly name: string;
    readonly metadata: CommandMetadata;
    parseInput(raw: NumericTargetRawInput & {
        commandName?: string;
    }, evaluator: ExpressionEvaluator, context: TypedExecutionContext): Promise<NumericModifyInput>;
    execute(input: NumericModifyInput, context: TypedExecutionContext): Promise<number>;
}
export { NumericModifyCommand as IncrementCommand };
export { NumericModifyCommand as DecrementCommand };
export declare const createNumericModifyCommand: () => NumericModifyCommand;
export declare const createIncrementCommand: () => NumericModifyCommand;
export declare const createDecrementCommand: () => NumericModifyCommand;
export default NumericModifyCommand;
//# sourceMappingURL=increment.d.ts.map