import type { BaseMessage, SrpcDisconnectCause, SrpcStream } from './types';
export type SrpcObservation = {
    type: 'connection';
    stream: SrpcStream;
    at: number;
} | {
    type: 'disconnection';
    stream: SrpcStream;
    cause: SrpcDisconnectCause;
    at: number;
} | {
    type: 'message';
    stream: SrpcStream;
    direction: 'inbound' | 'outbound';
    data: BaseMessage;
    at: number;
};
export type SrpcObserver = (entry: SrpcObservation) => void;
export declare function registerSrpcObserver(observer: SrpcObserver): () => void;
export declare function notifySrpcObservers(entry: SrpcObservation): void;
//# sourceMappingURL=observer.d.ts.map