/** * @license * Copyright 2025-2026 Open Home Foundation * SPDX-License-Identifier: Apache-2.0 */ import { Bytes, Crypto, Environment, Timestamp } from "@matter/main"; import { VendorInfo, DclCertificateService, DclVendorInfoService } from "@matter/main/protocol"; import { Endpoint } from "@matter/node"; import { CameraControllerDevice } from "@matter/node/devices/camera-controller"; import { ConfigStorage } from "../server/ConfigStorage.js"; import { BorderRouterDiscovery } from "./BorderRouterDiscovery.js"; import { ControllerCommandHandler } from "./ControllerCommandHandler.js"; import { LegacyServerData } from "./LegacyDataInjector.js"; export declare function computeCompressedNodeId(crypto: Crypto, fabricId: number | bigint, caKey: Bytes): Promise; export interface MatterControllerOptions { enableTestNetDcl?: boolean; disableOtaProvider?: boolean; /** Disable bundled offline DCL seed data (PAA roots, CD signers, vendors). When true, only network DCL is used. */ disableDclSeed?: boolean; /** Server ID for storage. Default is "server", but may be "server--" for multi-fabric support */ serverId?: string; /** Server version string (e.g., "0.2.10" or "0.2.10-alpha.0"). Used for BasicInformation cluster. */ serverVersion?: string; /** BLE proxy mode: skip the `@matter/nodejs-ble` import; caller supplies the Ble implementation. */ bleProxyEnabled?: boolean; } export declare class MatterController { #private; static create(environment: Environment, config: ConfigStorage, options: MatterControllerOptions, legacyData?: LegacyServerData): Promise; constructor(environment: Environment, config: ConfigStorage, options: MatterControllerOptions, serverId: string); protected initialize(vendorId?: number, fabricId?: number | bigint, legacyCommissionedDates?: Map): Promise; get commandHandler(): ControllerCommandHandler; get borderRouters(): BorderRouterDiscovery; get webRtcRequestor(): Endpoint; /** * Get the DCL vendor info service instance. * Lazily initializes the service if not already present. */ vendorInfoService(): Promise; /** * Get the DCL certificate service instance * Lazily initializes the service if not already present. */ certificateService(): Promise; /** * Get the DCL OTA update service instance * Lazily initializes the service if not already present. */ otaUpdateService(): Promise; /** * Get vendor information by vendor ID. * Returns undefined if the vendor is not found. */ getVendorInfo(vendorId: number): Promise; /** * Get all vendor information from the DCL service. */ getAllVendors(): Promise>; injectCommissionedDates(): Promise; stop(): Promise; /** * Store an OTA image file from a file path. * @param filePath - Path to the OTA file * @returns true if stored successfully */ storeOtaImageFromFile(filePath: string): Promise; } //# sourceMappingURL=MatterController.d.ts.map