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

#include "HybridWorkoutProxySpec.hpp"

namespace margelo::nitro::healthkit {

  void HybridWorkoutProxySpec::loadHybridMethods() {
    // load base methods/properties
    HybridObject::loadHybridMethods();
    // load custom methods/properties
    registerHybrids(this, [](Prototype& prototype) {
      prototype.registerHybridGetter("workoutActivityType", &HybridWorkoutProxySpec::getWorkoutActivityType);
      prototype.registerHybridGetter("duration", &HybridWorkoutProxySpec::getDuration);
      prototype.registerHybridGetter("totalEnergyBurned", &HybridWorkoutProxySpec::getTotalEnergyBurned);
      prototype.registerHybridGetter("totalDistance", &HybridWorkoutProxySpec::getTotalDistance);
      prototype.registerHybridGetter("totalSwimmingStrokeCount", &HybridWorkoutProxySpec::getTotalSwimmingStrokeCount);
      prototype.registerHybridGetter("totalFlightsClimbed", &HybridWorkoutProxySpec::getTotalFlightsClimbed);
      prototype.registerHybridGetter("events", &HybridWorkoutProxySpec::getEvents);
      prototype.registerHybridGetter("activities", &HybridWorkoutProxySpec::getActivities);
      prototype.registerHybridGetter("metadata", &HybridWorkoutProxySpec::getMetadata);
      prototype.registerHybridGetter("sampleType", &HybridWorkoutProxySpec::getSampleType);
      prototype.registerHybridGetter("startDate", &HybridWorkoutProxySpec::getStartDate);
      prototype.registerHybridGetter("endDate", &HybridWorkoutProxySpec::getEndDate);
      prototype.registerHybridGetter("hasUndeterminedDuration", &HybridWorkoutProxySpec::getHasUndeterminedDuration);
      prototype.registerHybridGetter("uuid", &HybridWorkoutProxySpec::getUuid);
      prototype.registerHybridGetter("sourceRevision", &HybridWorkoutProxySpec::getSourceRevision);
      prototype.registerHybridGetter("device", &HybridWorkoutProxySpec::getDevice);
      prototype.registerHybridMethod("toJSON", &HybridWorkoutProxySpec::toJSON);
      prototype.registerHybridMethod("saveWorkoutRoute", &HybridWorkoutProxySpec::saveWorkoutRoute);
      prototype.registerHybridMethod("getWorkoutPlan", &HybridWorkoutProxySpec::getWorkoutPlan);
      prototype.registerHybridMethod("getWorkoutRoutes", &HybridWorkoutProxySpec::getWorkoutRoutes);
      prototype.registerHybridMethod("getStatistic", &HybridWorkoutProxySpec::getStatistic);
      prototype.registerHybridMethod("getAllStatistics", &HybridWorkoutProxySpec::getAllStatistics);
    });
  }

} // namespace margelo::nitro::healthkit
