/**
 * MCP emitters — typed emission wrappers for McpEvent domain.
 */
import { createEventEnvelope } from '../events/envelope.js';
/** Emit MCP_CONFIGURED when an MCP server config is parsed. */
export function emitMcpConfigured(bus, ctx, data) {
    bus.emit('mcp', createEventEnvelope('MCP_CONFIGURED', { type: 'MCP_CONFIGURED', ...data }, ctx));
}
/** Emit MCP_CONNECTING when a connection attempt begins. */
export function emitMcpConnecting(bus, ctx, data) {
    bus.emit('mcp', createEventEnvelope('MCP_CONNECTING', { type: 'MCP_CONNECTING', ...data }, ctx));
}
/** Emit MCP_CONNECTED when a connection is established. */
export function emitMcpConnected(bus, ctx, data) {
    bus.emit('mcp', createEventEnvelope('MCP_CONNECTED', { type: 'MCP_CONNECTED', ...data }, ctx));
}
/** Emit MCP_DEGRADED when partial tools are unavailable. */
export function emitMcpDegraded(bus, ctx, data) {
    bus.emit('mcp', createEventEnvelope('MCP_DEGRADED', { type: 'MCP_DEGRADED', ...data }, ctx));
}
/** Emit MCP_AUTH_REQUIRED when auth is needed. */
export function emitMcpAuthRequired(bus, ctx, data) {
    bus.emit('mcp', createEventEnvelope('MCP_AUTH_REQUIRED', { type: 'MCP_AUTH_REQUIRED', ...data }, ctx));
}
/** Emit MCP_RECONNECTING when retrying a dropped connection. */
export function emitMcpReconnecting(bus, ctx, data) {
    bus.emit('mcp', createEventEnvelope('MCP_RECONNECTING', { type: 'MCP_RECONNECTING', ...data }, ctx));
}
/** Emit MCP_DISCONNECTED when a connection is closed. */
export function emitMcpDisconnected(bus, ctx, data) {
    bus.emit('mcp', createEventEnvelope('MCP_DISCONNECTED', { type: 'MCP_DISCONNECTED', ...data }, ctx));
}
/** Emit MCP_POLICY_UPDATED when server trust posture changes. */
export function emitMcpPolicyUpdated(bus, ctx, data) {
    bus.emit('mcp', createEventEnvelope('MCP_POLICY_UPDATED', { type: 'MCP_POLICY_UPDATED', ...data }, ctx));
}
export function emitMcpSchemaQuarantined(bus, ctx, data) {
    bus.emit('mcp', createEventEnvelope('MCP_SCHEMA_QUARANTINED', { type: 'MCP_SCHEMA_QUARANTINED', ...data }, ctx));
}
export function emitMcpSchemaQuarantineApproved(bus, ctx, data) {
    bus.emit('mcp', createEventEnvelope('MCP_SCHEMA_QUARANTINE_APPROVED', { type: 'MCP_SCHEMA_QUARANTINE_APPROVED', ...data }, ctx));
}
