import type { BaseToolExecutorPort } from "../../../../../agentCore/agent_executionEngine/basic_toolLayer/baseTools/baseToolExecutorPort.js";
import type { ShellProviderPracticeMetadata } from "../../_shared/baseToolAdapter.js";
import type { ShellInvocationConstructionRequest, ShellInvocationConstructionResult, ShellInvocationEnvelope } from "./core.js";
export type ShellInvocationConstructionPracticeProviderName = "anthropic" | "openai" | "deepmind" | "praxis-native";
export type ShellInvocationConstructionProvider = (request: ShellInvocationConstructionRequest) => ShellInvocationConstructionResult | Promise<ShellInvocationConstructionResult>;
export type ShellInvocationConstructionDependencies = {
    executor?: BaseToolExecutorPort;
    provider?: ShellInvocationConstructionProvider;
};
export type ShellInvocationConstructionProviderPractice = ShellProviderPracticeMetadata<ShellInvocationConstructionPracticeProviderName, ShellInvocationConstructionProvider, ShellInvocationConstructionDependencies>;
export declare const shellInvocationConstructionDependencyDeclarations: ({
    dependencyId: string;
    kind: "runtime";
    required: true;
    description: string;
} | {
    dependencyId: string;
    kind: "runtime";
    required: false;
    description: string;
})[];
export declare function normalizeShellInvocationEnvelope(output: Readonly<Record<string, unknown>>): ShellInvocationEnvelope;
export declare function createHostExecutorShellInvocationConstructionProvider(executor: BaseToolExecutorPort | undefined): ShellInvocationConstructionProvider | undefined;
