/** * @license * Copyright 2025-2026 Open Home Foundation * SPDX-License-Identifier: Apache-2.0 */ import { Environment, StorageService } from "@matter/main"; interface ConfigData { fabricLabel: string; nextNodeId: number | bigint; wifiSsid?: string; wifiCredentials?: string; threadDataset?: string; } export declare class ConfigStorage { #private; static create(env: Environment): Promise; constructor(env: Environment); get service(): StorageService; open(): Promise; get fabricLabel(): string; get nextNodeId(): number | bigint; /** * Atomically allocate the next free node id and persist the advanced counter. * * The mutex serializes concurrent commissioning requests so they cannot read the same counter and collide. * `isInUse` lets a drifted counter skip ids already assigned on the fabric instead of colliding with them. */ allocateNodeId(isInUse: (nodeId: number | bigint) => boolean): Promise; get wifiSsid(): string | undefined; get wifiCredentials(): string | undefined; get threadDataset(): string | undefined; set(data: Partial): Promise; removeWifiCredentials(): Promise; removeThreadDataset(): Promise; close(): Promise; } export {}; //# sourceMappingURL=ConfigStorage.d.ts.map