import { BaseChannel } from "async-channel";
import { FunctionReference, FunctionArgs, FunctionReturnType } from "convex/server";
import { WorkflowStep } from "./index.js";
import { StepRequest } from "./step.js";
import { NameOption, RetryOption, SchedulerOptions } from "@convex-dev/workpool";
export declare class StepContext implements WorkflowStep {
    workflowId: string;
    private sender;
    constructor(workflowId: string, sender: BaseChannel<StepRequest>);
    runQuery<Query extends FunctionReference<"query", any>>(query: Query, args: FunctionArgs<Query>, opts?: NameOption & SchedulerOptions): Promise<FunctionReturnType<Query>>;
    runMutation<Mutation extends FunctionReference<"mutation", any>>(mutation: Mutation, args: FunctionArgs<Mutation>, opts?: NameOption & SchedulerOptions): Promise<FunctionReturnType<Mutation>>;
    runAction<Action extends FunctionReference<"action", any>>(action: Action, args: FunctionArgs<Action>, opts?: NameOption & SchedulerOptions & RetryOption): Promise<FunctionReturnType<Action>>;
    private runFunction;
}
//# sourceMappingURL=stepContext.d.ts.map