import type { ModelMapping } from '../../api/services';
import type { TargetType } from '../../targets/target-adapter';
export interface ApiCommandArgs {
    name?: string;
    positionals: string[];
    baseUrl?: string;
    apiKey?: string;
    model?: string;
    extraModels?: string[];
    preset?: string;
    cliproxyProvider?: string;
    target?: TargetType;
    extendedContext?: boolean;
    force?: boolean;
    yes?: boolean;
    errors: string[];
}
export declare const API_BOOLEAN_FLAGS: readonly ["--force", "--yes", "-y", "--1m", "--no-1m"];
export declare const API_VALUE_FLAGS: readonly ["--base-url", "--api-key", "--model", "--extra-models", "--preset", "--cliproxy-provider", "--target"];
export declare const API_KNOWN_FLAGS: readonly string[];
export interface ParseApiCommandArgsOptions {
    maxPositionals?: number;
}
export declare function sanitizeHelpText(value: string): string;
export declare function extractPositionalArgs(args: string[]): string[];
export declare function parseOptionalTargetFlag(args: string[], knownFlags: readonly string[]): {
    target?: TargetType;
    remainingArgs: string[];
    errors: string[];
};
export declare function collectUnexpectedApiArgs(args: string[], options: {
    knownFlags?: readonly string[];
    maxPositionals: number;
}): {
    positionals: string[];
    errors: string[];
};
export declare function parseApiCommandArgs(args: string[], options?: ParseApiCommandArgsOptions): ApiCommandArgs;
export declare function hasClaudeModelMapping(models: ModelMapping): boolean;
export declare function hasExplicitClaudeExtendedContext(models: ModelMapping): boolean;
export declare function applyClaudeExtendedContextPreference(models: ModelMapping, enabled: boolean): ModelMapping;
export declare function exitOnApiCommandErrors(errors: string[]): void;
//# sourceMappingURL=shared.d.ts.map