import { LockOptions, SubscribedStream } from '@powersync/shared-internals'; import { WebStreamingSyncImplementation, WebStreamingSyncImplementationOptions } from './WebStreamingSyncImplementation.js'; /** * When multi-tab support is disabled and we don't use a shared worker for sync, only a single tab will be able to * acquire the sync navigator lock and start a sync iteration. * * To be able to provide _some_ multi-tab support in that configuration, this utility: * * 1. Sends sync status updates from the syncing tab to others. * 2. Allows other tabs to send notifications when their active sync stream subscriptions update, allowing the active * tab to take those subscriptions into account. */ export declare class TabLocalStreamingSyncImplementation extends WebStreamingSyncImplementation { #private; constructor(options: WebStreamingSyncImplementationOptions); updateSubscriptions(subscriptions: SubscribedStream[]): void; obtainLock({ callback, type, signal }: LockOptions): Promise; dispose(): Promise; }