export declare class Lock { private _lockP; lock(): Promise<() => void>; withLock(f: () => R | Promise): Promise; } export declare class RWLock { private _lock; private _writeP; private _readP; read(): Promise<() => void>; withRead(f: () => R | Promise): Promise; write(): Promise<() => void>; withWrite(f: () => R | Promise): Promise; }