handle

suspend fun <R : HttpResponse, D> R.handle(onSuccess: suspend (HttpResponse) -> D, onFailure: suspend (HttpResponse) -> D): D

R a type of a HttpResponse a type from data.domain. Something like GeminiResponse