import { AiAgentResponseFormat, OpenAiChatModelName, AiReasoningEffort } from './ai-agent.public-types';
import { AiFunctionId } from './backend.public-types';
/**
 * The type of assistant tool.
 * @category AI
 */
export type AssistantToolType = 'code_interpreter' | 'file_search';
/**
 * The options for configuring an AI assistant's behavior and response.
 * @category AI
 */
export interface QueryAssistantOptions {
    /** Additional context provided to all AI functions for processing. */
    agentContext?: Record<string, unknown>;
    /** Specific context provided per AI function, keyed by function ID. */
    functionContexts?: Record<AiFunctionId, Record<string, unknown>>;
    /** The desired format of the AI model's response; defaults to 'text'. */
    responseFormat?: AiAgentResponseFormat;
    /** The OpenAI chat model to use for the assistant, if specified. */
    model?: OpenAiChatModelName;
    /** The level of reasoning effort to apply, as defined by OpenAI. */
    reasoningEffort?: AiReasoningEffort;
    /** Custom instructions to guide the assistant's behavior, if provided. */
    instructions?: string;
}
