import type { AgentDetail, UpdateAgentInput } from '../lib/api-client/config'; export type { AgentDetail, ToolDetail, UpdateAgentInput, } from '../lib/api-client/config'; interface UseAgentsOptions { enabled?: boolean; } export declare const agentDetailsQueryKey: () => readonly ["project", string, "config", "agents"]; export declare const agentQueryKey: (agentName: string | null) => readonly ["project", string, "config", "agents", string]; export declare const configToolsQueryKey: () => readonly ["project", string, "config", "tools"]; export declare function useAgentDetails(options?: UseAgentsOptions): import("@tanstack/react-query").UseQueryResult<{ agents: Array<{ name: string; builtin: boolean; custom: boolean; source: "builtin" | "local" | "global" | "merged" | "plugin" | "embedded"; prompt: string; promptSource: string; description?: string; defaultDescription?: string; toolConfig: { firstClass?: Array; loadable?: Array; }; defaultToolConfig: { firstClass?: Array; loadable?: Array; }; appendToolConfig: { firstClass?: Array; loadable?: Array; }; provider?: string; model?: string; editable: boolean; hasLocalOverride: boolean; hasGlobalOverride: boolean; }>; default: string; }, Error>; export declare function useAgent(agentName: string | null): import("@tanstack/react-query").UseQueryResult<{ agent: { name: string; builtin: boolean; custom: boolean; source: "builtin" | "local" | "global" | "merged" | "plugin" | "embedded"; prompt: string; promptSource: string; description?: string; defaultDescription?: string; toolConfig: { firstClass?: Array; loadable?: Array; }; defaultToolConfig: { firstClass?: Array; loadable?: Array; }; appendToolConfig: { firstClass?: Array; loadable?: Array; }; provider?: string; model?: string; editable: boolean; hasLocalOverride: boolean; hasGlobalOverride: boolean; }; }, Error>; /** * Lightweight agent list for @mention suggestions and input highlighting. * Shares the cache with useAgentDetails but has no store side effects. */ export declare function useMentionAgents(options?: UseAgentsOptions): import("@tanstack/react-query").UseQueryResult<{ agents: Array<{ name: string; builtin: boolean; custom: boolean; source: "builtin" | "local" | "global" | "merged" | "plugin" | "embedded"; prompt: string; promptSource: string; description?: string; defaultDescription?: string; toolConfig: { firstClass?: Array; loadable?: Array; }; defaultToolConfig: { firstClass?: Array; loadable?: Array; }; appendToolConfig: { firstClass?: Array; loadable?: Array; }; provider?: string; model?: string; editable: boolean; hasLocalOverride: boolean; hasGlobalOverride: boolean; }>; default: string; }, Error>; export declare function useConfigTools(options?: UseAgentsOptions): import("@tanstack/react-query").UseQueryResult<{ tools: Array<{ name: string; description?: string; category: "first_class" | "loadable" | "core" | "filesystem" | "search" | "editing" | "shell" | "git" | "web" | "mcp" | "skill" | "research" | "orchestration" | "custom" | "other"; source: "builtin" | "mcp" | "skill" | "custom"; activation?: "first_class" | "loadable" | "mcp"; required?: boolean; risky?: boolean; available: boolean; }>; }, Error>; export declare function useUpdateAgent(): import("@tanstack/react-query").UseMutationResult<{ agent: { name: string; builtin: boolean; custom: boolean; source: "builtin" | "local" | "global" | "merged" | "plugin" | "embedded"; prompt: string; promptSource: string; description?: string; defaultDescription?: string; toolConfig: { firstClass?: Array; loadable?: Array; }; defaultToolConfig: { firstClass?: Array; loadable?: Array; }; appendToolConfig: { firstClass?: Array; loadable?: Array; }; provider?: string; model?: string; editable: boolean; hasLocalOverride: boolean; hasGlobalOverride: boolean; }; }, Error, { name: string; input: UpdateAgentInput; }, unknown>; export declare function useDeleteAgent(): import("@tanstack/react-query").UseMutationResult<{ deleted: boolean; builtin: boolean; agent?: { name: string; builtin: boolean; custom: boolean; source: "builtin" | "local" | "global" | "merged" | "plugin" | "embedded"; prompt: string; promptSource: string; description?: string; defaultDescription?: string; toolConfig: { firstClass?: Array; loadable?: Array; }; defaultToolConfig: { firstClass?: Array; loadable?: Array; }; appendToolConfig: { firstClass?: Array; loadable?: Array; }; provider?: string; model?: string; editable: boolean; hasLocalOverride: boolean; hasGlobalOverride: boolean; }; }, Error, { name: string; scope?: "local" | "global"; }, unknown>; export declare function useSetDefaultAgent(): import("@tanstack/react-query").UseMutationResult<{ success: boolean; defaults: { agent: string; provider: string; model: string; toolApproval?: "auto" | "dangerous" | "all" | "yolo"; guidedMode?: boolean; reasoningText?: boolean; reasoningLevel?: "minimal" | "low" | "medium" | "high" | "max" | "xhigh"; theme?: import("@ottocode/themes").ThemeId; tuiTheme?: string; vimMode?: boolean; compactThread?: boolean; fontFamily?: string; smartEdges?: boolean; threadNavigatorRail?: boolean; releaseToSend?: boolean; fullWidthContent?: boolean; notificationsEnabled?: boolean; dictationKeywords?: import("..").DictationKeyword[]; dictationExcludedProjectKeywords?: string[]; dictationSmartFormatting?: boolean; autoCompactThresholdTokens?: number | null; coAuthorCommits?: boolean; }; }, Error, string, unknown>; export declare function getAgentToolCount(agent: AgentDetail | null | undefined): number; //# sourceMappingURL=useAgents.d.ts.map