import { CLIProxyProvider } from '../types';
import type { TargetType } from '../../targets/target-adapter';
import { CompositeVariantConfig, CompositeTierConfig } from '../../config/unified-config-types';
export declare const VARIANT_PORT_BASE: number;
export declare const VARIANT_PORT_MAX_OFFSET = 100;
export interface VariantConfig {
    provider: string;
    settings?: string;
    account?: string;
    model?: string;
    port?: number;
    target?: TargetType;
    /** Composite variant fields */
    type?: 'composite';
    default_tier?: 'opus' | 'sonnet' | 'haiku';
    tiers?: {
        opus: CompositeTierConfig;
        sonnet: CompositeTierConfig;
        haiku: CompositeTierConfig;
    };
    /** Whether any tier has fallback configured */
    hasFallback?: boolean;
}
export declare function variantExistsInConfig(name: string): boolean;
export declare function getNextAvailablePort(): number;
export declare function listVariantsFromConfig(): Record<string, VariantConfig>;
export declare function saveCompositeVariantUnified(name: string, config: CompositeVariantConfig): void;
export declare function saveVariantUnified(name: string, provider: CLIProxyProvider, settingsPath: string, account?: string, port?: number, target?: TargetType): void;
export declare function saveVariantLegacy(name: string, provider: string, settingsPath: string, account?: string, port?: number, target?: TargetType): void;
export declare function removeVariantFromUnifiedConfig(name: string): VariantConfig | null;
export declare function removeVariantFromLegacyConfig(name: string): VariantConfig | null;
//# sourceMappingURL=variant-config-adapter.d.ts.map