
/**
 * 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: GenerateModuleJniCpp.js
 */

#include "RNEncryptionSpec.h"

namespace facebook::react {

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_generateAESKey(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, StringKind, "generateAESKey", "(D)Ljava/lang/String;", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_encryptAES(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, StringKind, "encryptAES", "(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_decryptAES(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, StringKind, "decryptAES", "(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_encryptFile(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, PromiseKind, "encryptFile", "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/facebook/react/bridge/Promise;)V", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_decryptFile(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, PromiseKind, "decryptFile", "(Ljava/lang/String;Ljava/lang/String;Lcom/facebook/react/bridge/Promise;)V", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_encryptAsyncAES(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, PromiseKind, "encryptAsyncAES", "(Ljava/lang/String;Ljava/lang/String;Lcom/facebook/react/bridge/Promise;)V", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_decryptAsyncAES(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, PromiseKind, "decryptAsyncAES", "(Ljava/lang/String;Ljava/lang/String;Lcom/facebook/react/bridge/Promise;)V", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_generateRSAKeyPair(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, ObjectKind, "generateRSAKeyPair", "()Lcom/facebook/react/bridge/WritableMap;", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_getPublicRSAkey(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, StringKind, "getPublicRSAkey", "(Ljava/lang/String;)Ljava/lang/String;", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_encryptRSA(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, StringKind, "encryptRSA", "(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_decryptRSA(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, StringKind, "decryptRSA", "(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_encryptAsyncRSA(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, PromiseKind, "encryptAsyncRSA", "(Ljava/lang/String;Ljava/lang/String;Lcom/facebook/react/bridge/Promise;)V", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_decryptAsyncRSA(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, PromiseKind, "decryptAsyncRSA", "(Ljava/lang/String;Ljava/lang/String;Lcom/facebook/react/bridge/Promise;)V", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_signDataRSA(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, StringKind, "signDataRSA", "(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_verifySignatureRSA(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, BooleanKind, "verifySignatureRSA", "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_hashSHA256(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, StringKind, "hashSHA256", "(Ljava/lang/String;)Ljava/lang/String;", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_hashSHA512(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, StringKind, "hashSHA512", "(Ljava/lang/String;)Ljava/lang/String;", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_generateHMACKey(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, StringKind, "generateHMACKey", "(D)Ljava/lang/String;", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_hmacSHA256(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, StringKind, "hmacSHA256", "(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_hmacSHA512(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, StringKind, "hmacSHA512", "(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_generateRandomString(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, StringKind, "generateRandomString", "(D)Ljava/lang/String;", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_base64Encode(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, StringKind, "base64Encode", "(Ljava/lang/String;)Ljava/lang/String;", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_base64Decode(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, StringKind, "base64Decode", "(Ljava/lang/String;)Ljava/lang/String;", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_pbkdf2(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, StringKind, "pbkdf2", "(Ljava/lang/String;Ljava/lang/String;DDLjava/lang/String;)Ljava/lang/String;", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_getRandomBytes(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, StringKind, "getRandomBytes", "(D)Ljava/lang/String;", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_encryptRSAOAEP(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, StringKind, "encryptRSAOAEP", "(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_decryptRSAOAEP(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, StringKind, "decryptRSAOAEP", "(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_generateECDSAKeyPair(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, ObjectKind, "generateECDSAKeyPair", "()Lcom/facebook/react/bridge/WritableMap;", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_getPublicECDSAKey(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, StringKind, "getPublicECDSAKey", "(Ljava/lang/String;)Ljava/lang/String;", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_signDataECDSA(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, StringKind, "signDataECDSA", "(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeEncryptionSpecJSI_verifySignatureECDSA(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, BooleanKind, "verifySignatureECDSA", "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z", args, count, cachedMethodId);
}

NativeEncryptionSpecJSI::NativeEncryptionSpecJSI(const JavaTurboModule::InitParams &params)
  : JavaTurboModule(params) {
  methodMap_["generateAESKey"] = MethodMetadata {1, __hostFunction_NativeEncryptionSpecJSI_generateAESKey};
  methodMap_["encryptAES"] = MethodMetadata {2, __hostFunction_NativeEncryptionSpecJSI_encryptAES};
  methodMap_["decryptAES"] = MethodMetadata {2, __hostFunction_NativeEncryptionSpecJSI_decryptAES};
  methodMap_["encryptFile"] = MethodMetadata {3, __hostFunction_NativeEncryptionSpecJSI_encryptFile};
  methodMap_["decryptFile"] = MethodMetadata {2, __hostFunction_NativeEncryptionSpecJSI_decryptFile};
  methodMap_["encryptAsyncAES"] = MethodMetadata {2, __hostFunction_NativeEncryptionSpecJSI_encryptAsyncAES};
  methodMap_["decryptAsyncAES"] = MethodMetadata {2, __hostFunction_NativeEncryptionSpecJSI_decryptAsyncAES};
  methodMap_["generateRSAKeyPair"] = MethodMetadata {0, __hostFunction_NativeEncryptionSpecJSI_generateRSAKeyPair};
  methodMap_["getPublicRSAkey"] = MethodMetadata {1, __hostFunction_NativeEncryptionSpecJSI_getPublicRSAkey};
  methodMap_["encryptRSA"] = MethodMetadata {2, __hostFunction_NativeEncryptionSpecJSI_encryptRSA};
  methodMap_["decryptRSA"] = MethodMetadata {2, __hostFunction_NativeEncryptionSpecJSI_decryptRSA};
  methodMap_["encryptAsyncRSA"] = MethodMetadata {2, __hostFunction_NativeEncryptionSpecJSI_encryptAsyncRSA};
  methodMap_["decryptAsyncRSA"] = MethodMetadata {2, __hostFunction_NativeEncryptionSpecJSI_decryptAsyncRSA};
  methodMap_["signDataRSA"] = MethodMetadata {2, __hostFunction_NativeEncryptionSpecJSI_signDataRSA};
  methodMap_["verifySignatureRSA"] = MethodMetadata {3, __hostFunction_NativeEncryptionSpecJSI_verifySignatureRSA};
  methodMap_["hashSHA256"] = MethodMetadata {1, __hostFunction_NativeEncryptionSpecJSI_hashSHA256};
  methodMap_["hashSHA512"] = MethodMetadata {1, __hostFunction_NativeEncryptionSpecJSI_hashSHA512};
  methodMap_["generateHMACKey"] = MethodMetadata {1, __hostFunction_NativeEncryptionSpecJSI_generateHMACKey};
  methodMap_["hmacSHA256"] = MethodMetadata {2, __hostFunction_NativeEncryptionSpecJSI_hmacSHA256};
  methodMap_["hmacSHA512"] = MethodMetadata {2, __hostFunction_NativeEncryptionSpecJSI_hmacSHA512};
  methodMap_["generateRandomString"] = MethodMetadata {1, __hostFunction_NativeEncryptionSpecJSI_generateRandomString};
  methodMap_["base64Encode"] = MethodMetadata {1, __hostFunction_NativeEncryptionSpecJSI_base64Encode};
  methodMap_["base64Decode"] = MethodMetadata {1, __hostFunction_NativeEncryptionSpecJSI_base64Decode};
  methodMap_["pbkdf2"] = MethodMetadata {5, __hostFunction_NativeEncryptionSpecJSI_pbkdf2};
  methodMap_["getRandomBytes"] = MethodMetadata {1, __hostFunction_NativeEncryptionSpecJSI_getRandomBytes};
  methodMap_["encryptRSAOAEP"] = MethodMetadata {2, __hostFunction_NativeEncryptionSpecJSI_encryptRSAOAEP};
  methodMap_["decryptRSAOAEP"] = MethodMetadata {2, __hostFunction_NativeEncryptionSpecJSI_decryptRSAOAEP};
  methodMap_["generateECDSAKeyPair"] = MethodMetadata {0, __hostFunction_NativeEncryptionSpecJSI_generateECDSAKeyPair};
  methodMap_["getPublicECDSAKey"] = MethodMetadata {1, __hostFunction_NativeEncryptionSpecJSI_getPublicECDSAKey};
  methodMap_["signDataECDSA"] = MethodMetadata {2, __hostFunction_NativeEncryptionSpecJSI_signDataECDSA};
  methodMap_["verifySignatureECDSA"] = MethodMetadata {3, __hostFunction_NativeEncryptionSpecJSI_verifySignatureECDSA};
}

std::shared_ptr<TurboModule> RNEncryptionSpec_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams &params) {
  if (moduleName == "Encryption") {
    return std::make_shared<NativeEncryptionSpecJSI>(params);
  }
  return nullptr;
}

} // namespace facebook::react
