import type { _MTRAttributeCacheContainer } from "./MTRAttributeCacheContainer.js";
import type { _MTRBaseDevice } from "./MTRBaseDevice.js";
import type { _MTRClusterStateCacheContainer } from "./MTRClusterStateCacheContainer.js";
import type { _MTRGenericBaseCluster } from "./MTRGenericBaseCluster.js";
import type { _MTRGroupsClusterAddGroupIfIdentifyingParams } from "./MTRGroupsClusterAddGroupIfIdentifyingParams.js";
import type { _MTRGroupsClusterAddGroupParams } from "./MTRGroupsClusterAddGroupParams.js";
import type { _MTRGroupsClusterAddGroupResponseParams } from "./MTRGroupsClusterAddGroupResponseParams.js";
import type { _MTRGroupsClusterGetGroupMembershipParams } from "./MTRGroupsClusterGetGroupMembershipParams.js";
import type { _MTRGroupsClusterGetGroupMembershipResponseParams } from "./MTRGroupsClusterGetGroupMembershipResponseParams.js";
import type { _MTRGroupsClusterRemoveAllGroupsParams } from "./MTRGroupsClusterRemoveAllGroupsParams.js";
import type { _MTRGroupsClusterRemoveGroupParams } from "./MTRGroupsClusterRemoveGroupParams.js";
import type { _MTRGroupsClusterRemoveGroupResponseParams } from "./MTRGroupsClusterRemoveGroupResponseParams.js";
import type { _MTRGroupsClusterViewGroupParams } from "./MTRGroupsClusterViewGroupParams.js";
import type { _MTRGroupsClusterViewGroupResponseParams } from "./MTRGroupsClusterViewGroupResponseParams.js";
import type { _MTRSubscribeParams } from "./MTRSubscribeParams.js";
import type { _NSArray } from "../Foundation/NSArray.js";
import type { _NSError } from "../Foundation/NSError.js";
import type { _NSNumber } from "../Foundation/NSNumber.js";
import type { _NSObject } from "../Foundation/NSObject.js";
export declare class _MTRBaseClusterGroups extends _MTRGenericBaseCluster {
    static alloc(): _MTRBaseClusterGroups;
    static new(): _MTRBaseClusterGroups;
    init(): _MTRBaseClusterGroups;
    static readAttributeNameSupportWithClusterStateCache$endpoint$queue$completion$(clusterStateCacheContainer: _MTRClusterStateCacheContainer, endpoint: _NSNumber, queue: _NSObject, completion: ((value: _NSNumber, error: _NSError) => void) | null): void;
    static readAttributeGeneratedCommandListWithClusterStateCache$endpoint$queue$completion$(clusterStateCacheContainer: _MTRClusterStateCacheContainer, endpoint: _NSNumber, queue: _NSObject, completion: ((value: _NSArray, error: _NSError) => void) | null): void;
    static readAttributeAcceptedCommandListWithClusterStateCache$endpoint$queue$completion$(clusterStateCacheContainer: _MTRClusterStateCacheContainer, endpoint: _NSNumber, queue: _NSObject, completion: ((value: _NSArray, error: _NSError) => void) | null): void;
    static readAttributeAttributeListWithClusterStateCache$endpoint$queue$completion$(clusterStateCacheContainer: _MTRClusterStateCacheContainer, endpoint: _NSNumber, queue: _NSObject, completion: ((value: _NSArray, error: _NSError) => void) | null): void;
    static readAttributeFeatureMapWithClusterStateCache$endpoint$queue$completion$(clusterStateCacheContainer: _MTRClusterStateCacheContainer, endpoint: _NSNumber, queue: _NSObject, completion: ((value: _NSNumber, error: _NSError) => void) | null): void;
    static readAttributeClusterRevisionWithClusterStateCache$endpoint$queue$completion$(clusterStateCacheContainer: _MTRClusterStateCacheContainer, endpoint: _NSNumber, queue: _NSObject, completion: ((value: _NSNumber, error: _NSError) => void) | null): void;
    static readAttributeNameSupportWithAttributeCache$endpoint$queue$completionHandler$(attributeCacheContainer: _MTRAttributeCacheContainer, endpoint: _NSNumber, queue: _NSObject, completionHandler: ((value: _NSNumber, error: _NSError) => void) | null): void;
    static readAttributeGeneratedCommandListWithAttributeCache$endpoint$queue$completionHandler$(attributeCacheContainer: _MTRAttributeCacheContainer, endpoint: _NSNumber, queue: _NSObject, completionHandler: ((value: _NSArray, error: _NSError) => void) | null): void;
    static readAttributeAcceptedCommandListWithAttributeCache$endpoint$queue$completionHandler$(attributeCacheContainer: _MTRAttributeCacheContainer, endpoint: _NSNumber, queue: _NSObject, completionHandler: ((value: _NSArray, error: _NSError) => void) | null): void;
    static readAttributeAttributeListWithAttributeCache$endpoint$queue$completionHandler$(attributeCacheContainer: _MTRAttributeCacheContainer, endpoint: _NSNumber, queue: _NSObject, completionHandler: ((value: _NSArray, error: _NSError) => void) | null): void;
    static readAttributeFeatureMapWithAttributeCache$endpoint$queue$completionHandler$(attributeCacheContainer: _MTRAttributeCacheContainer, endpoint: _NSNumber, queue: _NSObject, completionHandler: ((value: _NSNumber, error: _NSError) => void) | null): void;
    static readAttributeClusterRevisionWithAttributeCache$endpoint$queue$completionHandler$(attributeCacheContainer: _MTRAttributeCacheContainer, endpoint: _NSNumber, queue: _NSObject, completionHandler: ((value: _NSNumber, error: _NSError) => void) | null): void;
    /**
     * Command AddGroup The AddGroup command allows a client to add group membership in a particular group for the server endpoint.
     */
    addGroupWithParams$completion$(params: _MTRGroupsClusterAddGroupParams, completion: ((data: _MTRGroupsClusterAddGroupResponseParams, error: _NSError) => void) | null): void;
    /**
     * Command ViewGroup The ViewGroup command allows a client to request that the server responds with a ViewGroupResponse command containing the name string for a particular group.
     */
    viewGroupWithParams$completion$(params: _MTRGroupsClusterViewGroupParams, completion: ((data: _MTRGroupsClusterViewGroupResponseParams, error: _NSError) => void) | null): void;
    /**
     * Command GetGroupMembership The GetGroupMembership command allows a client to inquire about the group membership of the server endpoint, in a number of ways.
     */
    getGroupMembershipWithParams$completion$(params: _MTRGroupsClusterGetGroupMembershipParams, completion: ((data: _MTRGroupsClusterGetGroupMembershipResponseParams, error: _NSError) => void) | null): void;
    /**
     * Command RemoveGroup The RemoveGroup command allows a client to request that the server removes the membership for the server endpoint, if any, in a particular group.
     */
    removeGroupWithParams$completion$(params: _MTRGroupsClusterRemoveGroupParams, completion: ((data: _MTRGroupsClusterRemoveGroupResponseParams, error: _NSError) => void) | null): void;
    /**
     * Command RemoveAllGroups The RemoveAllGroups command allows a client to direct the server to remove all group associations for the server endpoint.
     */
    removeAllGroupsWithParams$completion$(params: _MTRGroupsClusterRemoveAllGroupsParams | null, completion: (arg0: _NSError) => void): void;
    removeAllGroupsWithCompletion$(completion: (arg0: _NSError) => void): void;
    /**
     * Command AddGroupIfIdentifying The AddGroupIfIdentifying command allows a client to add group membership in a particular group for the server endpoint, on condition that the endpoint is identifying itself.
     */
    addGroupIfIdentifyingWithParams$completion$(params: _MTRGroupsClusterAddGroupIfIdentifyingParams, completion: (arg0: _NSError) => void): void;
    readAttributeNameSupportWithCompletion$(completion: ((value: _NSNumber, error: _NSError) => void) | null): void;
    subscribeAttributeNameSupportWithParams$subscriptionEstablished$reportHandler$(params: _MTRSubscribeParams, subscriptionEstablished: (() => void) | null, reportHandler: ((value: _NSNumber, error: _NSError) => void) | null): void;
    readAttributeGeneratedCommandListWithCompletion$(completion: ((value: _NSArray, error: _NSError) => void) | null): void;
    subscribeAttributeGeneratedCommandListWithParams$subscriptionEstablished$reportHandler$(params: _MTRSubscribeParams, subscriptionEstablished: (() => void) | null, reportHandler: ((value: _NSArray, error: _NSError) => void) | null): void;
    readAttributeAcceptedCommandListWithCompletion$(completion: ((value: _NSArray, error: _NSError) => void) | null): void;
    subscribeAttributeAcceptedCommandListWithParams$subscriptionEstablished$reportHandler$(params: _MTRSubscribeParams, subscriptionEstablished: (() => void) | null, reportHandler: ((value: _NSArray, error: _NSError) => void) | null): void;
    readAttributeAttributeListWithCompletion$(completion: ((value: _NSArray, error: _NSError) => void) | null): void;
    subscribeAttributeAttributeListWithParams$subscriptionEstablished$reportHandler$(params: _MTRSubscribeParams, subscriptionEstablished: (() => void) | null, reportHandler: ((value: _NSArray, error: _NSError) => void) | null): void;
    readAttributeFeatureMapWithCompletion$(completion: ((value: _NSNumber, error: _NSError) => void) | null): void;
    subscribeAttributeFeatureMapWithParams$subscriptionEstablished$reportHandler$(params: _MTRSubscribeParams, subscriptionEstablished: (() => void) | null, reportHandler: ((value: _NSNumber, error: _NSError) => void) | null): void;
    readAttributeClusterRevisionWithCompletion$(completion: ((value: _NSNumber, error: _NSError) => void) | null): void;
    subscribeAttributeClusterRevisionWithParams$subscriptionEstablished$reportHandler$(params: _MTRSubscribeParams, subscriptionEstablished: (() => void) | null, reportHandler: ((value: _NSNumber, error: _NSError) => void) | null): void;
    /**
     * For all instance methods (reads, writes, commands) that take a completion, the completion will be called on the provided queue.
     */
    initWithDevice$endpointID$queue$(device: _MTRBaseDevice, endpointID: _NSNumber, queue: _NSObject): _MTRBaseClusterGroups | null;
    initWithDevice$endpoint$queue$(device: _MTRBaseDevice, endpoint: number, queue: _NSObject): _MTRBaseClusterGroups | null;
    addGroupWithParams$completionHandler$(params: _MTRGroupsClusterAddGroupParams, completionHandler: ((data: _MTRGroupsClusterAddGroupResponseParams, error: _NSError) => void) | null): void;
    viewGroupWithParams$completionHandler$(params: _MTRGroupsClusterViewGroupParams, completionHandler: ((data: _MTRGroupsClusterViewGroupResponseParams, error: _NSError) => void) | null): void;
    getGroupMembershipWithParams$completionHandler$(params: _MTRGroupsClusterGetGroupMembershipParams, completionHandler: ((data: _MTRGroupsClusterGetGroupMembershipResponseParams, error: _NSError) => void) | null): void;
    removeGroupWithParams$completionHandler$(params: _MTRGroupsClusterRemoveGroupParams, completionHandler: ((data: _MTRGroupsClusterRemoveGroupResponseParams, error: _NSError) => void) | null): void;
    removeAllGroupsWithParams$completionHandler$(params: _MTRGroupsClusterRemoveAllGroupsParams | null, completionHandler: (arg0: _NSError) => void): void;
    removeAllGroupsWithCompletionHandler$(completionHandler: (arg0: _NSError) => void): void;
    addGroupIfIdentifyingWithParams$completionHandler$(params: _MTRGroupsClusterAddGroupIfIdentifyingParams, completionHandler: (arg0: _NSError) => void): void;
    readAttributeNameSupportWithCompletionHandler$(completionHandler: ((value: _NSNumber, error: _NSError) => void) | null): void;
    subscribeAttributeNameSupportWithMinInterval$maxInterval$params$subscriptionEstablished$reportHandler$(minInterval: _NSNumber, maxInterval: _NSNumber, params: _MTRSubscribeParams | null, subscriptionEstablishedHandler: (() => void) | null, reportHandler: ((value: _NSNumber, error: _NSError) => void) | null): void;
    readAttributeGeneratedCommandListWithCompletionHandler$(completionHandler: ((value: _NSArray, error: _NSError) => void) | null): void;
    subscribeAttributeGeneratedCommandListWithMinInterval$maxInterval$params$subscriptionEstablished$reportHandler$(minInterval: _NSNumber, maxInterval: _NSNumber, params: _MTRSubscribeParams | null, subscriptionEstablishedHandler: (() => void) | null, reportHandler: ((value: _NSArray, error: _NSError) => void) | null): void;
    readAttributeAcceptedCommandListWithCompletionHandler$(completionHandler: ((value: _NSArray, error: _NSError) => void) | null): void;
    subscribeAttributeAcceptedCommandListWithMinInterval$maxInterval$params$subscriptionEstablished$reportHandler$(minInterval: _NSNumber, maxInterval: _NSNumber, params: _MTRSubscribeParams | null, subscriptionEstablishedHandler: (() => void) | null, reportHandler: ((value: _NSArray, error: _NSError) => void) | null): void;
    readAttributeAttributeListWithCompletionHandler$(completionHandler: ((value: _NSArray, error: _NSError) => void) | null): void;
    subscribeAttributeAttributeListWithMinInterval$maxInterval$params$subscriptionEstablished$reportHandler$(minInterval: _NSNumber, maxInterval: _NSNumber, params: _MTRSubscribeParams | null, subscriptionEstablishedHandler: (() => void) | null, reportHandler: ((value: _NSArray, error: _NSError) => void) | null): void;
    readAttributeFeatureMapWithCompletionHandler$(completionHandler: ((value: _NSNumber, error: _NSError) => void) | null): void;
    subscribeAttributeFeatureMapWithMinInterval$maxInterval$params$subscriptionEstablished$reportHandler$(minInterval: _NSNumber, maxInterval: _NSNumber, params: _MTRSubscribeParams | null, subscriptionEstablishedHandler: (() => void) | null, reportHandler: ((value: _NSNumber, error: _NSError) => void) | null): void;
    readAttributeClusterRevisionWithCompletionHandler$(completionHandler: ((value: _NSNumber, error: _NSError) => void) | null): void;
    subscribeAttributeClusterRevisionWithMinInterval$maxInterval$params$subscriptionEstablished$reportHandler$(minInterval: _NSNumber, maxInterval: _NSNumber, params: _MTRSubscribeParams | null, subscriptionEstablishedHandler: (() => void) | null, reportHandler: ((value: _NSNumber, error: _NSError) => void) | null): void;
}
