import type { StepInput } from "#harness/types.js";
/**
 * Narrowed form of {@link StepInput} whose `message` is always a plain string.
 * Delegated child runs receive a synthesized text-only prompt.
 */
export interface FormattedSubagentInvocation extends StepInput {
    readonly message: string;
}
type RuntimeSubagentInputFormatRequest = {
    readonly message: string;
    readonly name: string;
    readonly type: "runtime";
};
type LocalSubagentInputFormatRequest = {
    readonly description: string;
    readonly message: string;
    readonly name: string;
    readonly type: "local";
};
type RemoteSubagentInputFormatRequest = {
    readonly description: string;
    readonly message: string;
    readonly name: string;
    readonly type: "remote";
};
type SubagentInputFormatRequest = RuntimeSubagentInputFormatRequest | LocalSubagentInputFormatRequest | RemoteSubagentInputFormatRequest;
/**
 * Formats the stable delegated input handed to one child agent invocation.
 */
export declare function formatSubagentInput(input: SubagentInputFormatRequest): FormattedSubagentInvocation;
export {};
