import { EApiFunctionTransactionMode } from '../../../enum/decorator/api';
import { IApiBaseEntity } from '../../../interface/api-base-entity.interface';
import { IApiFunctionStepProperties } from '../../../interface/decorator/api/function/step-properties.interface';
import { Repository } from 'typeorm';
export declare class ApiFunctionStepRuntime {
    /**
     * Executes an internal function step with Automator transaction semantics.
     * @template E - Entity type associated with the decorated step.
     * @param {object} options - Step execution options.
     * @param {Array<unknown>} options.functionArguments - Original method arguments.
     * @param {string} [options.methodName] - Decorated step method name used for transaction tracing.
     * @param {(...arguments_: Array<unknown>) => Promise<unknown>} options.originalMethod - Original step method.
     * @param {IApiFunctionStepProperties<E>} options.properties - Step configuration.
     * @param {{ repository?: Repository<E> }} options.target - Service instance that owns the step.
     * @param {EApiFunctionTransactionMode} options.transactionMode - Resolved transaction mode.
     * @returns {Promise<unknown>} Original step result.
     */
    static execute<E extends IApiBaseEntity>(options: {
        functionArguments: Array<unknown>;
        methodName?: string;
        originalMethod: (...arguments_: Array<unknown>) => Promise<unknown>;
        properties: IApiFunctionStepProperties<E>;
        target: {
            repository?: Repository<E>;
        };
        transactionMode: EApiFunctionTransactionMode;
    }): Promise<unknown>;
}
