/** * @license * Copyright 2022-2026 Matter.js Authors * SPDX-License-Identifier: Apache-2.0 */ import { ClusterBehavior } from "#behavior/cluster/ClusterBehavior.js"; import { Endpoint } from "#endpoint/Endpoint.js"; import { EndpointType } from "#endpoint/type/EndpointType.js"; import type { Node } from "#node/Node.js"; import { Environment, Environmental, Observable } from "@matter/general"; /** * An environmental service that manages events endpoint and behavior types. */ export declare class ClientStructureEvents { #private; static [Environmental.create](env: Environment): ClientStructureEvents; endpointInstalled(type: T): Observable<[endpoint: Endpoint]>; clusterInstalled(type: T): Observable<[endpoint: Endpoint, type: T]>; get clusterReplaced(): Observable; get clusterDeleted(): Observable; /** * Emits after a node's structure has applied a batch of data (an interaction, wire changes or its cache), once every * endpoint and cluster event of that batch has been emitted. */ get structureApplied(): Observable<[node: Node]>; emitEndpoint(endpoint: Endpoint): void; emitCluster(endpoint: Endpoint, type: ClusterBehavior.Type): void; emitClusterReplaced(endpoint: Endpoint, type: ClusterBehavior.Type): void; emitClusterDeleted(endpoint: Endpoint, type: ClusterBehavior.Type): void; emitStructureApplied(node: Node): void; } //# sourceMappingURL=ClientStructureEvents.d.ts.map