export declare function useConfig(): import("@tanstack/react-query").UseQueryResult<{
    agents: string[];
    providers: string[];
    defaults: {
        agent: string;
        provider: string;
        model: string;
        toolApproval?: "auto" | "dangerous" | "all" | "yolo";
        guidedMode?: boolean;
        reasoningText?: boolean;
        reasoningLevel?: "minimal" | "low" | "medium" | "high" | "max" | "xhigh";
        theme?: "light" | "dark";
        tuiTheme?: string;
        vimMode?: boolean;
        compactThread?: boolean;
        fontFamily?: string;
        smartEdges?: boolean;
        releaseToSend?: boolean;
        fullWidthContent?: boolean;
        autoCompactThresholdTokens?: number | null;
        coAuthorCommits?: boolean;
        ottoEnabled?: boolean;
    };
}, Error>;
export declare function useModels(provider?: string): import("@tanstack/react-query").UseQueryResult<{
    models: Array<{
        id: string;
        label: string;
        toolCall?: boolean;
        reasoningText?: boolean;
        vision?: boolean;
        attachment?: boolean;
        free?: boolean;
        contextWindow?: number;
        maxOutputTokens?: number;
        available?: boolean;
        unavailableReason?: string;
    }>;
    default: string;
    allowAnyModel?: boolean;
    dynamicModels?: boolean;
    label?: string;
}, Error>;
export declare function useAllModels(): import("@tanstack/react-query").UseQueryResult<import("..").AllModelsResponse, Error>;
export declare function useUpdateDefaults(): 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?: "light" | "dark";
        tuiTheme?: string;
        vimMode?: boolean;
        compactThread?: boolean;
        fontFamily?: string;
        smartEdges?: boolean;
        releaseToSend?: boolean;
        fullWidthContent?: boolean;
        autoCompactThresholdTokens?: number | null;
        coAuthorCommits?: boolean;
        ottoEnabled?: boolean;
    };
}, Error, {
    agent?: string;
    provider?: string;
    model?: string;
    toolApproval?: "auto" | "dangerous" | "all" | "yolo";
    guidedMode?: boolean;
    reasoningText?: boolean;
    reasoningLevel?: "minimal" | "low" | "medium" | "high" | "max" | "xhigh";
    theme?: "light" | "dark";
    tuiTheme?: string;
    vimMode?: boolean;
    compactThread?: boolean;
    fontFamily?: string;
    smartEdges?: boolean;
    releaseToSend?: boolean;
    fullWidthContent?: boolean;
    autoCompactThresholdTokens?: number | null;
    coAuthorCommits?: boolean;
    ottoEnabled?: boolean;
    scope?: "global";
}, {
    previousConfig: {
        agents: string[];
        providers: string[];
        defaults: {
            agent: string;
            provider: string;
            model: string;
            toolApproval?: "auto" | "dangerous" | "all" | "yolo";
            guidedMode?: boolean;
            reasoningText?: boolean;
            reasoningLevel?: "minimal" | "low" | "medium" | "high" | "max" | "xhigh";
            theme?: "light" | "dark";
            tuiTheme?: string;
            vimMode?: boolean;
            compactThread?: boolean;
            fontFamily?: string;
            smartEdges?: boolean;
            releaseToSend?: boolean;
            fullWidthContent?: boolean;
            autoCompactThresholdTokens?: number | null;
            coAuthorCommits?: boolean;
            ottoEnabled?: boolean;
        };
    };
}>;
//# sourceMappingURL=useConfig.d.ts.map