///
/// HybridNitroBatterySpec.cpp
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
/// https://github.com/mrousavy/nitro
/// Copyright © 2025 Marc Rousavy @ Margelo
///

#include "HybridNitroBatterySpec.hpp"

namespace margelo::nitro::battery {

  void HybridNitroBatterySpec::loadHybridMethods() {
    // load base methods/properties
    HybridObject::loadHybridMethods();
    // load custom methods/properties
    registerHybrids(this, [](Prototype& prototype) {
      prototype.registerHybridMethod("getLevel", &HybridNitroBatterySpec::getLevel);
      prototype.registerHybridMethod("isCharging", &HybridNitroBatterySpec::isCharging);
      prototype.registerHybridMethod("getBatteryState", &HybridNitroBatterySpec::getBatteryState);
      prototype.registerHybridMethod("isLowPowerModeEnabled", &HybridNitroBatterySpec::isLowPowerModeEnabled);
      prototype.registerHybridMethod("addBatteryStateListener", &HybridNitroBatterySpec::addBatteryStateListener);
      prototype.registerHybridMethod("removeBatteryStateListener", &HybridNitroBatterySpec::removeBatteryStateListener);
      prototype.registerHybridMethod("addLowPowerListener", &HybridNitroBatterySpec::addLowPowerListener);
      prototype.registerHybridMethod("removeLowPowerListener", &HybridNitroBatterySpec::removeLowPowerListener);
    });
  }

} // namespace margelo::nitro::battery
