import type { BaseToolExecutorPort } from "../../../../agentCore/agent_executionEngine/basic_toolLayer/baseTools/baseToolExecutorPort.js";
import type { BaseToolDefinition, BaseToolHandler } from "../../../../agentCore/agent_executionEngine/basic_toolLayer/baseTools/baseToolDefinition.js";
import { planSearchGround as planSearchGroundCore, type SearchGroundExecutor, type SearchGroundOutput, type SearchGroundRequest } from "./core.js";
import { type SearchGroundDependencies, type SearchGroundPracticeProviderName, type SearchGroundProviderPractice } from "./dependencies.js";
export * from "./core.js";
export type SearchGroundBestPracticeRequest = SearchGroundRequest & {
    executorPort?: BaseToolExecutorPort;
    preferredProvider?: SearchGroundPracticeProviderName;
};
export type SearchGroundHandlerInput = Omit<SearchGroundBestPracticeRequest, "executorPort">;
export type SearchGroundPracticeSelection = {
    providerName: SearchGroundPracticeProviderName;
    practice: SearchGroundProviderPractice;
    provider?: SearchGroundExecutor;
};
export declare const searchGroundProviderPractices: readonly [SearchGroundProviderPractice, SearchGroundProviderPractice, SearchGroundProviderPractice];
export declare const searchGroundBestPracticeDescriptor: {
    readonly toolId: "search.ground";
    readonly bestPractice: "storage-owned-evidence-grounding-with-runtime-provider-support";
    readonly sourcePriority: readonly ["cli", "agent-sdk", "api-sdk", "praxis-native"];
    readonly providerOrder: readonly ["openai", "anthropic", "deepmind"];
    readonly dependencies: ({
        dependencyId: string;
        kind: "runtime";
        required: true;
        description: string;
    } | {
        dependencyId: string;
        kind: "permission";
        required: true;
        description: string;
    } | {
        dependencyId: string;
        kind: "service";
        required: false;
        description: string;
    })[];
};
export declare function selectSearchGroundPractice(dependencies?: SearchGroundDependencies & {
    preferredProvider?: SearchGroundPracticeProviderName;
}): SearchGroundPracticeSelection;
export declare function executeSearchGround(request?: SearchGroundBestPracticeRequest): ReturnType<typeof planSearchGroundCore>;
export declare const planSearchGround: typeof executeSearchGround;
export declare const searchGroundBaseToolDefinition: BaseToolDefinition<SearchGroundHandlerInput, SearchGroundOutput>;
export declare const searchGroundHandler: BaseToolHandler<SearchGroundHandlerInput, SearchGroundOutput>;
