import type { BaseToolExecutorPort } from "../../../../../agentCore/agent_executionEngine/basic_toolLayer/baseTools/baseToolExecutorPort.js";
import type { BaseToolHandler } from "../../../../../agentCore/agent_executionEngine/basic_toolLayer/baseTools/baseToolDefinition.js";
import { executeCodeTest as executeCodeTestCore, planCodeTest, codeTestDescriptor, type CodeTestOutput, type CodeTestProvider, type CodeTestRequest, type CodeTestResult } from "./core.js";
import { type CodeTestDependencies, type CodeTestPracticeProviderName, type CodeTestProviderPractice } from "./dependencies.js";
export * from "./core.js";
export type CodeTestBestPracticeRequest = CodeTestRequest & {
    executor?: BaseToolExecutorPort;
    preferredProvider?: CodeTestPracticeProviderName;
};
export type CodeTestHandlerInput = Omit<CodeTestBestPracticeRequest, "executor">;
export type CodeTestPracticeSelection = {
    providerName: CodeTestPracticeProviderName;
    practice: CodeTestProviderPractice;
    provider?: CodeTestProvider;
};
export declare const codeTestProviderPractices: readonly [CodeTestProviderPractice, CodeTestProviderPractice, CodeTestProviderPractice];
export declare const codeTestBestPracticeDescriptor: {
    readonly toolId: "code.testCode";
    readonly bestPractice: "storage-owned-code-test-with-runtime-process-support";
    readonly sourcePriority: readonly ["cli", "agent-sdk", "api-sdk", "praxis-native"];
    readonly providerOrder: readonly ["anthropic", "openai", "deepmind"];
    readonly dependencies: readonly import("../../../../../agentCore/agent_executionEngine/basic_toolLayer/baseTools/baseToolDefinition.js").BaseToolDependencyDeclaration[];
};
export declare function selectCodeTestPractice(dependencies?: CodeTestDependencies & {
    preferredProvider?: CodeTestPracticeProviderName;
}): CodeTestPracticeSelection;
export declare function executeCodeTest(request?: CodeTestBestPracticeRequest): ReturnType<typeof executeCodeTestCore>;
export declare const codeTestBaseToolDefinition: import("../../../../../agentCore/agent_executionEngine/basic_toolLayer/baseTools/baseToolDefinition.js").BaseToolDefinition<CodeTestHandlerInput, CodeTestOutput>;
export declare const codeTestHandler: BaseToolHandler<CodeTestHandlerInput, CodeTestOutput>;
export type { CodeTestResult };
export { codeTestDescriptor, planCodeTest };
