I am writing facade for PouchDB Put Method
here is my facde
@JSName("PouchDB")
class PouchDB extends js.Object {
type CALLBACK = js.Function2[js.UndefOr[js.Dynamic], js.UndefOr[js.Dynamic], Unit]
def this(name: js.UndefOr[String] = js.undefined, options: js.UndefOr[PouchDBOptions] = js.undefined) = this()
def put(doc: js.Object, docId: js.UndefOr[String] = js.undefined, docRev: js.UndefOr[String] = js.undefined, options: js.UndefOr[js.Object] = js.undefined, callback: CALLBACK = ???): Unit = js.native
...
put API takes a callback and also returns Promise , how can i define facade for put API which return promise..