import { Identity } from 'matterbridge/matter';
import { OptionalAttribute, WritableAttribute, BitFlag, Attribute, OptionalWritableAttribute, MutableCluster } from 'matterbridge/matter/types';
export declare namespace EveHistory {
    const enum WeatherTrend {
        BLANK = 0,
        SUN = 1,
        CLOUDS_SUN = 3,
        RAIN = 5,
        RAIN_WIND = 12
    }
    const enum Sensitivity {
        HIGH = 0,
        MEDIUM = 4,
        LOW = 7
    }
    const enum TemperatureDisplayUnits {
        CELSIUS = 0,
        FAHRENHEIT = 1
    }
    enum Feature {
        EveDoor = "EveDoor",
        EveMotion = "EveMotion",
        EveEnergy = "EveEnergy",
        EveWeather = "EveWeather",
        EveRoom = "EveRoom"
    }
    const EveDoorComponent: {
        readonly attributes: {
            readonly configDataGet: Attribute<AllowSharedBufferSource, any>;
            readonly configDataSet: WritableAttribute<AllowSharedBufferSource, any>;
            readonly historyStatus: Attribute<AllowSharedBufferSource, any>;
            readonly historyEntries: Attribute<AllowSharedBufferSource, any>;
            readonly historyRequest: WritableAttribute<AllowSharedBufferSource, any>;
            readonly historySetTime: WritableAttribute<AllowSharedBufferSource, any>;
            readonly lastEvent: OptionalAttribute<number, any>;
            readonly timesOpened: OptionalAttribute<number, any>;
            readonly resetTotal: OptionalWritableAttribute<number, any>;
            readonly rLoc: Attribute<number, any>;
        };
    };
    const EveMotionComponent: {
        readonly attributes: {
            readonly configDataGet: Attribute<AllowSharedBufferSource, any>;
            readonly configDataSet: WritableAttribute<AllowSharedBufferSource, any>;
            readonly historyStatus: Attribute<AllowSharedBufferSource, any>;
            readonly historyEntries: Attribute<AllowSharedBufferSource, any>;
            readonly historyRequest: WritableAttribute<AllowSharedBufferSource, any>;
            readonly historySetTime: WritableAttribute<AllowSharedBufferSource, any>;
            readonly lastEvent: OptionalAttribute<number, any>;
            readonly motionSensitivity: OptionalWritableAttribute<number, any>;
            readonly rLoc: Attribute<number, any>;
        };
    };
    const EveEnergyComponent: {
        readonly attributes: {
            readonly configDataGet: Attribute<AllowSharedBufferSource, any>;
            readonly configDataSet: WritableAttribute<AllowSharedBufferSource, any>;
            readonly historyStatus: Attribute<AllowSharedBufferSource, any>;
            readonly historyEntries: Attribute<AllowSharedBufferSource, any>;
            readonly historyRequest: WritableAttribute<AllowSharedBufferSource, any>;
            readonly historySetTime: WritableAttribute<AllowSharedBufferSource, any>;
            readonly lastEvent: OptionalAttribute<number, any>;
            readonly resetTotal: OptionalWritableAttribute<number, any>;
            readonly voltage: OptionalAttribute<number, any>;
            readonly current: OptionalAttribute<number, any>;
            readonly consumption: OptionalAttribute<number, any>;
            readonly totalConsumption: OptionalAttribute<number, any>;
            readonly energyUnknown: OptionalAttribute<number, any>;
            readonly childLock: OptionalWritableAttribute<boolean, any>;
            readonly rLoc: Attribute<number, any>;
        };
    };
    const EveWeatherComponent: {
        readonly attributes: {
            readonly configDataGet: Attribute<AllowSharedBufferSource, any>;
            readonly configDataSet: WritableAttribute<AllowSharedBufferSource, any>;
            readonly historyStatus: Attribute<AllowSharedBufferSource, any>;
            readonly historyEntries: Attribute<AllowSharedBufferSource, any>;
            readonly historyRequest: WritableAttribute<AllowSharedBufferSource, any>;
            readonly historySetTime: WritableAttribute<AllowSharedBufferSource, any>;
            readonly rLoc: Attribute<number, any>;
            readonly elevation: OptionalWritableAttribute<number, any>;
            readonly airPressure: OptionalAttribute<number, any>;
            readonly weatherTrend: OptionalAttribute<number, any>;
            readonly temperatureDisplayUnits: OptionalWritableAttribute<number, any>;
        };
    };
    const EveRoomComponent: {
        readonly attributes: {
            readonly configDataGet: Attribute<AllowSharedBufferSource, any>;
            readonly configDataSet: WritableAttribute<AllowSharedBufferSource, any>;
            readonly historyStatus: Attribute<AllowSharedBufferSource, any>;
            readonly historyEntries: Attribute<AllowSharedBufferSource, any>;
            readonly historyRequest: WritableAttribute<AllowSharedBufferSource, any>;
            readonly historySetTime: WritableAttribute<AllowSharedBufferSource, any>;
            readonly rLoc: Attribute<number, any>;
            readonly temperatureDisplayUnits: OptionalWritableAttribute<number, any>;
        };
    };
    const Base: {
        readonly id: 319486977;
        readonly name: "EveHistory";
        readonly revision: 1;
        readonly features: {
            readonly eveDoor: BitFlag;
            readonly eveMotion: BitFlag;
            readonly eveEnergy: BitFlag;
            readonly eveWeather: BitFlag;
            readonly eveRoom: BitFlag;
        };
        readonly attributes: {
            readonly configDataGet: Attribute<AllowSharedBufferSource, any>;
            readonly configDataSet: WritableAttribute<AllowSharedBufferSource, any>;
            readonly historyStatus: Attribute<AllowSharedBufferSource, any>;
            readonly historyEntries: Attribute<AllowSharedBufferSource, any>;
            readonly historyRequest: WritableAttribute<AllowSharedBufferSource, any>;
            readonly historySetTime: WritableAttribute<AllowSharedBufferSource, any>;
            readonly timesOpened: OptionalAttribute<number, any>;
            readonly lastEvent: OptionalAttribute<number, any>;
            readonly resetTotal: OptionalWritableAttribute<number, any>;
            readonly voltage: OptionalAttribute<number, any>;
            readonly current: OptionalAttribute<number, any>;
            readonly consumption: OptionalAttribute<number, any>;
            readonly totalConsumption: OptionalAttribute<number, any>;
            readonly statusFault: OptionalAttribute<number, any>;
            readonly motionSensitivity: OptionalWritableAttribute<number, any>;
            readonly holdPosition: OptionalAttribute<boolean, any>;
            readonly obstructionDetected: OptionalAttribute<boolean, any>;
            readonly valvePosition: OptionalWritableAttribute<number, any>;
            readonly childLock: OptionalWritableAttribute<boolean, any>;
            readonly rLoc: Attribute<number, any>;
            readonly elevation: OptionalWritableAttribute<number, any>;
            readonly airPressure: OptionalAttribute<number, any>;
            readonly weatherTrend: OptionalAttribute<number, any>;
            readonly temperatureDisplayUnits: OptionalWritableAttribute<number, any>;
        };
        readonly extensions: readonly [{
            readonly flags: {
                readonly eveDoor: true;
            };
            readonly component: {
                readonly attributes: {
                    readonly configDataGet: Attribute<AllowSharedBufferSource, any>;
                    readonly configDataSet: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly historyStatus: Attribute<AllowSharedBufferSource, any>;
                    readonly historyEntries: Attribute<AllowSharedBufferSource, any>;
                    readonly historyRequest: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly historySetTime: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly lastEvent: OptionalAttribute<number, any>;
                    readonly timesOpened: OptionalAttribute<number, any>;
                    readonly resetTotal: OptionalWritableAttribute<number, any>;
                    readonly rLoc: Attribute<number, any>;
                };
            };
        }, {
            readonly flags: {
                readonly eveMotion: true;
            };
            readonly component: {
                readonly attributes: {
                    readonly configDataGet: Attribute<AllowSharedBufferSource, any>;
                    readonly configDataSet: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly historyStatus: Attribute<AllowSharedBufferSource, any>;
                    readonly historyEntries: Attribute<AllowSharedBufferSource, any>;
                    readonly historyRequest: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly historySetTime: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly lastEvent: OptionalAttribute<number, any>;
                    readonly motionSensitivity: OptionalWritableAttribute<number, any>;
                    readonly rLoc: Attribute<number, any>;
                };
            };
        }, {
            readonly flags: {
                readonly eveEnergy: true;
            };
            readonly component: {
                readonly attributes: {
                    readonly configDataGet: Attribute<AllowSharedBufferSource, any>;
                    readonly configDataSet: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly historyStatus: Attribute<AllowSharedBufferSource, any>;
                    readonly historyEntries: Attribute<AllowSharedBufferSource, any>;
                    readonly historyRequest: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly historySetTime: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly lastEvent: OptionalAttribute<number, any>;
                    readonly resetTotal: OptionalWritableAttribute<number, any>;
                    readonly voltage: OptionalAttribute<number, any>;
                    readonly current: OptionalAttribute<number, any>;
                    readonly consumption: OptionalAttribute<number, any>;
                    readonly totalConsumption: OptionalAttribute<number, any>;
                    readonly energyUnknown: OptionalAttribute<number, any>;
                    readonly childLock: OptionalWritableAttribute<boolean, any>;
                    readonly rLoc: Attribute<number, any>;
                };
            };
        }, {
            readonly flags: {
                readonly eveWeather: true;
            };
            readonly component: {
                readonly attributes: {
                    readonly configDataGet: Attribute<AllowSharedBufferSource, any>;
                    readonly configDataSet: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly historyStatus: Attribute<AllowSharedBufferSource, any>;
                    readonly historyEntries: Attribute<AllowSharedBufferSource, any>;
                    readonly historyRequest: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly historySetTime: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly rLoc: Attribute<number, any>;
                    readonly elevation: OptionalWritableAttribute<number, any>;
                    readonly airPressure: OptionalAttribute<number, any>;
                    readonly weatherTrend: OptionalAttribute<number, any>;
                    readonly temperatureDisplayUnits: OptionalWritableAttribute<number, any>;
                };
            };
        }, {
            readonly flags: {
                readonly eveRoom: true;
            };
            readonly component: {
                readonly attributes: {
                    readonly configDataGet: Attribute<AllowSharedBufferSource, any>;
                    readonly configDataSet: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly historyStatus: Attribute<AllowSharedBufferSource, any>;
                    readonly historyEntries: Attribute<AllowSharedBufferSource, any>;
                    readonly historyRequest: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly historySetTime: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly rLoc: Attribute<number, any>;
                    readonly temperatureDisplayUnits: OptionalWritableAttribute<number, any>;
                };
            };
        }];
    };
    const ClusterInstance: MutableCluster<{
        readonly id: 319486977;
        readonly name: "EveHistory";
        readonly revision: 1;
        readonly features: {
            readonly eveDoor: BitFlag;
            readonly eveMotion: BitFlag;
            readonly eveEnergy: BitFlag;
            readonly eveWeather: BitFlag;
            readonly eveRoom: BitFlag;
        };
        readonly attributes: {
            readonly configDataGet: Attribute<AllowSharedBufferSource, any>;
            readonly configDataSet: WritableAttribute<AllowSharedBufferSource, any>;
            readonly historyStatus: Attribute<AllowSharedBufferSource, any>;
            readonly historyEntries: Attribute<AllowSharedBufferSource, any>;
            readonly historyRequest: WritableAttribute<AllowSharedBufferSource, any>;
            readonly historySetTime: WritableAttribute<AllowSharedBufferSource, any>;
            readonly timesOpened: OptionalAttribute<number, any>;
            readonly lastEvent: OptionalAttribute<number, any>;
            readonly resetTotal: OptionalWritableAttribute<number, any>;
            readonly voltage: OptionalAttribute<number, any>;
            readonly current: OptionalAttribute<number, any>;
            readonly consumption: OptionalAttribute<number, any>;
            readonly totalConsumption: OptionalAttribute<number, any>;
            readonly statusFault: OptionalAttribute<number, any>;
            readonly motionSensitivity: OptionalWritableAttribute<number, any>;
            readonly holdPosition: OptionalAttribute<boolean, any>;
            readonly obstructionDetected: OptionalAttribute<boolean, any>;
            readonly valvePosition: OptionalWritableAttribute<number, any>;
            readonly childLock: OptionalWritableAttribute<boolean, any>;
            readonly rLoc: Attribute<number, any>;
            readonly elevation: OptionalWritableAttribute<number, any>;
            readonly airPressure: OptionalAttribute<number, any>;
            readonly weatherTrend: OptionalAttribute<number, any>;
            readonly temperatureDisplayUnits: OptionalWritableAttribute<number, any>;
        };
        readonly extensions: readonly [{
            readonly flags: {
                readonly eveDoor: true;
            };
            readonly component: {
                readonly attributes: {
                    readonly configDataGet: Attribute<AllowSharedBufferSource, any>;
                    readonly configDataSet: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly historyStatus: Attribute<AllowSharedBufferSource, any>;
                    readonly historyEntries: Attribute<AllowSharedBufferSource, any>;
                    readonly historyRequest: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly historySetTime: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly lastEvent: OptionalAttribute<number, any>;
                    readonly timesOpened: OptionalAttribute<number, any>;
                    readonly resetTotal: OptionalWritableAttribute<number, any>;
                    readonly rLoc: Attribute<number, any>;
                };
            };
        }, {
            readonly flags: {
                readonly eveMotion: true;
            };
            readonly component: {
                readonly attributes: {
                    readonly configDataGet: Attribute<AllowSharedBufferSource, any>;
                    readonly configDataSet: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly historyStatus: Attribute<AllowSharedBufferSource, any>;
                    readonly historyEntries: Attribute<AllowSharedBufferSource, any>;
                    readonly historyRequest: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly historySetTime: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly lastEvent: OptionalAttribute<number, any>;
                    readonly motionSensitivity: OptionalWritableAttribute<number, any>;
                    readonly rLoc: Attribute<number, any>;
                };
            };
        }, {
            readonly flags: {
                readonly eveEnergy: true;
            };
            readonly component: {
                readonly attributes: {
                    readonly configDataGet: Attribute<AllowSharedBufferSource, any>;
                    readonly configDataSet: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly historyStatus: Attribute<AllowSharedBufferSource, any>;
                    readonly historyEntries: Attribute<AllowSharedBufferSource, any>;
                    readonly historyRequest: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly historySetTime: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly lastEvent: OptionalAttribute<number, any>;
                    readonly resetTotal: OptionalWritableAttribute<number, any>;
                    readonly voltage: OptionalAttribute<number, any>;
                    readonly current: OptionalAttribute<number, any>;
                    readonly consumption: OptionalAttribute<number, any>;
                    readonly totalConsumption: OptionalAttribute<number, any>;
                    readonly energyUnknown: OptionalAttribute<number, any>;
                    readonly childLock: OptionalWritableAttribute<boolean, any>;
                    readonly rLoc: Attribute<number, any>;
                };
            };
        }, {
            readonly flags: {
                readonly eveWeather: true;
            };
            readonly component: {
                readonly attributes: {
                    readonly configDataGet: Attribute<AllowSharedBufferSource, any>;
                    readonly configDataSet: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly historyStatus: Attribute<AllowSharedBufferSource, any>;
                    readonly historyEntries: Attribute<AllowSharedBufferSource, any>;
                    readonly historyRequest: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly historySetTime: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly rLoc: Attribute<number, any>;
                    readonly elevation: OptionalWritableAttribute<number, any>;
                    readonly airPressure: OptionalAttribute<number, any>;
                    readonly weatherTrend: OptionalAttribute<number, any>;
                    readonly temperatureDisplayUnits: OptionalWritableAttribute<number, any>;
                };
            };
        }, {
            readonly flags: {
                readonly eveRoom: true;
            };
            readonly component: {
                readonly attributes: {
                    readonly configDataGet: Attribute<AllowSharedBufferSource, any>;
                    readonly configDataSet: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly historyStatus: Attribute<AllowSharedBufferSource, any>;
                    readonly historyEntries: Attribute<AllowSharedBufferSource, any>;
                    readonly historyRequest: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly historySetTime: WritableAttribute<AllowSharedBufferSource, any>;
                    readonly rLoc: Attribute<number, any>;
                    readonly temperatureDisplayUnits: OptionalWritableAttribute<number, any>;
                };
            };
        }];
    }, []>;
    interface Cluster extends Identity<typeof ClusterInstance> {
    }
    const Cluster: Cluster;
    const CompleteInstance: MutableCluster<{
        readonly id: import("matterbridge/matter").Branded<319486977, "ClusterId">;
        readonly name: "EveHistory";
        readonly revision: 1;
        readonly features: {
            readonly eveDoor: BitFlag;
            readonly eveMotion: BitFlag;
            readonly eveEnergy: BitFlag;
            readonly eveWeather: BitFlag;
            readonly eveRoom: BitFlag;
        };
        readonly attributes: {
            readonly configDataGet: Attribute<AllowSharedBufferSource, any>;
            readonly configDataSet: WritableAttribute<AllowSharedBufferSource, any>;
            readonly historyStatus: Attribute<AllowSharedBufferSource, any>;
            readonly historyEntries: Attribute<AllowSharedBufferSource, any>;
            readonly historyRequest: WritableAttribute<AllowSharedBufferSource, any>;
            readonly historySetTime: WritableAttribute<AllowSharedBufferSource, any>;
            readonly timesOpened: OptionalAttribute<number, any>;
            readonly lastEvent: OptionalAttribute<number, any>;
            readonly resetTotal: OptionalWritableAttribute<number, any>;
            readonly voltage: OptionalAttribute<number, any>;
            readonly current: OptionalAttribute<number, any>;
            readonly consumption: OptionalAttribute<number, any>;
            readonly totalConsumption: OptionalAttribute<number, any>;
            readonly statusFault: OptionalAttribute<number, any>;
            readonly motionSensitivity: OptionalWritableAttribute<number, any>;
            readonly holdPosition: OptionalAttribute<boolean, any>;
            readonly obstructionDetected: OptionalAttribute<boolean, any>;
            readonly valvePosition: OptionalWritableAttribute<number, any>;
            readonly childLock: OptionalWritableAttribute<boolean, any>;
            readonly rLoc: Attribute<number, any>;
            readonly elevation: OptionalWritableAttribute<number, any>;
            readonly airPressure: OptionalAttribute<number, any>;
            readonly weatherTrend: OptionalAttribute<number, any>;
            readonly temperatureDisplayUnits: OptionalWritableAttribute<number, any>;
            readonly clusterRevision: Attribute<number, never>;
            readonly featureMap: Attribute<import("matterbridge/matter/types").TypeFromPartialBitSchema<{
                readonly eveDoor: BitFlag;
                readonly eveMotion: BitFlag;
                readonly eveEnergy: BitFlag;
                readonly eveWeather: BitFlag;
                readonly eveRoom: BitFlag;
            }>, never>;
            readonly attributeList: Attribute<import("matterbridge/matter").AttributeId[], never>;
            readonly acceptedCommandList: Attribute<import("matterbridge/matter").CommandId[], never>;
            readonly generatedCommandList: Attribute<import("matterbridge/matter").CommandId[], never>;
        };
    }, []>;
    interface Complete extends Identity<typeof CompleteInstance> {
    }
    const Complete: Complete;
}
export type EveHistoryCluster = EveHistory.Cluster;
export declare const EveHistoryCluster: EveHistory.Cluster;
