import type { IdasSubscriptionPayload } from './idas-resync.types';
/**
 * Wires the IDAS re-sync socket channel directly via `SubscriptionsClientFactory`
 * rather than `useSubscriptionsV2`. The hook is built for snapshot-backed
 * datasets; this channel is an RPC-style one-shot event. Specifically we need:
 *   1. No historical fetch — `fetchInitialSubscriptionsData` would either
 *      return nothing or, worse, a stale event from a prior run.
 *   2. Explicit single-shot unsubscribe at the terminal event, with no
 *      state-driven channel-array toggling races.
 *
 * We intentionally do NOT pass an ack callback. `SubscriptionsClientV2._emit`
 * mis-uses `socket.io-client`'s `emitWithAck` (passes the ack as a 3rd-arg
 * function, which socket.io@4 treats as event data, not as an ack handler).
 * The Promise it returns is discarded, so any ack callback we pass would
 * never fire and the resync would hang forever. Once the upstream `_emit`
 * is fixed we can revisit gating the POST on the ack.
 */
export declare const subscribeToIdasResync: (channel: string, onMessage: (payload: IdasSubscriptionPayload) => void) => (() => void);
//# sourceMappingURL=subscribeToIdasResync.d.ts.map