import { MatterbridgeEndpoint } from 'matterbridge';
import { BasicInformation } from 'matterbridge/matter/clusters';
import { BehaviorDeviceRX9, EndpointCommandsRX9 } from './behavior-rx9.js';
import { AnsiLogger } from 'matterbridge/logger';
import { Config } from './config-types.js';
export interface EndpointInformationRX9 {
    uniqueStorageKey: string;
    uniqueId: string;
    vendorName: string;
    productName: string;
    nodeLabel: string;
    hardwareVersion: string;
    softwareVersion: string;
    manufacturingDate: string;
    partNumber: string;
    productLabel: string;
    serialNumber: string;
    productAppearance?: BasicInformation.ProductAppearance;
    smartPowerCapable: boolean;
}
export declare class EndpointRX9 extends MatterbridgeEndpoint {
    readonly config: Config;
    readonly information: EndpointInformationRX9;
    readonly behaviorDeviceRX9: BehaviorDeviceRX9;
    constructor(log: AnsiLogger, config: Config, information: EndpointInformationRX9);
    createBridgedDeviceBasicInformationClusterServer(): this;
    createPowerSourceClusterServer(): this;
    createRvcRunModeClusterServer(): this;
    createRvcCleanModeClusterServer(): this;
    createRvcOperationalStateClusterServer(): this;
    setCommandHandlerRX9<Command extends keyof EndpointCommandsRX9>(command: Command, handler: EndpointCommandsRX9[Command]): this;
}
//# sourceMappingURL=endpoint-rx9.d.ts.map