import type { SyncularClientConfig, SyncularConsoleDiagnosticsOptions, SyncularDiagnosticSnapshot, SyncularLifecycleState, SyncularRuntimeClient } from './types';
type ConsoleDiagnosticsClient = Pick<SyncularRuntimeClient, 'addDiagnosticListener' | 'addEventListener' | 'diagnosticSnapshot' | 'lifecycleState'>;
export interface SyncularConsoleDiagnosticsPayload {
    clientId: string;
    actorId?: string;
    partitionId: string;
    lifecycle?: Record<string, unknown>;
    snapshot: Record<string, unknown>;
}
export interface SyncularConsoleDiagnosticsPayloadResult {
    payload: SyncularConsoleDiagnosticsPayload;
    body: string;
    byteLength: number;
    compacted: boolean;
}
interface CreateSyncularConsoleDiagnosticsPublisherOptions extends SyncularConsoleDiagnosticsOptions {
    config: SyncularClientConfig;
    isClosed: () => boolean;
}
export declare function createSyncularConsoleDiagnosticsPublisher(client: ConsoleDiagnosticsClient, options: CreateSyncularConsoleDiagnosticsPublisherOptions): {
    schedule(): void;
    destroy(): void;
};
export declare function buildSyncularConsoleDiagnosticsPayload(args: {
    clientId: string;
    actorId?: string;
    partitionId?: string;
    lifecycle?: SyncularLifecycleState;
    snapshot: SyncularDiagnosticSnapshot;
    maxPayloadBytes?: number;
}): SyncularConsoleDiagnosticsPayloadResult;
export {};
//# sourceMappingURL=console-diagnostics.d.ts.map