/** * @license * Copyright 2022-2026 Matter.js Authors * SPDX-License-Identifier: Apache-2.0 */ import { Resource } from "./Resource.js"; import type { Transaction } from "./Transaction.js"; /** * An internal set of resources supporting bulk operations for {@link Transaction}. */ export declare class ResourceSet { #private; constructor(transaction: Transaction, resources?: Iterable); /** * Wait until the resources have no exclusive transactions and then lock. */ acquireLocks(): Promise>; /** * Acquire locks synchronously. * * Throws an error if resources aren't lockable. */ acquireLocksSync(): Set; /** * Release locks. */ releaseLocks(): Set; /** * Ensure that a transaction that is committing or rolling back has all resources locked. * * This is just a sanity check. */ assertResourcesAreLocked(transaction: Transaction, why: string): void; [Symbol.iterator](): SetIterator; } //# sourceMappingURL=ResourceSet.d.ts.map