/**
 * Surface emitters — typed wrappers for SurfaceEvent domain.
 */
import { createEventEnvelope } from '../events/envelope.js';
function surfaceEvent(type, data, ctx) {
    return createEventEnvelope(type, { type, ...data }, ctx);
}
export function emitSurfaceEnabled(bus, ctx, data) {
    bus.emit('surfaces', surfaceEvent('SURFACE_ENABLED', data, ctx));
}
export function emitSurfaceDisabled(bus, ctx, data) {
    bus.emit('surfaces', surfaceEvent('SURFACE_DISABLED', data, ctx));
}
export function emitSurfaceAccountConnected(bus, ctx, data) {
    bus.emit('surfaces', surfaceEvent('SURFACE_ACCOUNT_CONNECTED', data, ctx));
}
export function emitSurfaceAccountDegraded(bus, ctx, data) {
    bus.emit('surfaces', surfaceEvent('SURFACE_ACCOUNT_DEGRADED', data, ctx));
}
export function emitSurfaceCapabilityChanged(bus, ctx, data) {
    bus.emit('surfaces', surfaceEvent('SURFACE_CAPABILITY_CHANGED', data, ctx));
}
