import type { GrawkusConfig, ReasoningEffort } from './types.js';
export interface ModelResolution {
    model: string;
    source: 'user-alias' | 'builtin-alias' | 'tier' | 'direct';
    alias?: string;
}
export interface ModelTurnOverride {
    model?: string;
    reasoningEffort?: ReasoningEffort;
    source: string;
}
export interface ParsedModelOnce {
    override?: ModelTurnOverride;
    error?: string;
}
export declare const REASONING_EFFORTS: readonly ReasoningEffort[];
export declare function isValidModelAliasName(value: string): boolean;
export declare function normalizeReasoningEffort(value: string | undefined): ReasoningEffort | null;
export declare function tokenizeModelCommandArgs(args: string): string[];
export declare function listModelAliases(config: GrawkusConfig): Array<{
    alias: string;
    model: string;
    source: 'user' | 'builtin';
    description?: string;
}>;
export declare function resolveModelReference(config: GrawkusConfig, value: string, depth?: number): ModelResolution;
export declare function setModelAlias(config: GrawkusConfig, alias: string, target: string): {
    ok: true;
    model: string;
} | {
    ok: false;
    error: string;
};
export declare function deleteModelAlias(config: GrawkusConfig, alias: string): boolean;
export declare function parseModelOnce(config: GrawkusConfig, args: string): ParsedModelOnce;
export declare function formatModelResolution(resolution: ModelResolution): string;
export declare function formatTurnOverride(override: ModelTurnOverride, currentModel: string): string;
