import type { ResolvedAgentGuidance } from "./agent-guidance-catalog.js";
export declare const AGENT_PRESENTATION_POLICY_SCHEMA_VERSION: 1;
export type AgentPresentationConfigMode = "derived" | "explicit";
export type AgentPresentationConfigValue<T extends string> = "derived" | T;
export type AgentPresentationWorkLog = "off" | "minimal" | "normal" | "frequent";
export type AgentPresentationRationale = "none" | "simple" | "technical";
export type AgentPresentationTechnicality = "plain" | "balanced" | "technical";
export type AgentPresentationFinalAnswerDetail = "concise" | "normal" | "detailed";
export type AgentPrivateReasoningPolicy = "never_disclose";
export type AgentPresentationConfig = {
    mode?: AgentPresentationConfigMode;
    workLog?: AgentPresentationConfigValue<AgentPresentationWorkLog>;
    rationale?: AgentPresentationConfigValue<AgentPresentationRationale>;
    technicality?: AgentPresentationConfigValue<AgentPresentationTechnicality>;
    finalAnswerDetail?: AgentPresentationConfigValue<AgentPresentationFinalAnswerDetail>;
};
export type AgentPresentationBehaviorDimensions = {
    deliberationDepth?: string;
    checkInFrequency?: string;
    explanationVerbosity?: string;
    ambiguityHandling?: string;
};
export type AgentPresentationBehaviorProfileInput = {
    id?: string;
    label?: string;
    dimensions?: AgentPresentationBehaviorDimensions;
};
export type AgentPresentationPolicySource = {
    field: "workLog" | "rationale" | "technicality" | "finalAnswerDetail";
    source: "config" | "role" | "temperament";
    reason: string;
};
export type ResolvedAgentPresentationPolicy = {
    schemaVersion: typeof AGENT_PRESENTATION_POLICY_SCHEMA_VERSION;
    mode: AgentPresentationConfigMode;
    workLog: AgentPresentationWorkLog;
    rationale: AgentPresentationRationale;
    technicality: AgentPresentationTechnicality;
    finalAnswerDetail: AgentPresentationFinalAnswerDetail;
    privateReasoning: AgentPrivateReasoningPolicy;
    source: {
        roleTier: number;
        roleLabel: string;
        temperamentProfileId: string | null;
        temperamentLabel: string | null;
        fields: AgentPresentationPolicySource[];
    };
    agentInstruction: string;
};
export declare function resolveAgentPresentationPolicy(input: {
    effectiveConfig?: Record<string, unknown>;
    guidance: ResolvedAgentGuidance;
    behaviorProfile?: AgentPresentationBehaviorProfileInput;
}): ResolvedAgentPresentationPolicy;
