import type { BaseToolExecutorPort } from "../../../../../agentCore/agent_executionEngine/basic_toolLayer/baseTools/baseToolExecutorPort.js";
import type { BaseToolDependencyDeclaration } from "../../../../../agentCore/agent_executionEngine/basic_toolLayer/baseTools/baseToolDefinition.js";
import type { CodeOverwriteProvider } from "./core.js";
export type CodeOverwritePracticeProviderName = "anthropic" | "openai" | "deepmind" | "praxis-native";
export type CodeOverwriteDependencies = {
    executor?: BaseToolExecutorPort;
    provider?: CodeOverwriteProvider;
};
export type CodeOverwriteProviderPractice = {
    providerName: CodeOverwritePracticeProviderName;
    source: {
        kind: "cli" | "agent-sdk" | "api-sdk" | "praxis-native";
        label: string;
        path?: string;
    };
    directCliSupport: boolean;
    sideEffectPolicy: "runtime-governed";
    notes: readonly string[];
    createProvider(dependencies: CodeOverwriteDependencies): CodeOverwriteProvider | undefined;
};
export declare const codeOverwriteDependencyDeclarations: readonly BaseToolDependencyDeclaration[];
export declare function createHostExecutorCodeOverwriteProvider(executor: BaseToolExecutorPort | undefined): CodeOverwriteProvider | undefined;
