import type { MergedConfig } from "./config-layer.js"; export type { MergedConfig } from "./config-layer.js"; export type ResolveSource = "L4-inline" | "L4-name" | "L3" | "L2" | "L1" | "default" | "inherit"; export type LookupSource = "L3" | "L2" | "L1" | "default" | "missing"; export interface ResolveResult { model: { provider: string; model: string; } | undefined; source: ResolveSource; } export interface LookupResult { model: { provider: string; model: string; } | undefined; source: LookupSource; } /** * Look up a persona-model name through L3 → L2 → L1 → default → missing. * Used by resolveModelForPhase for L4-name resolution and direct persona lookups. */ export declare function lookupPersonaModel(personaName: string, pipelineName: string, merged: MergedConfig): LookupResult; /** * Resolve the {provider, model} pair for a specific phase invocation. * * Cascade order: * L4-inline → L4-name → L3 → L2 → L1 → default persona-model → inherit * * When source is "inherit", model is undefined — caller must skip setModel. */ export declare function resolveModelForPhase(pipelineName: string, phaseRole: string, personaNoun: string, merged: MergedConfig): ResolveResult;