import * as plugins from './plugins.js'; /** This build's offer for the one session kind the api client opens. */ export declare const cloudlyClientProtocolOffer: plugins.servezoneInterfaces.protocol.IProtocolOffer; /** * Two peers that cannot serve one session, named rather than collapsed into a transport failure. * * A refusal stands until an operator upgrades one of the two sides, so it is never retried: the * caller is rejected with it, and a refusal met while a reconnect restores its session — where no * caller waits and the transport publishes it only as the cause of its own denied restoration — * ends that socket lifecycle and is retained on the client instead of being offered again. */ export declare class CloudlyProtocolIncompatibleError extends Error { readonly refusal: plugins.servezoneInterfaces.protocol.IProtocolRefusal; constructor(refusalArg: plugins.servezoneInterfaces.protocol.IProtocolRefusal, optionsArg?: ErrorOptions); } /** * Rethrow a refused offer as this client's named error; every other failure passes untouched. * * The transport error stays attached as the cause, so the correlation a caller needs to find the * hop in a log is not lost behind the refusal. */ export declare const rethrowProtocolRefusal: (errorArg: unknown) => never; /** * The controller's own offer, judged from this client's side. * * Acceptance is the controller's decision about this client; whether this client can serve the * session it was just given is this check, and a client that cannot must not use it. */ export declare const requireCompatibleProtocol: (peerOfferArg: plugins.servezoneInterfaces.protocol.IProtocolOffer) => void;