import { parseModelSuggestion as parseModelSuggestionFromCore } from "@oh-my-opencode/model-core"; import type { SessionPromptAsyncData, SessionPromptData } from "@opencode-ai/sdk"; import { type PromptRetryOptions } from "./prompt-timeout-context"; export type { ModelSuggestionInfo } from "@oh-my-opencode/model-core"; export { parseModelSuggestionFromCore as parseModelSuggestion }; type PromptAsyncArgs = Omit & { readonly body: NonNullable; readonly signal?: AbortSignal; }; type PromptSyncArgs = Omit & { readonly body: NonNullable; readonly signal?: AbortSignal; }; type PromptAsyncRetryClient = { readonly session?: { readonly status?: () => Promise; readonly messages?: (input: { readonly path: { readonly id: string; }; readonly query: { readonly directory: string; readonly limit?: number; }; }) => Promise; promptAsync?(input: PromptAsyncArgs): Promise; }; }; type PromptSyncRetryClient = { readonly session?: { readonly status?: () => Promise; readonly messages?: (input: { readonly path: { readonly id: string; }; readonly query: { readonly directory: string; readonly limit?: number; }; }) => Promise; prompt?(input: PromptSyncArgs): Promise; }; }; export declare function promptWithModelSuggestionRetry(client: PromptAsyncRetryClient, args: PromptAsyncArgs, options?: PromptRetryOptions): Promise; export declare function promptSyncWithModelSuggestionRetry(client: PromptSyncRetryClient, args: PromptSyncArgs, options?: PromptRetryOptions): Promise;