/** * @license * Copyright 2022-2026 Matter.js Authors * SPDX-License-Identifier: Apache-2.0 */ import { Diagnostic, ImmutableSet, MutableSet, ObservableSet } from "@matter/general"; import { Endpoint } from "../Endpoint.js"; /** * Manages parent-child relationships between endpoints. */ export declare class EndpointContainer implements ImmutableSet, MutableSet, ObservableSet { #private; [Diagnostic.value]: Diagnostic; constructor(endpoint: Endpoint); get(id: string | number): T | undefined; add(endpoint: T): void; delete(endpoint: T): boolean; clear(): void; /** * Remove an endpoint from the container when it is destroyed or moves to another owner. * * @internal */ remove(endpoint: T): boolean; has(endpoint: T): boolean; get added(): import("@matter/general").Observable<[T], void>; get deleted(): import("@matter/general").Observable<[T], void>; get empty(): import("@matter/general").ObservableValue<[boolean], void>; get size(): number; map(fn: (part: T) => T2): T2[]; filter(predicate: (part: T) => boolean): T[]; find(predicate: (part: T) => boolean): T | undefined; forEach(fn: (part: T) => boolean): void; [Symbol.iterator](): SetIterator; /** * Soft-reset all parts. Invoked automatically by the owner on reset. */ reset(): Promise; /** * Destroy all parts. Invoked automatically by the owner on destroy. */ close(): Promise; /** * Confirm the availability of an ID amongst the endpoint's children. */ assertIdAvailable(id: string, endpoint: Endpoint): void; protected get owner(): Endpoint; } //# sourceMappingURL=EndpointContainer.d.ts.map