import type { CouncilProfileConfig, ResolvedCouncilProfile } from '../types/council.js'; import { type CouncilPersonaRegistry } from './council-personas.js'; export declare const DEFAULT_COUNCIL_QUORUM_FRACTION = 0.5; export declare const DEFAULT_COUNCIL_APPROVAL_FRACTION = 0.5; export declare const DEFAULT_COUNCIL_VOTER_MAX_TOKENS = 300; export declare const DEFAULT_COUNCIL_JUDGE_MAX_TOKENS = 500; export declare const DEFAULT_COUNCIL_PER_CALL_TIMEOUT_MS = 30000; export declare const DEFAULT_COUNCIL_OVERALL_TIMEOUT_MS = 90000; /** Model-agnostic profiles. Roles are routing hints, never provider/model pins. */ export declare const BUILTIN_COUNCIL_PROFILES: readonly CouncilProfileConfig[]; /** Immutable registry of normalized Council profiles. */ export declare class CouncilProfileRegistry { private readonly byId; private readonly personas; constructor(profiles?: readonly CouncilProfileConfig[], personas?: CouncilPersonaRegistry); has(id: string): boolean; get(id: string): ResolvedCouncilProfile | undefined; require(id: string): ResolvedCouncilProfile; list(): readonly ResolvedCouncilProfile[]; /** Return a new registry; the current registry is never mutated. */ with(profile: CouncilProfileConfig, opts?: { replace?: boolean | undefined; personas?: CouncilPersonaRegistry | undefined; }): CouncilProfileRegistry; } export declare const DEFAULT_COUNCIL_PROFILE_REGISTRY: CouncilProfileRegistry; export declare function createCouncilProfileRegistry(additional?: readonly CouncilProfileConfig[], personas?: CouncilPersonaRegistry): CouncilProfileRegistry; export declare function resolveCouncilProfile(profile: string | CouncilProfileConfig | undefined, opts?: { registry?: CouncilProfileRegistry | undefined; personas?: CouncilPersonaRegistry | undefined; defaultProfile?: string | undefined; }): ResolvedCouncilProfile; export declare function normalizeCouncilProfile(profile: CouncilProfileConfig, personas?: CouncilPersonaRegistry): ResolvedCouncilProfile; //# sourceMappingURL=council-profiles.d.ts.map