package com.contentsquare.rn.csq import com.facebook.react.bridge.Callback import com.facebook.react.bridge.ReadableArray import com.facebook.react.bridge.ReadableMap interface TransitionWrapperInterface { fun getName(): String fun getConstants(): Map fun start() fun send(screenView: String, customVars: ReadableArray?) fun optIn() fun optOut() fun setDefaultMasking(isMasked: Boolean) fun sendTransaction(id: String?, value: Float, currency: Int) fun sendTransactionWithStringCurrency(id: String?, value: Float, currency: String) fun sendDynamicStringVar(key: String, value: String) fun sendDynamicIntVar(key: String, value: Int) fun stopTracking() fun resumeTracking() fun getUserId(cb: Callback) fun setOnSessionReplayLinkChange() fun initComponents(params: ReadableMap) fun injectWebView(webViewTag: Int) fun removeWebViewInjection(webViewTag: Int) fun sendUserIdentifier(userIdentifier: String) fun monitorWarn(params: ReadableMap) fun monitorError(params: ReadableMap) fun configureProductAnalytics(envId: String, productAnalyticsOptions: ReadableMap?) fun stop() fun pauseTracking() fun addDynamicVar(key: String, value: Double) fun addDynamicVar(key: String, value: String) fun identify(identity: String) fun resetIdentity() fun trackScreenView(name: String, customVars: ReadableArray?, sourceInfo: ReadableMap?) fun trackTransaction(id: String?, value: Float, currency: Int) fun trackTransaction(id: String?, value: Float, currency: String) fun trackEvent(event: String, properties: ReadableMap?, sourceInfo: ReadableMap?) fun registerWebView(webViewTag: Int) fun unregisterWebView(webViewTag: Int) fun addEventProperties(properties: ReadableMap) fun removeEventProperty(name: String) fun clearEventProperties() fun addUserProperties(properties: ReadableMap) fun setUrlMaskingPatterns(patterns: ReadableArray) fun triggerNativeCrash() fun setOnMetadataChange() }