/**
 * @license
 * Copyright 2022-2026 Matter.js Authors
 * SPDX-License-Identifier: Apache-2.0
 */
import { Groups } from "@matter/types/clusters/groups";
declare const GroupsBase: import("../../index.js").ClusterBehavior.Type<import("../../index.js").ClusterBehavior.Type<import("./GroupsBehavior.js").GroupsBehaviorConstructor, Groups, typeof Groups, new () => {}, "groups"> & {
    readonly id: "groups";
}, import("@matter/types").ClusterType.WithSupportedFeatures<Groups, {
    groupNames: true;
}>, import("@matter/types").ClusterType.Concrete, new () => {}, "groups">;
/**
 * This is the default server implementation of {@link GroupsBehavior}.
 */
export declare class GroupsServer extends GroupsBase {
    #private;
    initialize(): void;
    addGroup({ groupId, groupName }: Groups.AddGroupRequest): Promise<Groups.AddGroupResponse>;
    viewGroup({ groupId }: Groups.ViewGroupRequest): Groups.ViewGroupResponse;
    getGroupMembership({ groupList }: Groups.GetGroupMembershipRequest): Promise<Groups.GetGroupMembershipResponse>;
    removeGroup({ groupId }: Groups.RemoveGroupRequest): Promise<Groups.RemoveGroupResponse>;
    removeAllGroups(): Promise<void>;
    addGroupIfIdentifying({ groupId, groupName }: Groups.AddGroupIfIdentifyingRequest): Promise<void>;
}
export {};
//# sourceMappingURL=GroupsServer.d.ts.map