// UNStoreModule.swift

import Foundation


@objc(UNStoreModule)
class UNStoreModule: NSObject, RCTBridgeModule {
  static func moduleName() -> String! {
    "UNStoreModule"
  }

  @objc static func requiresMainQueueSetup() -> Bool {
    return false
  }

  @objc func saveValue(_ key: String, value: String) {
    UserDefaults.standard.set(value, forKey: key)
  }

  @objc func getValue(_ key: String, resolver resolve: @escaping RCTPromiseResolveBlock, rejecter reject: @escaping RCTPromiseRejectBlock) {
    if let value = UserDefaults.standard.string(forKey: key) {
      resolve(value)
    } else {
      resolve(nil)
    }
  }

  @objc func cleanValue(_ key: String) {
    UserDefaults.standard.removeObject(forKey: key)
  }
}
