package com.levinencrypteduploader import com.facebook.react.bridge.ReactApplicationContext import com.facebook.react.bridge.ReactContextBaseJavaModule import com.facebook.react.bridge.ReactMethod import com.facebook.react.bridge.Promise import com.facebook.react.bridge.ReadableMap import com.facebook.react.module.annotations.ReactModule import com.facebook.react.turbomodule.core.interfaces.TurboModule @ReactModule(name = LevinEncryptedUploaderModule.NAME) abstract class LevinEncryptedUploaderSpec : TurboModule { abstract fun getFileInfo(path: String, promise: Promise) abstract fun startUpload(options: ReadableMap, promise: Promise) abstract fun cancelUpload(uploadId: String, promise: Promise) abstract fun startDownload(options: ReadableMap, promise: Promise) abstract fun cancelDownload(taskId: String, promise: Promise) abstract fun addListener(eventName: String) abstract fun removeListeners(count: Int) }