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

#include "HybridEspProvToolkitSpec.hpp"

namespace margelo::nitro::espprovtoolkit {

  void HybridEspProvToolkitSpec::loadHybridMethods() {
    // load base methods/properties
    HybridObject::loadHybridMethods();
    // load custom methods/properties
    registerHybrids(this, [](Prototype& prototype) {
      prototype.registerHybridMethod("searchForESPDevices", &HybridEspProvToolkitSpec::searchForESPDevices);
      prototype.registerHybridMethod("stopSearchingForESPDevices", &HybridEspProvToolkitSpec::stopSearchingForESPDevices);
      prototype.registerHybridMethod("createESPDevice", &HybridEspProvToolkitSpec::createESPDevice);
      prototype.registerHybridMethod("getESPDevice", &HybridEspProvToolkitSpec::getESPDevice);
      prototype.registerHybridMethod("doesESPDeviceExist", &HybridEspProvToolkitSpec::doesESPDeviceExist);
      prototype.registerHybridMethod("scanWifiListOfESPDevice", &HybridEspProvToolkitSpec::scanWifiListOfESPDevice);
      prototype.registerHybridMethod("connectToESPDevice", &HybridEspProvToolkitSpec::connectToESPDevice);
      prototype.registerHybridMethod("disconnectFromESPDevice", &HybridEspProvToolkitSpec::disconnectFromESPDevice);
      prototype.registerHybridMethod("provisionESPDevice", &HybridEspProvToolkitSpec::provisionESPDevice);
      prototype.registerHybridMethod("isESPDeviceSessionEstablished", &HybridEspProvToolkitSpec::isESPDeviceSessionEstablished);
      prototype.registerHybridMethod("sendDataToESPDevice", &HybridEspProvToolkitSpec::sendDataToESPDevice);
      prototype.registerHybridMethod("getIPv4AddressOfESPDevice", &HybridEspProvToolkitSpec::getIPv4AddressOfESPDevice);
      prototype.registerHybridMethod("getCurrentNetworkSSID", &HybridEspProvToolkitSpec::getCurrentNetworkSSID);
      prototype.registerHybridMethod("requestLocationPermission", &HybridEspProvToolkitSpec::requestLocationPermission);
      prototype.registerHybridMethod("registerLocationStatusCallback", &HybridEspProvToolkitSpec::registerLocationStatusCallback);
      prototype.registerHybridMethod("removeLocationStatusCallback", &HybridEspProvToolkitSpec::removeLocationStatusCallback);
      prototype.registerHybridMethod("getCurrentLocationStatus", &HybridEspProvToolkitSpec::getCurrentLocationStatus);
      prototype.registerHybridMethod("nativeErrorToNumber", &HybridEspProvToolkitSpec::nativeErrorToNumber);
    });
  }

} // namespace margelo::nitro::espprovtoolkit
