package com.contentsquare.rn.csq import com.contentsquare.rn.csq.autocapture.CSQAutocapture import com.facebook.react.bridge.Dynamic import com.facebook.react.bridge.Promise import com.facebook.react.bridge.ReactApplicationContext import com.facebook.react.bridge.ReadableMap /** * Real implementation of HeapAutocaptureWrapper using CSQ SDK. * This class is included when enableCsqSdk=true. * Delegates all operations to CSQAutocapture which handles the actual Heap integration. */ class HeapAutocaptureWrapperImpl( private val reactContext: ReactApplicationContext, private val eventEmitter: InvocationEventEmitter ) : HeapAutocaptureWrapper { private val csqAutocapture = CSQAutocapture(reactContext, eventEmitter) override fun handleInvocation(method: String, arguments: ReadableMap, promise: Promise) { csqAutocapture.handleInvocation(method, arguments, promise) } override fun handleResult(callbackId: String, data: Dynamic?, error: String?) { csqAutocapture.handleResult(callbackId, data, error) } override fun handleResult(callbackId: String, data: ReadableMap?, error: String?) { csqAutocapture.handleResult(callbackId, data, error) } override fun onListenerAdded() { // No-op for CSQ implementation - delegate is set in CSQAutocapture constructor } override fun onListenersRemoved(count: Int) { // No-op for CSQ implementation } }