/**
 * @license
 * Copyright 2022-2026 Matter.js Authors
 * SPDX-License-Ident[ifier: Apache-2.0
 */
import { EventEmitter } from "@matter/general";
import type { BehaviorBacking } from "./BehaviorBacking.js";
/**
 * Generates a BehaviorBacking.events implementation.
 *
 * The actual {@link EventEmitter} for the behavior is owned by the Endpoint.  For the behavior backing we create a
 * separate EventEmitter that proxies to the one owned by the Endpoint.
 *
 * We do this because while the API for behavior.events vs endpoint.events.behaviorId is identical, the lifecycle of
 * observers is different.  Observers registered on the behavior deregister whenever the backing closes, but observers
 * registered on the endpoint remain registered for the lifetime of the {@link Endpoint}.
 */
export declare function BackingEvents(backing: BehaviorBacking): EventEmitter;
//# sourceMappingURL=BackingEvents.d.ts.map