import type { PluginInput } from "@opencode-ai/plugin";
import { promptWithModelSuggestionRetry } from "../../shared";
type OpencodeClient = PluginInput["client"];
type PromptAsyncArgs = Parameters<OpencodeClient["session"]["promptAsync"]>[0];
type PromptRetryClient = Parameters<typeof promptWithModelSuggestionRetry>[0];
type PromptRetryArgs = Parameters<typeof promptWithModelSuggestionRetry>[1];
type SessionMessagesArgs = Parameters<OpencodeClient["session"]["messages"]>[0];
export declare function routeSessionPrompt(args: PromptAsyncArgs, directory: string): PromptAsyncArgs;
export declare function promptAsyncInDirectory(client: OpencodeClient, args: PromptAsyncArgs, directory: string): Promise<unknown>;
export declare function promptWithRetryInDirectory(client: PromptRetryClient, args: PromptRetryArgs, directory: string): Promise<void>;
export declare function messagesInDirectory(client: OpencodeClient, args: SessionMessagesArgs, directory: string): Promise<unknown>;
export {};
