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

#include "HybridRiveFileSpec.hpp"

namespace margelo::nitro::rive {

  void HybridRiveFileSpec::loadHybridMethods() {
    // load base methods/properties
    HybridObject::loadHybridMethods();
    // load custom methods/properties
    registerHybrids(this, [](Prototype& prototype) {
      prototype.registerHybridGetter("viewModelCount", &HybridRiveFileSpec::getViewModelCount);
      prototype.registerHybridGetter("artboardCount", &HybridRiveFileSpec::getArtboardCount);
      prototype.registerHybridGetter("artboardNames", &HybridRiveFileSpec::getArtboardNames);
      prototype.registerHybridMethod("viewModelByIndex", &HybridRiveFileSpec::viewModelByIndex);
      prototype.registerHybridMethod("viewModelByName", &HybridRiveFileSpec::viewModelByName);
      prototype.registerHybridMethod("defaultArtboardViewModel", &HybridRiveFileSpec::defaultArtboardViewModel);
      prototype.registerHybridMethod("updateReferencedAssets", &HybridRiveFileSpec::updateReferencedAssets);
      prototype.registerHybridMethod("getViewModelNamesAsync", &HybridRiveFileSpec::getViewModelNamesAsync);
      prototype.registerHybridMethod("viewModelByNameAsync", &HybridRiveFileSpec::viewModelByNameAsync);
      prototype.registerHybridMethod("defaultArtboardViewModelAsync", &HybridRiveFileSpec::defaultArtboardViewModelAsync);
      prototype.registerHybridMethod("getArtboardCountAsync", &HybridRiveFileSpec::getArtboardCountAsync);
      prototype.registerHybridMethod("getArtboardNamesAsync", &HybridRiveFileSpec::getArtboardNamesAsync);
      prototype.registerHybridMethod("getBindableArtboard", &HybridRiveFileSpec::getBindableArtboard);
    });
  }

} // namespace margelo::nitro::rive
