/**
 * Security emitters — typed wrappers for SecurityEvent domain.
 */
import { createEventEnvelope } from '@pellux/goodvibes-sdk/platform/runtime/events/envelope';
function securityEvent(type, data, ctx) {
    return createEventEnvelope(type, { type, ...data }, ctx);
}
export function emitTokenScopeViolation(bus, ctx, data) {
    bus.emit('security', securityEvent('TOKEN_SCOPE_VIOLATION', data, ctx));
}
export function emitTokenRotationWarning(bus, ctx, data) {
    bus.emit('security', securityEvent('TOKEN_ROTATION_WARNING', data, ctx));
}
export function emitTokenRotationExpired(bus, ctx, data) {
    bus.emit('security', securityEvent('TOKEN_ROTATION_EXPIRED', data, ctx));
}
export function emitTokenBlocked(bus, ctx, data) {
    bus.emit('security', securityEvent('TOKEN_BLOCKED', data, ctx));
}
