/**
 * 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: GenerateModuleObjCpp
 *
 * We create an umbrella header (and corresponding implementation) here since
 * Cxx compilation in BUCK has a limitation: source-code producing genrule()s
 * must have a single output. More files => more genrule()s => slower builds.
 */

#import "RNTimezoneSpec.h"


@implementation NativeTimezoneSpecBase


- (void)setEventEmitterCallback:(EventEmitterCallbackWrapper *)eventEmitterCallbackWrapper
{
  _eventEmitterCallback = std::move(eventEmitterCallbackWrapper->_eventEmitterCallback);
}
@end


namespace facebook::react {
  
    static facebook::jsi::Value __hostFunction_NativeTimezoneSpecJSI_getTimeZone(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
      return static_cast<ObjCTurboModule&>(turboModule).invokeObjCMethod(rt, StringKind, "getTimeZone", @selector(getTimeZone), args, count);
    }

    static facebook::jsi::Value __hostFunction_NativeTimezoneSpecJSI_getRegionByLocale(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
      return static_cast<ObjCTurboModule&>(turboModule).invokeObjCMethod(rt, StringKind, "getRegionByLocale", @selector(getRegionByLocale), args, count);
    }

    static facebook::jsi::Value __hostFunction_NativeTimezoneSpecJSI_getRegionByTelephony(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
      return static_cast<ObjCTurboModule&>(turboModule).invokeObjCMethod(rt, StringKind, "getRegionByTelephony", @selector(getRegionByTelephony), args, count);
    }

    static facebook::jsi::Value __hostFunction_NativeTimezoneSpecJSI_isAutoTimeZoneEnabled(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
      return static_cast<ObjCTurboModule&>(turboModule).invokeObjCMethod(rt, BooleanKind, "isAutoTimeZoneEnabled", @selector(isAutoTimeZoneEnabled), args, count);
    }

  NativeTimezoneSpecJSI::NativeTimezoneSpecJSI(const ObjCTurboModule::InitParams &params)
    : ObjCTurboModule(params) {
      
        methodMap_["getTimeZone"] = MethodMetadata {0, __hostFunction_NativeTimezoneSpecJSI_getTimeZone};
        
        
        methodMap_["getRegionByLocale"] = MethodMetadata {0, __hostFunction_NativeTimezoneSpecJSI_getRegionByLocale};
        
        
        methodMap_["getRegionByTelephony"] = MethodMetadata {0, __hostFunction_NativeTimezoneSpecJSI_getRegionByTelephony};
        
        
        methodMap_["isAutoTimeZoneEnabled"] = MethodMetadata {0, __hostFunction_NativeTimezoneSpecJSI_isAutoTimeZoneEnabled};
        
  }
} // namespace facebook::react
