package com.adealink.weparty.webview.jsbridge

import com.adealink.weparty.webview.jsbridge.data.NativeMessage
import com.adealink.weparty.webview.jsbridge.method.JSNativeMethod

interface JSBridge {

    fun interfaceName(): String

    fun <T, R> addNativeMethod(method: JSNativeMethod<T, R>)

    fun removeNativeMethod(methodName: String)

    fun <T> notifyNativeMessage(message: NativeMessage<T>)
}