import type { MultishotToolDefinition, MultishotToolExecutor } from './types';
export declare const DEFAULT_RESEARCHER_MODEL = "openai/gpt-4o-mini";
export declare const DEFAULT_CODER_MODEL = "openai/gpt-4o-mini";
export interface DefaultResearcherConfig {
    /** Replace the system prompt to bias the researcher toward a domain's
     *  citation style. Defaults to a generic "cite sources by name" prompt. */
    systemPrompt?: string;
    model?: string;
}
export interface DefaultCoderConfig {
    /** Replace the system prompt to bias the coder toward a language /
     *  framework / artifact style. */
    systemPrompt?: string;
    model?: string;
}
export declare const DEFAULT_DELEGATE_RESEARCH_TOOL: MultishotToolDefinition;
export declare const DEFAULT_DELEGATE_CODE_TOOL: MultishotToolDefinition;
export declare function createResearchExecutor(config?: DefaultResearcherConfig): MultishotToolExecutor;
export declare function createCodeExecutor(config?: DefaultCoderConfig): MultishotToolExecutor;
export interface DefaultToolsConfig {
    research?: DefaultResearcherConfig;
    code?: DefaultCoderConfig;
    /** When true (default), each tool result is recorded as a typed artifact:
     *  research → type='research', code → type='code'. */
    recordArtifacts?: boolean;
}
export interface DefaultToolsBundle {
    tools: MultishotToolDefinition[];
    executors: Record<string, MultishotToolExecutor>;
    artifactTypeFor: (toolName: string) => string | undefined;
}
export declare function defaultDelegationTools(config?: DefaultToolsConfig): DefaultToolsBundle;
export { defaultRouterBaseUrl } from './router';
//# sourceMappingURL=default-tools.d.ts.map