/**
 * @license
 * Copyright 2022-2026 Matter.js Authors
 * SPDX-License-Identifier: Apache-2.0
 */
import { ClusterId, EndpointNumber, GroupId, NodeId } from "@matter/types";
export declare namespace BasePath {
    /**
     * Cluster name or ID.
     */
    type Address = ClusterId | string;
    /**
     * Addresses clusters on a single node with optional endpoint and
     * cluster wildcards.
     *
     * @see {@link MatterSpecification.v11.Core} § 8.9.1.1
     */
    type Read = {
        node: NodeId;
        endpoint?: EndpointNumber;
        cluster?: Address;
    };
    /**
     * Addresses clusters in a group of nodes.
     *
     * @see {@link MatterSpecification.v11.Core} § 8.9.1.1
     */
    type GroupWrite = {
        group: GroupId;
        cluster: Address;
    };
    /**
     * Addresses clusters on a single node with endpoint wildcards.
     *
     * @see {@link MatterSpecification.v11.Core} § 8.9.1.1
     */
    type NodeWrite = {
        node: NodeId;
        endpoint?: EndpointNumber;
        cluster: Address;
    };
    /**
     * Addresses a specific cluster.
     */
    type Concrete = {
        node: NodeId;
        endpoint: EndpointNumber;
        cluster: Address;
    };
    /**
     * Addresses clusters on a node or group of nodes.
     *
     * @see {@link MatterSpecification.v11.Core} § 8.9.1.1
     */
    type Write = GroupWrite | NodeWrite;
}
//# sourceMappingURL=BasePath.d.ts.map