import type Sync from "./sync"; /** * Lock * * @export * @class Lock * @typedef {Lock} */ export declare class Lock { private readonly sync; private readonly resource; private lockUUID; private lockRefreshInterval; private mutex; private acquiredCount; /** * Creates an instance of Lock. * * @constructor * @public * @param {{ sync: Sync; resource: string }} param0 * @param {Sync} param0.sync * @param {string} param0.resource */ constructor({ sync, resource }: { sync: Sync; resource: string; }); /** * Acquire the lock on . * * @public * @async * @returns {Promise} */ acquire(): Promise; /** * Release the acquired lock on . * * @public * @async * @returns {Promise} */ release(): Promise; } export default Lock;