import { AbstractStreamingSyncImplementation, AbstractStreamingSyncImplementationOptions, LockOptions, LockType } from '@powersync/common';
import { Mutex } from 'async-mutex';
export declare class NodeStreamingSyncImplementation extends AbstractStreamingSyncImplementation {
    locks: Map<LockType, Mutex>;
    constructor(options: AbstractStreamingSyncImplementationOptions);
    /**
     *  Configures global locks on sync process
     */
    initLocks(): void;
    obtainLock<T>(lockOptions: LockOptions<T>): Promise<T>;
}
