/**
 * @license
 * Copyright 2022-2026 Matter.js Authors
 * SPDX-License-Identifier: Apache-2.0
 */
import type { ClientGroup } from "#node/ClientGroup.js";
import type { ClientNode } from "#node/ClientNode.js";
import { Construction, StorageContext } from "@matter/general";
import { ClientNodeStore } from "./ClientNodeStore.js";
/**
 * Manages {@link ClientNodeStore}s for a {@link Node}.
 */
export declare class ClientNodeStores {
    #private;
    get construction(): Construction<ClientNodeStores>;
    constructor(storage: StorageContext);
    [Construction.construct](): Promise<void>;
    /**
     * Allocate a stable local ID for a peer.
     *
     * The ID may be preassigned or we will assign using an incrementing sequential number.  The number is reserved for
     * the life of this process or, if data is persisted, until erased.
     */
    allocateId(): string;
    /**
     * Get the store for a single {@link ClientNode} or peer Id.
     *
     * These stores are cached internally by Id.
     */
    storeForNode(nodeOrId: ClientNode | string): ClientNodeStore;
    storeForGroup(node: ClientGroup): ClientNodeStore;
    /**
     * List all nodes present.
     */
    get knownIds(): string[];
    close(): Promise<void>;
}
//# sourceMappingURL=ClientNodeStores.d.ts.map