import type { RuntimeEventBus } from '../events/index.js';
import type { EmitterContext } from './index.js';
import type { CommunicationKind, CommunicationScope } from '../../../events/communication.js';
type BaseCommunication = {
    messageId: string;
    fromId: string;
    toId: string;
    scope: CommunicationScope;
    kind: CommunicationKind;
};
export declare function emitCommunicationSent(bus: RuntimeEventBus, ctx: EmitterContext, data: BaseCommunication & {
    content: string;
    fromRole?: string | undefined;
    toRole?: string | undefined;
    cohort?: string | undefined;
    wrfcId?: string | undefined;
    parentAgentId?: string | undefined;
}): void;
export declare function emitCommunicationDelivered(bus: RuntimeEventBus, ctx: EmitterContext, data: BaseCommunication): void;
export declare function emitCommunicationBlocked(bus: RuntimeEventBus, ctx: EmitterContext, data: BaseCommunication & {
    reason: string;
    fromRole?: string | undefined;
    toRole?: string | undefined;
    cohort?: string | undefined;
    wrfcId?: string | undefined;
    parentAgentId?: string | undefined;
}): void;
export {};
//# sourceMappingURL=communication.d.ts.map