/** * routes/rewind-conversation-hosts.ts, the surface-facing half of * conversation-scope rewind. * * `rewind.plan` and `rewind.apply` (routes/rewind.ts) are the CALLER's side: * anyone with the scopes can ask for a rewind of any session. These five verbs * are the other side, and only one kind of caller uses them, the surface that * is actually running a session's conversation. It offers that conversation, * takes the questions the daemon puts to it, and answers them. * * Why a surface has to be involved at all: the workspace checkpoint store is * the daemon's, so files rewind works from anywhere, but the messages live in * whichever process runs the loop. Once the surfaces became pure clients that * process is not the daemon, and the daemon's in-process conversation registry *, which nothing outside the daemon could populate, answered "0 messages to * drop" for every one of them. The mechanics of the offer, the lease and the * bounded wait are in platform/rewind/conversation-host-broker.ts; this module * is the wire shape and the honest refusals. */ import type { GatewayMethodCatalog } from '../method-catalog.js'; import type { GatewayMethodHandler } from '../method-catalog-shared.js'; import { ConversationRewindHostBroker, type ConversationRewindHostBrokerOptions } from '../../rewind/conversation-host-broker.js'; /** Build the broker the verbs and the rewind service share. */ export declare function createConversationRewindHostBroker(options?: ConversationRewindHostBrokerOptions): ConversationRewindHostBroker; export declare function createConversationHostRegisterHandler(broker: ConversationRewindHostBroker): GatewayMethodHandler; export declare function createConversationHostReleaseHandler(broker: ConversationRewindHostBroker): GatewayMethodHandler; export declare function createConversationHostsListHandler(broker: ConversationRewindHostBroker): GatewayMethodHandler; export declare function createConversationRequestsTakeHandler(broker: ConversationRewindHostBroker): GatewayMethodHandler; export declare function createConversationRequestsAnswerHandler(broker: ConversationRewindHostBroker): GatewayMethodHandler; /** Attach the conversation-host handlers to their descriptors (missing = no-op). */ export declare function registerRewindConversationHostGatewayMethods(catalog: GatewayMethodCatalog, broker: ConversationRewindHostBroker): void; //# sourceMappingURL=rewind-conversation-hosts.d.ts.map