/**
 * @license
 * Copyright 2022-2026 Matter.js Authors
 * SPDX-License-Identifier: Apache-2.0
 */
import { Behavior } from "#behavior/Behavior.js";
import { Schema } from "@matter/model";
import type { ClusterBehavior } from "./ClusterBehavior.js";
/**
 * To save memory we cache behavior implementations specialized for specific clusters.  This allows for efficient
 * configuration of behaviors with conditional runtime logic.
 *
 * We use the schema as the cache key so this relies on similar caching for schemas.
 */
export declare namespace ClusterBehaviorCache {
    function get(base: Behavior.Type, schema: Schema, forClient?: boolean): ClusterBehavior.Type<Behavior.Type, import("@matter/types").ClusterTyping, import("@matter/types").ClusterType.Concrete, new () => {}, Uncapitalize<string>> | undefined;
    function set(base: Behavior.Type, schema: Schema, type: ClusterBehavior.Type): void;
}
//# sourceMappingURL=ClusterBehaviorCache.d.ts.map