/**
 * This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
 *
 * Do not edit this file as changes may cause incorrect behavior and will be lost
 * once the code is regenerated.
 *
 * @generated by codegen project: GenerateModuleCpp.js
 */

#include "RNMetaAdsSpecJSI.h"

namespace facebook::react {

static jsi::Value __hostFunction_NativeAdSettingsCxxSpecJSI_initialize(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
  return static_cast<NativeAdSettingsCxxSpecJSI *>(&turboModule)->initialize(
    rt
  );
}
static jsi::Value __hostFunction_NativeAdSettingsCxxSpecJSI_isInitialized(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
  return static_cast<NativeAdSettingsCxxSpecJSI *>(&turboModule)->isInitialized(
    rt
  );
}
static jsi::Value __hostFunction_NativeAdSettingsCxxSpecJSI_addTestDevice(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
  static_cast<NativeAdSettingsCxxSpecJSI *>(&turboModule)->addTestDevice(
    rt,
    count <= 0 ? throw jsi::JSError(rt, "Expected argument in position 0 to be passed") : args[0].asString(rt)
  );
  return jsi::Value::undefined();
}
static jsi::Value __hostFunction_NativeAdSettingsCxxSpecJSI_getCurrentDeviceHash(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
  return static_cast<NativeAdSettingsCxxSpecJSI *>(&turboModule)->getCurrentDeviceHash(
    rt
  );
}
static jsi::Value __hostFunction_NativeAdSettingsCxxSpecJSI_clearTestDevices(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
  static_cast<NativeAdSettingsCxxSpecJSI *>(&turboModule)->clearTestDevices(
    rt
  );
  return jsi::Value::undefined();
}
static jsi::Value __hostFunction_NativeAdSettingsCxxSpecJSI_setDataProcessingOptions(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
  static_cast<NativeAdSettingsCxxSpecJSI *>(&turboModule)->setDataProcessingOptions(
    rt,
    count <= 0 ? throw jsi::JSError(rt, "Expected argument in position 0 to be passed") : args[0].asObject(rt).asArray(rt),
    count <= 1 || args[1].isUndefined() ? std::nullopt : std::make_optional(args[1].asNumber()),
    count <= 2 || args[2].isUndefined() ? std::nullopt : std::make_optional(args[2].asNumber())
  );
  return jsi::Value::undefined();
}
static jsi::Value __hostFunction_NativeAdSettingsCxxSpecJSI_setLogLevel(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
  static_cast<NativeAdSettingsCxxSpecJSI *>(&turboModule)->setLogLevel(
    rt,
    count <= 0 ? throw jsi::JSError(rt, "Expected argument in position 0 to be passed") : args[0].asString(rt)
  );
  return jsi::Value::undefined();
}
static jsi::Value __hostFunction_NativeAdSettingsCxxSpecJSI_setAdvertiserIDCollectionEnabled(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
  static_cast<NativeAdSettingsCxxSpecJSI *>(&turboModule)->setAdvertiserIDCollectionEnabled(
    rt,
    count <= 0 ? throw jsi::JSError(rt, "Expected argument in position 0 to be passed") : args[0].asBool()
  );
  return jsi::Value::undefined();
}
static jsi::Value __hostFunction_NativeAdSettingsCxxSpecJSI_setAdvertiserTrackingEnabled(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
  static_cast<NativeAdSettingsCxxSpecJSI *>(&turboModule)->setAdvertiserTrackingEnabled(
    rt,
    count <= 0 ? throw jsi::JSError(rt, "Expected argument in position 0 to be passed") : args[0].asBool()
  );
  return jsi::Value::undefined();
}

NativeAdSettingsCxxSpecJSI::NativeAdSettingsCxxSpecJSI(std::shared_ptr<CallInvoker> jsInvoker)
  : TurboModule("AdSettings", jsInvoker) {
  methodMap_["initialize"] = MethodMetadata {0, __hostFunction_NativeAdSettingsCxxSpecJSI_initialize};
  methodMap_["isInitialized"] = MethodMetadata {0, __hostFunction_NativeAdSettingsCxxSpecJSI_isInitialized};
  methodMap_["addTestDevice"] = MethodMetadata {1, __hostFunction_NativeAdSettingsCxxSpecJSI_addTestDevice};
  methodMap_["getCurrentDeviceHash"] = MethodMetadata {0, __hostFunction_NativeAdSettingsCxxSpecJSI_getCurrentDeviceHash};
  methodMap_["clearTestDevices"] = MethodMetadata {0, __hostFunction_NativeAdSettingsCxxSpecJSI_clearTestDevices};
  methodMap_["setDataProcessingOptions"] = MethodMetadata {3, __hostFunction_NativeAdSettingsCxxSpecJSI_setDataProcessingOptions};
  methodMap_["setLogLevel"] = MethodMetadata {1, __hostFunction_NativeAdSettingsCxxSpecJSI_setLogLevel};
  methodMap_["setAdvertiserIDCollectionEnabled"] = MethodMetadata {1, __hostFunction_NativeAdSettingsCxxSpecJSI_setAdvertiserIDCollectionEnabled};
  methodMap_["setAdvertiserTrackingEnabled"] = MethodMetadata {1, __hostFunction_NativeAdSettingsCxxSpecJSI_setAdvertiserTrackingEnabled};
}
static jsi::Value __hostFunction_NativeInterstitialAdManagerCxxSpecJSI_loadAd(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
  return static_cast<NativeInterstitialAdManagerCxxSpecJSI *>(&turboModule)->loadAd(
    rt,
    count <= 0 ? throw jsi::JSError(rt, "Expected argument in position 0 to be passed") : args[0].asString(rt)
  );
}
static jsi::Value __hostFunction_NativeInterstitialAdManagerCxxSpecJSI_showAd(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
  return static_cast<NativeInterstitialAdManagerCxxSpecJSI *>(&turboModule)->showAd(
    rt,
    count <= 0 ? throw jsi::JSError(rt, "Expected argument in position 0 to be passed") : args[0].asString(rt)
  );
}

NativeInterstitialAdManagerCxxSpecJSI::NativeInterstitialAdManagerCxxSpecJSI(std::shared_ptr<CallInvoker> jsInvoker)
  : TurboModule("InterstitialAdManager", jsInvoker) {
  methodMap_["loadAd"] = MethodMetadata {1, __hostFunction_NativeInterstitialAdManagerCxxSpecJSI_loadAd};
  methodMap_["showAd"] = MethodMetadata {1, __hostFunction_NativeInterstitialAdManagerCxxSpecJSI_showAd};
}
static jsi::Value __hostFunction_NativeRewardedAdManagerCxxSpecJSI_loadAd(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
  return static_cast<NativeRewardedAdManagerCxxSpecJSI *>(&turboModule)->loadAd(
    rt,
    count <= 0 ? throw jsi::JSError(rt, "Expected argument in position 0 to be passed") : args[0].asString(rt)
  );
}
static jsi::Value __hostFunction_NativeRewardedAdManagerCxxSpecJSI_showAd(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
  return static_cast<NativeRewardedAdManagerCxxSpecJSI *>(&turboModule)->showAd(
    rt,
    count <= 0 ? throw jsi::JSError(rt, "Expected argument in position 0 to be passed") : args[0].asString(rt)
  );
}

NativeRewardedAdManagerCxxSpecJSI::NativeRewardedAdManagerCxxSpecJSI(std::shared_ptr<CallInvoker> jsInvoker)
  : TurboModule("RewardedAdManager", jsInvoker) {
  methodMap_["loadAd"] = MethodMetadata {1, __hostFunction_NativeRewardedAdManagerCxxSpecJSI_loadAd};
  methodMap_["showAd"] = MethodMetadata {1, __hostFunction_NativeRewardedAdManagerCxxSpecJSI_showAd};
}


} // namespace facebook::react
