then

expect fun <S : JsAny?> then(onFulfilled: (T) -> S?): Promise<S>
expect fun <S : JsAny?> then(onFulfilled: (T) -> S?, onRejected: (JsAny) -> S?): Promise<S>
actual fun <S : JsAny?> then(onFulfilled: (T) -> S?): Promise<S>
actual fun <S : JsAny?> then(onFulfilled: (T) -> S?, onRejected: (JsAny) -> S?): Promise<S>