import type { CommunicationKind, CommunicationScope } from '../../events/communication.js';
export type AgentCommunicationRole = 'orchestrator' | 'planner' | 'engineer' | 'reviewer' | 'fixer' | 'verifier' | 'researcher' | 'integrator' | 'general';
export interface AgentCommunicationMetadata {
    agentId: string;
    role: AgentCommunicationRole;
    parentAgentId?: string | undefined;
    cohort?: string | undefined;
    wrfcId?: string | undefined;
}
export declare function communicationRoleForTemplate(template?: string): AgentCommunicationRole;
export interface CommunicationDecision {
    allowed: boolean;
    reason?: string | undefined;
}
export declare function evaluateCommunicationRoute(input: {
    from: AgentCommunicationMetadata;
    to: AgentCommunicationMetadata;
    kind: CommunicationKind;
    scope: CommunicationScope;
}): CommunicationDecision;
//# sourceMappingURL=communication-policy.d.ts.map