import type { _MTRBaseDevice } from "./MTRBaseDevice.js";
import type { _MTRClusterStateCacheContainer } from "./MTRClusterStateCacheContainer.js";
import type { _MTRDeviceEnergyManagementClusterCancelPowerAdjustRequestParams } from "./MTRDeviceEnergyManagementClusterCancelPowerAdjustRequestParams.js";
import type { _MTRDeviceEnergyManagementClusterCancelRequestParams } from "./MTRDeviceEnergyManagementClusterCancelRequestParams.js";
import type { _MTRDeviceEnergyManagementClusterForecastStruct } from "./MTRDeviceEnergyManagementClusterForecastStruct.js";
import type { _MTRDeviceEnergyManagementClusterModifyForecastRequestParams } from "./MTRDeviceEnergyManagementClusterModifyForecastRequestParams.js";
import type { _MTRDeviceEnergyManagementClusterPauseRequestParams } from "./MTRDeviceEnergyManagementClusterPauseRequestParams.js";
import type { _MTRDeviceEnergyManagementClusterPowerAdjustCapabilityStruct } from "./MTRDeviceEnergyManagementClusterPowerAdjustCapabilityStruct.js";
import type { _MTRDeviceEnergyManagementClusterPowerAdjustRequestParams } from "./MTRDeviceEnergyManagementClusterPowerAdjustRequestParams.js";
import type { _MTRDeviceEnergyManagementClusterRequestConstraintBasedForecastParams } from "./MTRDeviceEnergyManagementClusterRequestConstraintBasedForecastParams.js";
import type { _MTRDeviceEnergyManagementClusterResumeRequestParams } from "./MTRDeviceEnergyManagementClusterResumeRequestParams.js";
import type { _MTRDeviceEnergyManagementClusterStartTimeAdjustRequestParams } from "./MTRDeviceEnergyManagementClusterStartTimeAdjustRequestParams.js";
import type { _MTRGenericBaseCluster } from "./MTRGenericBaseCluster.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 _MTRBaseClusterDeviceEnergyManagement extends _MTRGenericBaseCluster {
    static alloc(): _MTRBaseClusterDeviceEnergyManagement;
    static new(): _MTRBaseClusterDeviceEnergyManagement;
    init(): _MTRBaseClusterDeviceEnergyManagement;
    static readAttributeESATypeWithClusterStateCache$endpoint$queue$completion$(clusterStateCacheContainer: _MTRClusterStateCacheContainer, endpoint: _NSNumber, queue: _NSObject, completion: ((value: _NSNumber, error: _NSError) => void) | null): void;
    static readAttributeESACanGenerateWithClusterStateCache$endpoint$queue$completion$(clusterStateCacheContainer: _MTRClusterStateCacheContainer, endpoint: _NSNumber, queue: _NSObject, completion: ((value: _NSNumber, error: _NSError) => void) | null): void;
    static readAttributeESAStateWithClusterStateCache$endpoint$queue$completion$(clusterStateCacheContainer: _MTRClusterStateCacheContainer, endpoint: _NSNumber, queue: _NSObject, completion: ((value: _NSNumber, error: _NSError) => void) | null): void;
    static readAttributeAbsMinPowerWithClusterStateCache$endpoint$queue$completion$(clusterStateCacheContainer: _MTRClusterStateCacheContainer, endpoint: _NSNumber, queue: _NSObject, completion: ((value: _NSNumber, error: _NSError) => void) | null): void;
    static readAttributeAbsMaxPowerWithClusterStateCache$endpoint$queue$completion$(clusterStateCacheContainer: _MTRClusterStateCacheContainer, endpoint: _NSNumber, queue: _NSObject, completion: ((value: _NSNumber, error: _NSError) => void) | null): void;
    static readAttributePowerAdjustmentCapabilityWithClusterStateCache$endpoint$queue$completion$(clusterStateCacheContainer: _MTRClusterStateCacheContainer, endpoint: _NSNumber, queue: _NSObject, completion: ((value: _MTRDeviceEnergyManagementClusterPowerAdjustCapabilityStruct, error: _NSError) => void) | null): void;
    static readAttributeForecastWithClusterStateCache$endpoint$queue$completion$(clusterStateCacheContainer: _MTRClusterStateCacheContainer, endpoint: _NSNumber, queue: _NSObject, completion: ((value: _MTRDeviceEnergyManagementClusterForecastStruct, error: _NSError) => void) | null): void;
    static readAttributeOptOutStateWithClusterStateCache$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;
    /**
     * Command PowerAdjustRequest Allows a client to request an adjustment in the power consumption of an ESA for a specified duration.
     */
    powerAdjustRequestWithParams$completion$(params: _MTRDeviceEnergyManagementClusterPowerAdjustRequestParams, completion: (arg0: _NSError) => void): void;
    /**
     * Command CancelPowerAdjustRequest Allows a client to cancel an ongoing PowerAdjustmentRequest operation.
     */
    cancelPowerAdjustRequestWithParams$completion$(params: _MTRDeviceEnergyManagementClusterCancelPowerAdjustRequestParams | null, completion: (arg0: _NSError) => void): void;
    cancelPowerAdjustRequestWithCompletion$(completion: (arg0: _NSError) => void): void;
    /**
     * Command StartTimeAdjustRequest Allows a client to adjust the start time of a Forecast sequence that has not yet started operation (i.e. where the current Forecast StartTime is in the future).
     */
    startTimeAdjustRequestWithParams$completion$(params: _MTRDeviceEnergyManagementClusterStartTimeAdjustRequestParams, completion: (arg0: _NSError) => void): void;
    /**
     * Command PauseRequest Allows a client to temporarily pause an operation and reduce the ESAs energy demand.
     */
    pauseRequestWithParams$completion$(params: _MTRDeviceEnergyManagementClusterPauseRequestParams, completion: (arg0: _NSError) => void): void;
    /**
     * Command ResumeRequest Allows a client to cancel the PauseRequest command and enable earlier resumption of operation.
     */
    resumeRequestWithParams$completion$(params: _MTRDeviceEnergyManagementClusterResumeRequestParams | null, completion: (arg0: _NSError) => void): void;
    resumeRequestWithCompletion$(completion: (arg0: _NSError) => void): void;
    /**
     * Command ModifyForecastRequest Allows a client to modify a Forecast within the limits allowed by the ESA.
     */
    modifyForecastRequestWithParams$completion$(params: _MTRDeviceEnergyManagementClusterModifyForecastRequestParams, completion: (arg0: _NSError) => void): void;
    /**
     * Command RequestConstraintBasedForecast Allows a client to ask the ESA to recompute its Forecast based on power and time constraints.
     */
    requestConstraintBasedForecastWithParams$completion$(params: _MTRDeviceEnergyManagementClusterRequestConstraintBasedForecastParams, completion: (arg0: _NSError) => void): void;
    /**
     * Command CancelRequest Allows a client to request cancellation of a previous adjustment request in a StartTimeAdjustRequest, ModifyForecastRequest or RequestConstraintBasedForecast command.
     */
    cancelRequestWithParams$completion$(params: _MTRDeviceEnergyManagementClusterCancelRequestParams | null, completion: (arg0: _NSError) => void): void;
    cancelRequestWithCompletion$(completion: (arg0: _NSError) => void): void;
    readAttributeESATypeWithCompletion$(completion: ((value: _NSNumber, error: _NSError) => void) | null): void;
    subscribeAttributeESATypeWithParams$subscriptionEstablished$reportHandler$(params: _MTRSubscribeParams, subscriptionEstablished: (() => void) | null, reportHandler: ((value: _NSNumber, error: _NSError) => void) | null): void;
    readAttributeESACanGenerateWithCompletion$(completion: ((value: _NSNumber, error: _NSError) => void) | null): void;
    subscribeAttributeESACanGenerateWithParams$subscriptionEstablished$reportHandler$(params: _MTRSubscribeParams, subscriptionEstablished: (() => void) | null, reportHandler: ((value: _NSNumber, error: _NSError) => void) | null): void;
    readAttributeESAStateWithCompletion$(completion: ((value: _NSNumber, error: _NSError) => void) | null): void;
    subscribeAttributeESAStateWithParams$subscriptionEstablished$reportHandler$(params: _MTRSubscribeParams, subscriptionEstablished: (() => void) | null, reportHandler: ((value: _NSNumber, error: _NSError) => void) | null): void;
    readAttributeAbsMinPowerWithCompletion$(completion: ((value: _NSNumber, error: _NSError) => void) | null): void;
    subscribeAttributeAbsMinPowerWithParams$subscriptionEstablished$reportHandler$(params: _MTRSubscribeParams, subscriptionEstablished: (() => void) | null, reportHandler: ((value: _NSNumber, error: _NSError) => void) | null): void;
    readAttributeAbsMaxPowerWithCompletion$(completion: ((value: _NSNumber, error: _NSError) => void) | null): void;
    subscribeAttributeAbsMaxPowerWithParams$subscriptionEstablished$reportHandler$(params: _MTRSubscribeParams, subscriptionEstablished: (() => void) | null, reportHandler: ((value: _NSNumber, error: _NSError) => void) | null): void;
    readAttributePowerAdjustmentCapabilityWithCompletion$(completion: ((value: _MTRDeviceEnergyManagementClusterPowerAdjustCapabilityStruct, error: _NSError) => void) | null): void;
    subscribeAttributePowerAdjustmentCapabilityWithParams$subscriptionEstablished$reportHandler$(params: _MTRSubscribeParams, subscriptionEstablished: (() => void) | null, reportHandler: ((value: _MTRDeviceEnergyManagementClusterPowerAdjustCapabilityStruct, error: _NSError) => void) | null): void;
    readAttributeForecastWithCompletion$(completion: ((value: _MTRDeviceEnergyManagementClusterForecastStruct, error: _NSError) => void) | null): void;
    subscribeAttributeForecastWithParams$subscriptionEstablished$reportHandler$(params: _MTRSubscribeParams, subscriptionEstablished: (() => void) | null, reportHandler: ((value: _MTRDeviceEnergyManagementClusterForecastStruct, error: _NSError) => void) | null): void;
    readAttributeOptOutStateWithCompletion$(completion: ((value: _NSNumber, error: _NSError) => void) | null): void;
    subscribeAttributeOptOutStateWithParams$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): _MTRBaseClusterDeviceEnergyManagement | null;
}
