/**
 * Control-plane emitters — typed wrappers for ControlPlaneEvent domain.
 */
import type { RuntimeEventBus } from '../events/index.js';
import type { ControlPlaneClientKind, ControlPlanePrincipalKind, ControlPlaneTransportKind } from '@pellux/goodvibes-sdk/platform/runtime/events/control-plane';
import type { EmitterContext } from './index.js';
export declare function emitControlPlaneClientConnected(bus: RuntimeEventBus, ctx: EmitterContext, data: {
    clientId: string;
    clientKind: ControlPlaneClientKind;
    transport: ControlPlaneTransportKind;
}): void;
export declare function emitControlPlaneClientDisconnected(bus: RuntimeEventBus, ctx: EmitterContext, data: {
    clientId: string;
    reason: string;
}): void;
export declare function emitControlPlaneSubscriptionCreated(bus: RuntimeEventBus, ctx: EmitterContext, data: {
    clientId: string;
    subscriptionId: string;
    topics: string[];
}): void;
export declare function emitControlPlaneSubscriptionDropped(bus: RuntimeEventBus, ctx: EmitterContext, data: {
    clientId: string;
    subscriptionId: string;
    reason: string;
}): void;
export declare function emitControlPlaneAuthGranted(bus: RuntimeEventBus, ctx: EmitterContext, data: {
    clientId: string;
    principalId: string;
    principalKind: ControlPlanePrincipalKind;
    scopes: string[];
}): void;
export declare function emitControlPlaneAuthRejected(bus: RuntimeEventBus, ctx: EmitterContext, data: {
    clientId: string;
    principalId: string;
    reason: string;
}): void;
//# sourceMappingURL=control-plane.d.ts.map