summaryrefslogtreecommitdiff
path: root/api/pl.treksoft.kvision.remote
diff options
context:
space:
mode:
authorRobert Jaros <rjaros@finn.pl>2019-02-16 23:29:42 +0100
committerRobert Jaros <rjaros@finn.pl>2019-02-16 23:29:42 +0100
commitc7169d6e9dec101fc5523f84766b6fd0c3ecb656 (patch)
tree92349bc5407b8d2fadb7af6ec1b69611e37cd89f /api/pl.treksoft.kvision.remote
parentf23e74c2eb0cae2f6ce674881e86ab5d5659ad77 (diff)
downloadkvision-c7169d6e9dec101fc5523f84766b6fd0c3ecb656.tar.gz
kvision-c7169d6e9dec101fc5523f84766b6fd0c3ecb656.tar.bz2
kvision-c7169d6e9dec101fc5523f84766b6fd0c3ecb656.zip
API documentation for KVision 0.0.25
Diffstat (limited to 'api/pl.treksoft.kvision.remote')
-rw-r--r--api/pl.treksoft.kvision.remote/-call-agent/call.html104
-rw-r--r--api/pl.treksoft.kvision.remote/-call-agent/index.html23
-rw-r--r--api/pl.treksoft.kvision.remote/-call-agent/json-rpc-call.html8
-rw-r--r--api/pl.treksoft.kvision.remote/-call-agent/remote-call.html64
-rw-r--r--api/pl.treksoft.kvision.remote/-call-module/-init-.html14
-rw-r--r--api/pl.treksoft.kvision.remote/-call-module/configure.html14
-rw-r--r--api/pl.treksoft.kvision.remote/-call-module/index.html37
-rw-r--r--api/pl.treksoft.kvision.remote/-i-n-j-e-c-t-o-r_-k-e-y.html14
-rw-r--r--api/pl.treksoft.kvision.remote/-k-v-controller/application-context.html14
-rw-r--r--api/pl.treksoft.kvision.remote/-k-v-controller/index.html11
-rw-r--r--api/pl.treksoft.kvision.remote/-k-v-controller/kv-server.html14
-rw-r--r--api/pl.treksoft.kvision.remote/-k-v-controller/services.html14
-rw-r--r--api/pl.treksoft.kvision.remote/-k-v-server/-init-.html22
-rw-r--r--api/pl.treksoft.kvision.remote/-k-v-server/index.html46
-rw-r--r--api/pl.treksoft.kvision.remote/-k-v-server/services.html14
-rw-r--r--api/pl.treksoft.kvision.remote/-k-v-service-manager/add-route.html6
-rw-r--r--api/pl.treksoft.kvision.remote/-k-v-service-manager/apply-routes.html16
-rw-r--r--api/pl.treksoft.kvision.remote/-k-v-service-manager/bind.html28
-rw-r--r--api/pl.treksoft.kvision.remote/-k-v-service-manager/call.html4
-rw-r--r--api/pl.treksoft.kvision.remote/-k-v-service-manager/calls.html2
-rw-r--r--api/pl.treksoft.kvision.remote/-k-v-service-manager/delete-requests.html2
-rw-r--r--api/pl.treksoft.kvision.remote/-k-v-service-manager/get-calls.html2
-rw-r--r--api/pl.treksoft.kvision.remote/-k-v-service-manager/get-requests.html14
-rw-r--r--api/pl.treksoft.kvision.remote/-k-v-service-manager/index.html48
-rw-r--r--api/pl.treksoft.kvision.remote/-k-v-service-manager/options-requests.html2
-rw-r--r--api/pl.treksoft.kvision.remote/-k-v-service-manager/post-requests.html2
-rw-r--r--api/pl.treksoft.kvision.remote/-k-v-service-manager/put-requests.html2
-rw-r--r--api/pl.treksoft.kvision.remote/-k-v-service-manager/routes.html2
-rw-r--r--api/pl.treksoft.kvision.remote/-login-service/-init-.html6
-rw-r--r--api/pl.treksoft.kvision.remote/-login-service/index.html15
-rw-r--r--api/pl.treksoft.kvision.remote/-login-service/login-endpoint.html14
-rw-r--r--api/pl.treksoft.kvision.remote/-login-service/login.html2
-rw-r--r--api/pl.treksoft.kvision.remote/-main-module/-init-.html14
-rw-r--r--api/pl.treksoft.kvision.remote/-main-module/configure.html14
-rw-r--r--api/pl.treksoft.kvision.remote/-main-module/index.html37
-rw-r--r--api/pl.treksoft.kvision.remote/-security-mgr/-init-.html2
-rw-r--r--api/pl.treksoft.kvision.remote/-security-mgr/index.html4
-rw-r--r--api/pl.treksoft.kvision.remote/-spring-context/-init-.html14
-rw-r--r--api/pl.treksoft.kvision.remote/-spring-context/get-bean.html21
-rw-r--r--api/pl.treksoft.kvision.remote/-spring-context/index.html55
-rw-r--r--api/pl.treksoft.kvision.remote/-spring-context/set-application-context.html14
-rw-r--r--api/pl.treksoft.kvision.remote/apply-routes.html14
-rw-r--r--api/pl.treksoft.kvision.remote/index.html68
-rw-r--r--api/pl.treksoft.kvision.remote/injector.html14
-rw-r--r--api/pl.treksoft.kvision.remote/kvision-init.html16
-rw-r--r--api/pl.treksoft.kvision.remote/with-profile.html8
46 files changed, 565 insertions, 310 deletions
diff --git a/api/pl.treksoft.kvision.remote/-call-agent/call.html b/api/pl.treksoft.kvision.remote/-call-agent/call.html
new file mode 100644
index 00000000..5d908ee6
--- /dev/null
+++ b/api/pl.treksoft.kvision.remote/-call-agent/call.html
@@ -0,0 +1,104 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>CallAgent.call - kvision</title>
+<link rel="stylesheet" href="../../../style.css">
+</HEAD>
+<BODY>
+<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="index.html">CallAgent</a>&nbsp;/&nbsp;<a href="./call.html">call</a><br/>
+<br/>
+<h1>call</h1>
+<a name="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlin.Any, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))"></a>
+<code><span class="keyword">inline</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">T</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlin.Any, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/url">url</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlin.Any, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/data">data</span><span class="symbol">:</span>&nbsp;<span class="keyword">dynamic</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlin.Any, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span>&nbsp;<span class="symbol">=</span>&nbsp;HttpMethod.GET<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlin.Any, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/contentType">contentType</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a>&nbsp;<span class="symbol">=</span>&nbsp;"application/json"<span class="symbol">, </span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlin.Any, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/beforeSend">beforeSend</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="identifier">JQueryXHR</span><span class="symbol">,</span>&nbsp;<span class="identifier">JQueryAjaxSettings</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlin.Any, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/transform">transform</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="keyword">dynamic</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="keyword">dynamic</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.js/-promise/index.html"><span class="identifier">Promise</span></a><span class="symbol">&lt;</span><a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span></code>
+<p>Helper inline function to automatically get deserializer for the result value with dynamic data.</p>
+<h3>Parameters</h3>
+<p><a name="url"></a>
+<code>url</code> - an URL address</p>
+<p><a name="data"></a>
+<code>data</code> - data to be sent</p>
+<p><a name="method"></a>
+<code>method</code> - a HTTP method</p>
+<p><a name="contentType"></a>
+<code>contentType</code> - a content type of the request</p>
+<p><a name="beforeSend"></a>
+<code>beforeSend</code> - a content type of the request</p>
+<p><a name="transform"></a>
+<code>transform</code> - a function to transform the result of the call</p>
+<p><strong>Return</strong><br/>
+a promise of the result</p>
+<a name="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))"></a>
+<code><span class="keyword">inline</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">V</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/url">url</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/data">data</span><span class="symbol">:</span>&nbsp;<a href="call.html#V"><span class="identifier">V</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span>&nbsp;<span class="symbol">=</span>&nbsp;HttpMethod.GET<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/contentType">contentType</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a>&nbsp;<span class="symbol">=</span>&nbsp;"application/json"<span class="symbol">, </span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/beforeSend">beforeSend</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="identifier">JQueryXHR</span><span class="symbol">,</span>&nbsp;<span class="identifier">JQueryAjaxSettings</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.js/-promise/index.html"><span class="identifier">Promise</span></a><span class="symbol">&lt;</span><span class="keyword">dynamic</span><span class="symbol">&gt;</span></code>
+<p>Helper inline function to automatically get serializer for the data.</p>
+<h3>Parameters</h3>
+<p><a name="url"></a>
+<code>url</code> - an URL address</p>
+<p><a name="data"></a>
+<code>data</code> - data to be sent</p>
+<p><a name="method"></a>
+<code>method</code> - a HTTP method</p>
+<p><a name="contentType"></a>
+<code>contentType</code> - a content type of the request</p>
+<p><a name="beforeSend"></a>
+<code>beforeSend</code> - a content type of the request</p>
+<p><strong>Return</strong><br/>
+a promise of the result</p>
+<a name="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))"></a>
+<code><span class="keyword">inline</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">T</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">V</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/url">url</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/data">data</span><span class="symbol">:</span>&nbsp;<a href="call.html#V"><span class="identifier">V</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/deserializer">deserializer</span><span class="symbol">:</span>&nbsp;<span class="identifier">DeserializationStrategy</span><span class="symbol">&lt;</span><a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span>&nbsp;<span class="symbol">=</span>&nbsp;HttpMethod.GET<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/contentType">contentType</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a>&nbsp;<span class="symbol">=</span>&nbsp;"application/json"<span class="symbol">, </span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/beforeSend">beforeSend</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="identifier">JQueryXHR</span><span class="symbol">,</span>&nbsp;<span class="identifier">JQueryAjaxSettings</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/transform">transform</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="keyword">dynamic</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="keyword">dynamic</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.js/-promise/index.html"><span class="identifier">Promise</span></a><span class="symbol">&lt;</span><a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span></code>
+<p>Helper inline function to automatically get serializer for the data.</p>
+<h3>Parameters</h3>
+<p><a name="url"></a>
+<code>url</code> - an URL address</p>
+<p><a name="data"></a>
+<code>data</code> - data to be sent</p>
+<p><a name="deserializer"></a>
+<code>deserializer</code> - a deserializer for the result value</p>
+<p><a name="method"></a>
+<code>method</code> - a HTTP method</p>
+<p><a name="contentType"></a>
+<code>contentType</code> - a content type of the request</p>
+<p><a name="beforeSend"></a>
+<code>beforeSend</code> - a content type of the request</p>
+<p><a name="transform"></a>
+<code>transform</code> - a function to transform the result of the call</p>
+<p><strong>Return</strong><br/>
+a promise of the result</p>
+<a name="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.V)), pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))"></a>
+<code><span class="keyword">inline</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">T</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">V</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.V)), pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/url">url</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.V)), pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/serializer">serializer</span><span class="symbol">:</span>&nbsp;<span class="identifier">SerializationStrategy</span><span class="symbol">&lt;</span><a href="call.html#V"><span class="identifier">V</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.V)), pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/data">data</span><span class="symbol">:</span>&nbsp;<a href="call.html#V"><span class="identifier">V</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.V)), pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span>&nbsp;<span class="symbol">=</span>&nbsp;HttpMethod.GET<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.V)), pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/contentType">contentType</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a>&nbsp;<span class="symbol">=</span>&nbsp;"application/json"<span class="symbol">, </span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.V)), pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/beforeSend">beforeSend</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="identifier">JQueryXHR</span><span class="symbol">,</span>&nbsp;<span class="identifier">JQueryAjaxSettings</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.V)), pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/transform">transform</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="keyword">dynamic</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="keyword">dynamic</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.js/-promise/index.html"><span class="identifier">Promise</span></a><span class="symbol">&lt;</span><a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span></code>
+<p>Helper inline function to automatically deserializer for the result value with typed data.</p>
+<h3>Parameters</h3>
+<p><a name="url"></a>
+<code>url</code> - an URL address</p>
+<p><a name="serializer"></a>
+<code>serializer</code> - for the data</p>
+<p><a name="data"></a>
+<code>data</code> - data to be sent</p>
+<p><a name="method"></a>
+<code>method</code> - a HTTP method</p>
+<p><a name="contentType"></a>
+<code>contentType</code> - a content type of the request</p>
+<p><a name="beforeSend"></a>
+<code>beforeSend</code> - a content type of the request</p>
+<p><a name="transform"></a>
+<code>transform</code> - a function to transform the result of the call</p>
+<p><strong>Return</strong><br/>
+a promise of the result</p>
+<a name="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))"></a>
+<code><span class="keyword">inline</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">T</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">V</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/url">url</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/data">data</span><span class="symbol">:</span>&nbsp;<a href="call.html#V"><span class="identifier">V</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span>&nbsp;<span class="symbol">=</span>&nbsp;HttpMethod.GET<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/contentType">contentType</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a>&nbsp;<span class="symbol">=</span>&nbsp;"application/json"<span class="symbol">, </span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/beforeSend">beforeSend</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="identifier">JQueryXHR</span><span class="symbol">,</span>&nbsp;<span class="identifier">JQueryAjaxSettings</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/transform">transform</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="keyword">dynamic</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="keyword">dynamic</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.js/-promise/index.html"><span class="identifier">Promise</span></a><span class="symbol">&lt;</span><a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span></code>
+<p>Helper inline function to automatically get serializer for the data and deserializer for the result value.</p>
+<h3>Parameters</h3>
+<p><a name="url"></a>
+<code>url</code> - an URL address</p>
+<p><a name="data"></a>
+<code>data</code> - data to be sent</p>
+<p><a name="method"></a>
+<code>method</code> - a HTTP method</p>
+<p><a name="contentType"></a>
+<code>contentType</code> - a content type of the request</p>
+<p><a name="beforeSend"></a>
+<code>beforeSend</code> - a content type of the request</p>
+<p><a name="transform"></a>
+<code>transform</code> - a function to transform the result of the call</p>
+<p><strong>Return</strong><br/>
+a promise of the result</p>
+</BODY>
+</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-call-agent/index.html b/api/pl.treksoft.kvision.remote/-call-agent/index.html
index 041e1ef1..650b46ef 100644
--- a/api/pl.treksoft.kvision.remote/-call-agent/index.html
+++ b/api/pl.treksoft.kvision.remote/-call-agent/index.html
@@ -29,10 +29,26 @@
<tbody>
<tr>
<td>
+<p><a href="call.html">call</a></p>
+</td>
+<td>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">T</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlin.Any, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/url">url</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlin.Any, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/data">data</span><span class="symbol">:</span>&nbsp;<span class="keyword">dynamic</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlin.Any, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span>&nbsp;<span class="symbol">=</span>&nbsp;HttpMethod.GET<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlin.Any, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/contentType">contentType</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a>&nbsp;<span class="symbol">=</span>&nbsp;"application/json"<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlin.Any, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/beforeSend">beforeSend</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="identifier">JQueryXHR</span><span class="symbol">,</span>&nbsp;<span class="identifier">JQueryAjaxSettings</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlin.Any, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/transform">transform</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="keyword">dynamic</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="keyword">dynamic</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.js/-promise/index.html"><span class="identifier">Promise</span></a><span class="symbol">&lt;</span><a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span></code>
+<p>Helper inline function to automatically get deserializer for the result value with dynamic data.</p>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">V</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/url">url</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/data">data</span><span class="symbol">:</span>&nbsp;<a href="call.html#V"><span class="identifier">V</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span>&nbsp;<span class="symbol">=</span>&nbsp;HttpMethod.GET<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/contentType">contentType</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a>&nbsp;<span class="symbol">=</span>&nbsp;"application/json"<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/beforeSend">beforeSend</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="identifier">JQueryXHR</span><span class="symbol">,</span>&nbsp;<span class="identifier">JQueryAjaxSettings</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.js/-promise/index.html"><span class="identifier">Promise</span></a><span class="symbol">&lt;</span><span class="keyword">dynamic</span><span class="symbol">&gt;</span></code><br/>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">T</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">V</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/url">url</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/data">data</span><span class="symbol">:</span>&nbsp;<a href="call.html#V"><span class="identifier">V</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/deserializer">deserializer</span><span class="symbol">:</span>&nbsp;<span class="identifier">DeserializationStrategy</span><span class="symbol">&lt;</span><a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span>&nbsp;<span class="symbol">=</span>&nbsp;HttpMethod.GET<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/contentType">contentType</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a>&nbsp;<span class="symbol">=</span>&nbsp;"application/json"<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/beforeSend">beforeSend</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="identifier">JQueryXHR</span><span class="symbol">,</span>&nbsp;<span class="identifier">JQueryAjaxSettings</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/transform">transform</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="keyword">dynamic</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="keyword">dynamic</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.js/-promise/index.html"><span class="identifier">Promise</span></a><span class="symbol">&lt;</span><a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span></code>
+<p>Helper inline function to automatically get serializer for the data.</p>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">T</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">V</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.V)), pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/url">url</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.V)), pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/serializer">serializer</span><span class="symbol">:</span>&nbsp;<span class="identifier">SerializationStrategy</span><span class="symbol">&lt;</span><a href="call.html#V"><span class="identifier">V</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.V)), pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/data">data</span><span class="symbol">:</span>&nbsp;<a href="call.html#V"><span class="identifier">V</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.V)), pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span>&nbsp;<span class="symbol">=</span>&nbsp;HttpMethod.GET<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.V)), pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/contentType">contentType</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a>&nbsp;<span class="symbol">=</span>&nbsp;"application/json"<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.V)), pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/beforeSend">beforeSend</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="identifier">JQueryXHR</span><span class="symbol">,</span>&nbsp;<span class="identifier">JQueryAjaxSettings</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.call.V)), pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/transform">transform</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="keyword">dynamic</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="keyword">dynamic</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.js/-promise/index.html"><span class="identifier">Promise</span></a><span class="symbol">&lt;</span><a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span></code>
+<p>Helper inline function to automatically deserializer for the result value with typed data.</p>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">T</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">V</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/url">url</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/data">data</span><span class="symbol">:</span>&nbsp;<a href="call.html#V"><span class="identifier">V</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span>&nbsp;<span class="symbol">=</span>&nbsp;HttpMethod.GET<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/contentType">contentType</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a>&nbsp;<span class="symbol">=</span>&nbsp;"application/json"<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/beforeSend">beforeSend</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="identifier">JQueryXHR</span><span class="symbol">,</span>&nbsp;<span class="identifier">JQueryAjaxSettings</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$call(kotlin.String, pl.treksoft.kvision.remote.CallAgent.call.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/transform">transform</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="keyword">dynamic</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="keyword">dynamic</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.js/-promise/index.html"><span class="identifier">Promise</span></a><span class="symbol">&lt;</span><a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span></code>
+<p>Helper inline function to automatically get serializer for the data and deserializer for the result value.</p>
+</td>
+</tr>
+<tr>
+<td>
<p><a href="json-rpc-call.html">jsonRpcCall</a></p>
</td>
<td>
-<code><span class="keyword">fun </span><span class="identifier">jsonRpcCall</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$jsonRpcCall(kotlin.String, kotlin.collections.List((kotlin.String)), pl.treksoft.kvision.remote.RpcHttpMethod)/url">url</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$jsonRpcCall(kotlin.String, kotlin.collections.List((kotlin.String)), pl.treksoft.kvision.remote.RpcHttpMethod)/data">data</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">&gt;</span>&nbsp;<span class="symbol">=</span>&nbsp;listOf()<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$jsonRpcCall(kotlin.String, kotlin.collections.List((kotlin.String)), pl.treksoft.kvision.remote.RpcHttpMethod)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">RpcHttpMethod</span>&nbsp;<span class="symbol">=</span>&nbsp;RpcHttpMethod.POST<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.js/-promise/index.html"><span class="identifier">Promise</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span></code>
+<code><span class="keyword">fun </span><span class="identifier">jsonRpcCall</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$jsonRpcCall(kotlin.String, kotlin.collections.List((kotlin.String)), pl.treksoft.kvision.remote.HttpMethod)/url">url</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$jsonRpcCall(kotlin.String, kotlin.collections.List((kotlin.String)), pl.treksoft.kvision.remote.HttpMethod)/data">data</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">&gt;</span>&nbsp;<span class="symbol">=</span>&nbsp;listOf()<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$jsonRpcCall(kotlin.String, kotlin.collections.List((kotlin.String)), pl.treksoft.kvision.remote.HttpMethod)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span>&nbsp;<span class="symbol">=</span>&nbsp;HttpMethod.POST<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.js/-promise/index.html"><span class="identifier">Promise</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span></code>
<p>Makes an JSON-RPC call to the remote server.</p>
</td>
</tr>
@@ -41,7 +57,10 @@
<p><a href="remote-call.html">remoteCall</a></p>
</td>
<td>
-<code><span class="keyword">fun </span><span class="identifier">remoteCall</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlin.Any, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/url">url</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlin.Any, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/data">data</span><span class="symbol">:</span>&nbsp;<span class="keyword">dynamic</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlin.Any, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span>&nbsp;<span class="symbol">=</span>&nbsp;HttpMethod.GET<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlin.Any, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/contentType">contentType</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a>&nbsp;<span class="symbol">=</span>&nbsp;"application/json"<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlin.Any, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/beforeSend">beforeSend</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="identifier">JQueryXHR</span><span class="symbol">,</span>&nbsp;<span class="identifier">JQueryAjaxSettings</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.js/-promise/index.html"><span class="identifier">Promise</span></a><span class="symbol">&lt;</span><span class="keyword">dynamic</span><span class="symbol">&gt;</span></code>
+<code><span class="keyword">fun </span><span class="identifier">remoteCall</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlin.Any, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/url">url</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlin.Any, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/data">data</span><span class="symbol">:</span>&nbsp;<span class="keyword">dynamic</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlin.Any, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span>&nbsp;<span class="symbol">=</span>&nbsp;HttpMethod.GET<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlin.Any, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/contentType">contentType</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a>&nbsp;<span class="symbol">=</span>&nbsp;"application/json"<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlin.Any, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/beforeSend">beforeSend</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="identifier">JQueryXHR</span><span class="symbol">,</span>&nbsp;<span class="identifier">JQueryAjaxSettings</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.js/-promise/index.html"><span class="identifier">Promise</span></a><span class="symbol">&lt;</span><span class="keyword">dynamic</span><span class="symbol">&gt;</span></code><br/>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">T</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">&gt;</span> <span class="identifier">remoteCall</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlin.Any, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/url">url</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlin.Any, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/data">data</span><span class="symbol">:</span>&nbsp;<span class="keyword">dynamic</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlin.Any, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/deserializer">deserializer</span><span class="symbol">:</span>&nbsp;<span class="identifier">DeserializationStrategy</span><span class="symbol">&lt;</span><a href="remote-call.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlin.Any, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span>&nbsp;<span class="symbol">=</span>&nbsp;HttpMethod.GET<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlin.Any, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/contentType">contentType</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a>&nbsp;<span class="symbol">=</span>&nbsp;"application/json"<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlin.Any, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/beforeSend">beforeSend</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="identifier">JQueryXHR</span><span class="symbol">,</span>&nbsp;<span class="identifier">JQueryAjaxSettings</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlin.Any, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/transform">transform</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="keyword">dynamic</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="keyword">dynamic</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.js/-promise/index.html"><span class="identifier">Promise</span></a><span class="symbol">&lt;</span><a href="remote-call.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span></code><br/>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">V</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">&gt;</span> <span class="identifier">remoteCall</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/url">url</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/serializer">serializer</span><span class="symbol">:</span>&nbsp;<span class="identifier">SerializationStrategy</span><span class="symbol">&lt;</span><a href="remote-call.html#V"><span class="identifier">V</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/data">data</span><span class="symbol">:</span>&nbsp;<a href="remote-call.html#V"><span class="identifier">V</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span>&nbsp;<span class="symbol">=</span>&nbsp;HttpMethod.GET<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/contentType">contentType</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a>&nbsp;<span class="symbol">=</span>&nbsp;"application/json"<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/beforeSend">beforeSend</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="identifier">JQueryXHR</span><span class="symbol">,</span>&nbsp;<span class="identifier">JQueryAjaxSettings</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.js/-promise/index.html"><span class="identifier">Promise</span></a><span class="symbol">&lt;</span><span class="keyword">dynamic</span><span class="symbol">&gt;</span></code><br/>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">T</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">V</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">&gt;</span> <span class="identifier">remoteCall</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/url">url</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/serializer">serializer</span><span class="symbol">:</span>&nbsp;<span class="identifier">SerializationStrategy</span><span class="symbol">&lt;</span><a href="remote-call.html#V"><span class="identifier">V</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/data">data</span><span class="symbol">:</span>&nbsp;<a href="remote-call.html#V"><span class="identifier">V</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/deserializer">deserializer</span><span class="symbol">:</span>&nbsp;<span class="identifier">DeserializationStrategy</span><span class="symbol">&lt;</span><a href="remote-call.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span>&nbsp;<span class="symbol">=</span>&nbsp;HttpMethod.GET<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/contentType">contentType</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a>&nbsp;<span class="symbol">=</span>&nbsp;"application/json"<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/beforeSend">beforeSend</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="identifier">JQueryXHR</span><span class="symbol">,</span>&nbsp;<span class="identifier">JQueryAjaxSettings</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/transform">transform</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="keyword">dynamic</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="keyword">dynamic</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.js/-promise/index.html"><span class="identifier">Promise</span></a><span class="symbol">&lt;</span><a href="remote-call.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span></code>
<p>Makes a remote call to the remote server.</p>
</td>
</tr>
diff --git a/api/pl.treksoft.kvision.remote/-call-agent/json-rpc-call.html b/api/pl.treksoft.kvision.remote/-call-agent/json-rpc-call.html
index 2a0e976c..12ab8c4a 100644
--- a/api/pl.treksoft.kvision.remote/-call-agent/json-rpc-call.html
+++ b/api/pl.treksoft.kvision.remote/-call-agent/json-rpc-call.html
@@ -8,16 +8,16 @@
<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="index.html">CallAgent</a>&nbsp;/&nbsp;<a href="./json-rpc-call.html">jsonRpcCall</a><br/>
<br/>
<h1>jsonRpcCall</h1>
-<a name="pl.treksoft.kvision.remote.CallAgent$jsonRpcCall(kotlin.String, kotlin.collections.List((kotlin.String)), pl.treksoft.kvision.remote.RpcHttpMethod)"></a>
-<code><span class="keyword">fun </span><span class="identifier">jsonRpcCall</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$jsonRpcCall(kotlin.String, kotlin.collections.List((kotlin.String)), pl.treksoft.kvision.remote.RpcHttpMethod)/url">url</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$jsonRpcCall(kotlin.String, kotlin.collections.List((kotlin.String)), pl.treksoft.kvision.remote.RpcHttpMethod)/data">data</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">&gt;</span>&nbsp;<span class="symbol">=</span>&nbsp;listOf()<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$jsonRpcCall(kotlin.String, kotlin.collections.List((kotlin.String)), pl.treksoft.kvision.remote.RpcHttpMethod)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">RpcHttpMethod</span>&nbsp;<span class="symbol">=</span>&nbsp;RpcHttpMethod.POST<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.js/-promise/index.html"><span class="identifier">Promise</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span></code>
+<a name="pl.treksoft.kvision.remote.CallAgent$jsonRpcCall(kotlin.String, kotlin.collections.List((kotlin.String)), pl.treksoft.kvision.remote.HttpMethod)"></a>
+<code><span class="keyword">fun </span><span class="identifier">jsonRpcCall</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$jsonRpcCall(kotlin.String, kotlin.collections.List((kotlin.String)), pl.treksoft.kvision.remote.HttpMethod)/url">url</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$jsonRpcCall(kotlin.String, kotlin.collections.List((kotlin.String)), pl.treksoft.kvision.remote.HttpMethod)/data">data</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">&gt;</span>&nbsp;<span class="symbol">=</span>&nbsp;listOf()<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$jsonRpcCall(kotlin.String, kotlin.collections.List((kotlin.String)), pl.treksoft.kvision.remote.HttpMethod)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span>&nbsp;<span class="symbol">=</span>&nbsp;HttpMethod.POST<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.js/-promise/index.html"><span class="identifier">Promise</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span></code>
<p>Makes an JSON-RPC call to the remote server.</p>
<h3>Parameters</h3>
<p><a name="url"></a>
<code>url</code> - an URL address</p>
-<p><a name="method"></a>
-<code>method</code> - a HTTP method</p>
<p><a name="data"></a>
<code>data</code> - data to be sent</p>
+<p><a name="method"></a>
+<code>method</code> - a HTTP method</p>
<p><strong>Return</strong><br/>
a promise of the result</p>
</BODY>
diff --git a/api/pl.treksoft.kvision.remote/-call-agent/remote-call.html b/api/pl.treksoft.kvision.remote/-call-agent/remote-call.html
index 1da57940..939fcb8a 100644
--- a/api/pl.treksoft.kvision.remote/-call-agent/remote-call.html
+++ b/api/pl.treksoft.kvision.remote/-call-agent/remote-call.html
@@ -14,10 +14,74 @@
<h3>Parameters</h3>
<p><a name="url"></a>
<code>url</code> - an URL address</p>
+<p><a name="data"></a>
+<code>data</code> - data to be sent</p>
+<p><a name="method"></a>
+<code>method</code> - a HTTP method</p>
+<p><a name="contentType"></a>
+<code>contentType</code> - a content type of the request</p>
+<p><a name="beforeSend"></a>
+<code>beforeSend</code> - a content type of the request</p>
+<p><strong>Return</strong><br/>
+a promise of the result</p>
+<a name="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlin.Any, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))"></a>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">T</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">&gt;</span> <span class="identifier">remoteCall</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlin.Any, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/url">url</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlin.Any, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/data">data</span><span class="symbol">:</span>&nbsp;<span class="keyword">dynamic</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlin.Any, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/deserializer">deserializer</span><span class="symbol">:</span>&nbsp;<span class="identifier">DeserializationStrategy</span><span class="symbol">&lt;</span><a href="remote-call.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlin.Any, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span>&nbsp;<span class="symbol">=</span>&nbsp;HttpMethod.GET<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlin.Any, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/contentType">contentType</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a>&nbsp;<span class="symbol">=</span>&nbsp;"application/json"<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlin.Any, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/beforeSend">beforeSend</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="identifier">JQueryXHR</span><span class="symbol">,</span>&nbsp;<span class="identifier">JQueryAjaxSettings</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlin.Any, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/transform">transform</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="keyword">dynamic</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="keyword">dynamic</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.js/-promise/index.html"><span class="identifier">Promise</span></a><span class="symbol">&lt;</span><a href="remote-call.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span></code>
+<p>Makes a remote call to the remote server.</p>
+<h3>Parameters</h3>
+<p><a name="url"></a>
+<code>url</code> - an URL address</p>
+<p><a name="data"></a>
+<code>data</code> - data to be sent</p>
+<p><a name="deserializer"></a>
+<code>deserializer</code> - a deserializer for the result value</p>
+<p><a name="method"></a>
+<code>method</code> - a HTTP method</p>
+<p><a name="contentType"></a>
+<code>contentType</code> - a content type of the request</p>
+<p><a name="beforeSend"></a>
+<code>beforeSend</code> - a content type of the request</p>
+<p><a name="transform"></a>
+<code>transform</code> - a function to transform the result of the call</p>
+<p><strong>Return</strong><br/>
+a promise of the result</p>
+<a name="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))"></a>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">V</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">&gt;</span> <span class="identifier">remoteCall</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/url">url</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/serializer">serializer</span><span class="symbol">:</span>&nbsp;<span class="identifier">SerializationStrategy</span><span class="symbol">&lt;</span><a href="remote-call.html#V"><span class="identifier">V</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/data">data</span><span class="symbol">:</span>&nbsp;<a href="remote-call.html#V"><span class="identifier">V</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span>&nbsp;<span class="symbol">=</span>&nbsp;HttpMethod.GET<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/contentType">contentType</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a>&nbsp;<span class="symbol">=</span>&nbsp;"application/json"<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)))/beforeSend">beforeSend</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="identifier">JQueryXHR</span><span class="symbol">,</span>&nbsp;<span class="identifier">JQueryAjaxSettings</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.js/-promise/index.html"><span class="identifier">Promise</span></a><span class="symbol">&lt;</span><span class="keyword">dynamic</span><span class="symbol">&gt;</span></code>
+<p>Makes a remote call to the remote server.</p>
+<h3>Parameters</h3>
+<p><a name="url"></a>
+<code>url</code> - an URL address</p>
+<p><a name="serializer"></a>
+<code>serializer</code> - for the data</p>
+<p><a name="data"></a>
+<code>data</code> - data to be sent</p>
<p><a name="method"></a>
<code>method</code> - a HTTP method</p>
+<p><a name="contentType"></a>
+<code>contentType</code> - a content type of the request</p>
+<p><a name="beforeSend"></a>
+<code>beforeSend</code> - a content type of the request</p>
+<p><strong>Return</strong><br/>
+a promise of the result</p>
+<a name="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))"></a>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">T</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">V</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">&gt;</span> <span class="identifier">remoteCall</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/url">url</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/serializer">serializer</span><span class="symbol">:</span>&nbsp;<span class="identifier">SerializationStrategy</span><span class="symbol">&lt;</span><a href="remote-call.html#V"><span class="identifier">V</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/data">data</span><span class="symbol">:</span>&nbsp;<a href="remote-call.html#V"><span class="identifier">V</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/deserializer">deserializer</span><span class="symbol">:</span>&nbsp;<span class="identifier">DeserializationStrategy</span><span class="symbol">&lt;</span><a href="remote-call.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span>&nbsp;<span class="symbol">=</span>&nbsp;HttpMethod.GET<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/contentType">contentType</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a>&nbsp;<span class="symbol">=</span>&nbsp;"application/json"<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/beforeSend">beforeSend</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="identifier">JQueryXHR</span><span class="symbol">,</span>&nbsp;<span class="identifier">JQueryAjaxSettings</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.CallAgent$remoteCall(kotlin.String, kotlinx.serialization.SerializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.V)), pl.treksoft.kvision.remote.CallAgent.remoteCall.V, kotlinx.serialization.DeserializationStrategy((pl.treksoft.kvision.remote.CallAgent.remoteCall.T)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((pl.treksoft.jquery.JQueryXHR, pl.treksoft.jquery.JQueryAjaxSettings, kotlin.Boolean)), kotlin.Function1((kotlin.Any, )))/transform">transform</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="keyword">dynamic</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="keyword">dynamic</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.js/-promise/index.html"><span class="identifier">Promise</span></a><span class="symbol">&lt;</span><a href="remote-call.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span></code>
+<p>Makes a remote call to the remote server.</p>
+<h3>Parameters</h3>
+<p><a name="url"></a>
+<code>url</code> - an URL address</p>
+<p><a name="serializer"></a>
+<code>serializer</code> - for the data</p>
<p><a name="data"></a>
<code>data</code> - data to be sent</p>
+<p><a name="deserializer"></a>
+<code>deserializer</code> - a deserializer for the result value</p>
+<p><a name="method"></a>
+<code>method</code> - a HTTP method</p>
+<p><a name="contentType"></a>
+<code>contentType</code> - a content type of the request</p>
+<p><a name="beforeSend"></a>
+<code>beforeSend</code> - a content type of the request</p>
+<p><a name="transform"></a>
+<code>transform</code> - a function to transform the result of the call</p>
<p><strong>Return</strong><br/>
a promise of the result</p>
</BODY>
diff --git a/api/pl.treksoft.kvision.remote/-call-module/-init-.html b/api/pl.treksoft.kvision.remote/-call-module/-init-.html
new file mode 100644
index 00000000..01125757
--- /dev/null
+++ b/api/pl.treksoft.kvision.remote/-call-module/-init-.html
@@ -0,0 +1,14 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>CallModule.<init> - kvision</title>
+<link rel="stylesheet" href="../../../style.css">
+</HEAD>
+<BODY>
+<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="index.html">CallModule</a>&nbsp;/&nbsp;<a href="./-init-.html">&lt;init&gt;</a><br/>
+<br/>
+<h1>&lt;init&gt;</h1>
+<a name="pl.treksoft.kvision.remote.CallModule$&lt;init&gt;()"></a>
+<code><span class="identifier">CallModule</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.CallModule$<init>()/call">call</span><span class="symbol">:</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">)</span></code>
+</BODY>
+</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-call-module/configure.html b/api/pl.treksoft.kvision.remote/-call-module/configure.html
new file mode 100644
index 00000000..8a72a68c
--- /dev/null
+++ b/api/pl.treksoft.kvision.remote/-call-module/configure.html
@@ -0,0 +1,14 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>CallModule.configure - kvision</title>
+<link rel="stylesheet" href="../../../style.css">
+</HEAD>
+<BODY>
+<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="index.html">CallModule</a>&nbsp;/&nbsp;<a href="./configure.html">configure</a><br/>
+<br/>
+<h1>configure</h1>
+<a name="pl.treksoft.kvision.remote.CallModule$configure()"></a>
+<code><span class="keyword">fun </span><span class="identifier">configure</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
+</BODY>
+</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-call-module/index.html b/api/pl.treksoft.kvision.remote/-call-module/index.html
new file mode 100644
index 00000000..907c004f
--- /dev/null
+++ b/api/pl.treksoft.kvision.remote/-call-module/index.html
@@ -0,0 +1,37 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>CallModule - kvision</title>
+<link rel="stylesheet" href="../../../style.css">
+</HEAD>
+<BODY>
+<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="./index.html">CallModule</a><br/>
+<br/>
+<h1>CallModule</h1>
+<code><span class="keyword">class </span><span class="identifier">CallModule</span></code>
+<h3>Constructors</h3>
+<table>
+<tbody>
+<tr>
+<td>
+<p><a href="-init-.html">&lt;init&gt;</a></p>
+</td>
+<td>
+<code><span class="identifier">CallModule</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.CallModule$<init>()/call">call</span><span class="symbol">:</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">)</span></code></td>
+</tr>
+</tbody>
+</table>
+<h3>Functions</h3>
+<table>
+<tbody>
+<tr>
+<td>
+<p><a href="configure.html">configure</a></p>
+</td>
+<td>
+<code><span class="keyword">fun </span><span class="identifier">configure</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code></td>
+</tr>
+</tbody>
+</table>
+</BODY>
+</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-i-n-j-e-c-t-o-r_-k-e-y.html b/api/pl.treksoft.kvision.remote/-i-n-j-e-c-t-o-r_-k-e-y.html
new file mode 100644
index 00000000..fc432e44
--- /dev/null
+++ b/api/pl.treksoft.kvision.remote/-i-n-j-e-c-t-o-r_-k-e-y.html
@@ -0,0 +1,14 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>INJECTOR_KEY - kvision</title>
+<link rel="stylesheet" href="../../style.css">
+</HEAD>
+<BODY>
+<a href="../index.html">kvision</a>&nbsp;/&nbsp;<a href="index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="./-i-n-j-e-c-t-o-r_-k-e-y.html">INJECTOR_KEY</a><br/>
+<br/>
+<h1>INJECTOR_KEY</h1>
+<a name="pl.treksoft.kvision.remote$INJECTOR_KEY"></a>
+<code><span class="keyword">val </span><span class="identifier">INJECTOR_KEY</span><span class="symbol">: </span><span class="identifier">&lt;ERROR CLASS&gt;</span></code>
+</BODY>
+</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-k-v-controller/application-context.html b/api/pl.treksoft.kvision.remote/-k-v-controller/application-context.html
new file mode 100644
index 00000000..7d5b1bb8
--- /dev/null
+++ b/api/pl.treksoft.kvision.remote/-k-v-controller/application-context.html
@@ -0,0 +1,14 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>KVController.applicationContext - kvision</title>
+<link rel="stylesheet" href="../../../style.css">
+</HEAD>
+<BODY>
+<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="index.html">KVController</a>&nbsp;/&nbsp;<a href="./application-context.html">applicationContext</a><br/>
+<br/>
+<h1>applicationContext</h1>
+<a name="pl.treksoft.kvision.remote.KVController$applicationContext"></a>
+<code><span class="keyword">lateinit</span> <span class="keyword">var </span><span class="identifier">applicationContext</span><span class="symbol">: </span><span class="identifier">&lt;ERROR CLASS&gt;</span></code>
+</BODY>
+</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-k-v-controller/index.html b/api/pl.treksoft.kvision.remote/-k-v-controller/index.html
index 40ced1a9..20a36779 100644
--- a/api/pl.treksoft.kvision.remote/-k-v-controller/index.html
+++ b/api/pl.treksoft.kvision.remote/-k-v-controller/index.html
@@ -26,10 +26,17 @@
<tbody>
<tr>
<td>
-<p><a href="kv-server.html">kvServer</a></p>
+<p><a href="application-context.html">applicationContext</a></p>
</td>
<td>
-<code><span class="keyword">lateinit</span> <span class="keyword">var </span><span class="identifier">kvServer</span><span class="symbol">: </span><a href="../-k-v-server/index.html"><span class="identifier">KVServer</span></a></code></td>
+<code><span class="keyword">lateinit</span> <span class="keyword">var </span><span class="identifier">applicationContext</span><span class="symbol">: </span><span class="identifier">&lt;ERROR CLASS&gt;</span></code></td>
+</tr>
+<tr>
+<td>
+<p><a href="services.html">services</a></p>
+</td>
+<td>
+<code><span class="keyword">lateinit</span> <span class="keyword">var </span><span class="identifier">services</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="../-k-v-service-manager/index.html"><span class="identifier">KVServiceManager</span></a><span class="symbol">&lt;</span><span class="identifier">*</span><span class="symbol">&gt;</span><span class="symbol">&gt;</span></code></td>
</tr>
</tbody>
</table>
diff --git a/api/pl.treksoft.kvision.remote/-k-v-controller/kv-server.html b/api/pl.treksoft.kvision.remote/-k-v-controller/kv-server.html
deleted file mode 100644
index f47e94f8..00000000
--- a/api/pl.treksoft.kvision.remote/-k-v-controller/kv-server.html
+++ /dev/null
@@ -1,14 +0,0 @@
-<HTML>
-<HEAD>
-<meta charset="UTF-8">
-<title>KVController.kvServer - kvision</title>
-<link rel="stylesheet" href="../../../style.css">
-</HEAD>
-<BODY>
-<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="index.html">KVController</a>&nbsp;/&nbsp;<a href="./kv-server.html">kvServer</a><br/>
-<br/>
-<h1>kvServer</h1>
-<a name="pl.treksoft.kvision.remote.KVController$kvServer"></a>
-<code><span class="keyword">lateinit</span> <span class="keyword">var </span><span class="identifier">kvServer</span><span class="symbol">: </span><a href="../-k-v-server/index.html"><span class="identifier">KVServer</span></a></code>
-</BODY>
-</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-k-v-controller/services.html b/api/pl.treksoft.kvision.remote/-k-v-controller/services.html
new file mode 100644
index 00000000..15d401c6
--- /dev/null
+++ b/api/pl.treksoft.kvision.remote/-k-v-controller/services.html
@@ -0,0 +1,14 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>KVController.services - kvision</title>
+<link rel="stylesheet" href="../../../style.css">
+</HEAD>
+<BODY>
+<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="index.html">KVController</a>&nbsp;/&nbsp;<a href="./services.html">services</a><br/>
+<br/>
+<h1>services</h1>
+<a name="pl.treksoft.kvision.remote.KVController$services"></a>
+<code><span class="keyword">lateinit</span> <span class="keyword">var </span><span class="identifier">services</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="../-k-v-service-manager/index.html"><span class="identifier">KVServiceManager</span></a><span class="symbol">&lt;</span><span class="identifier">*</span><span class="symbol">&gt;</span><span class="symbol">&gt;</span></code>
+</BODY>
+</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-k-v-server/-init-.html b/api/pl.treksoft.kvision.remote/-k-v-server/-init-.html
deleted file mode 100644
index 4b06965e..00000000
--- a/api/pl.treksoft.kvision.remote/-k-v-server/-init-.html
+++ /dev/null
@@ -1,22 +0,0 @@
-<HTML>
-<HEAD>
-<meta charset="UTF-8">
-<title>KVServer.<init> - kvision</title>
-<link rel="stylesheet" href="../../../style.css">
-</HEAD>
-<BODY>
-<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="index.html">KVServer</a>&nbsp;/&nbsp;<a href="./-init-.html">&lt;init&gt;</a><br/>
-<br/>
-<h1>&lt;init&gt;</h1>
-<a name="pl.treksoft.kvision.remote.KVServer$&lt;init&gt;()"></a>
-<code><span class="identifier">KVServer</span><span class="symbol">(</span><span class="symbol">)</span></code>
-<p>A server.
-Not used on the js platform.</p>
-<a name="pl.treksoft.kvision.remote.KVServer$&lt;init&gt;(kotlin.Function1((pl.treksoft.kvision.remote.KVServer, kotlin.Unit)))"></a>
-<code><span class="identifier">KVServer</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServer$<init>(kotlin.Function1((pl.treksoft.kvision.remote.KVServer, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">KVServer</span></a><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span></code>
-<p>A Jooby based server.</p>
-<a name="pl.treksoft.kvision.remote.KVServer$&lt;init&gt;(kotlin.collections.List((pl.treksoft.kvision.remote.KVServiceManager((kotlin.Any)))))"></a>
-<code><span class="identifier">KVServer</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServer$<init>(kotlin.collections.List((pl.treksoft.kvision.remote.KVServiceManager((kotlin.Any)))))/services">services</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="../-k-v-service-manager/index.html"><span class="identifier">KVServiceManager</span></a><span class="symbol">&lt;</span><span class="identifier">*</span><span class="symbol">&gt;</span><span class="symbol">&gt;</span><span class="symbol">)</span></code>
-<p>A Spring boot based server.</p>
-</BODY>
-</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-k-v-server/index.html b/api/pl.treksoft.kvision.remote/-k-v-server/index.html
deleted file mode 100644
index 131bfe1e..00000000
--- a/api/pl.treksoft.kvision.remote/-k-v-server/index.html
+++ /dev/null
@@ -1,46 +0,0 @@
-<HTML>
-<HEAD>
-<meta charset="UTF-8">
-<title>KVServer - kvision</title>
-<link rel="stylesheet" href="../../../style.css">
-</HEAD>
-<BODY>
-<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="./index.html">KVServer</a><br/>
-<br/>
-<h1>KVServer</h1>
-<code><span class="keyword">open</span> <span class="keyword">actual</span> <span class="keyword">class </span><span class="identifier">KVServer</span></code>
-<p>A server.
-Not used on the js platform.</p>
-<h3>Constructors</h3>
-<table>
-<tbody>
-<tr>
-<td>
-<p><a href="-init-.html">&lt;init&gt;</a></p>
-</td>
-<td>
-<code><span class="identifier">KVServer</span><span class="symbol">(</span><span class="symbol">)</span></code>
-<p>A server.
-Not used on the js platform.</p>
-<code><span class="identifier">KVServer</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServer$<init>(kotlin.Function1((pl.treksoft.kvision.remote.KVServer, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">KVServer</span></a><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span></code>
-<p>A Jooby based server.</p>
-<code><span class="identifier">KVServer</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServer$<init>(kotlin.collections.List((pl.treksoft.kvision.remote.KVServiceManager((kotlin.Any)))))/services">services</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="../-k-v-service-manager/index.html"><span class="identifier">KVServiceManager</span></a><span class="symbol">&lt;</span><span class="identifier">*</span><span class="symbol">&gt;</span><span class="symbol">&gt;</span><span class="symbol">)</span></code>
-<p>A Spring boot based server.</p>
-</td>
-</tr>
-</tbody>
-</table>
-<h3>Properties</h3>
-<table>
-<tbody>
-<tr>
-<td>
-<p><a href="services.html">services</a></p>
-</td>
-<td>
-<code><span class="keyword">val </span><span class="identifier">services</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="../-k-v-service-manager/index.html"><span class="identifier">KVServiceManager</span></a><span class="symbol">&lt;</span><span class="identifier">*</span><span class="symbol">&gt;</span><span class="symbol">&gt;</span></code></td>
-</tr>
-</tbody>
-</table>
-</BODY>
-</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-k-v-server/services.html b/api/pl.treksoft.kvision.remote/-k-v-server/services.html
deleted file mode 100644
index 9d72a47b..00000000
--- a/api/pl.treksoft.kvision.remote/-k-v-server/services.html
+++ /dev/null
@@ -1,14 +0,0 @@
-<HTML>
-<HEAD>
-<meta charset="UTF-8">
-<title>KVServer.services - kvision</title>
-<link rel="stylesheet" href="../../../style.css">
-</HEAD>
-<BODY>
-<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="index.html">KVServer</a>&nbsp;/&nbsp;<a href="./services.html">services</a><br/>
-<br/>
-<h1>services</h1>
-<a name="pl.treksoft.kvision.remote.KVServer$services"></a>
-<code><span class="keyword">val </span><span class="identifier">services</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="../-k-v-service-manager/index.html"><span class="identifier">KVServiceManager</span></a><span class="symbol">&lt;</span><span class="identifier">*</span><span class="symbol">&gt;</span><span class="symbol">&gt;</span></code>
-</BODY>
-</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-k-v-service-manager/add-route.html b/api/pl.treksoft.kvision.remote/-k-v-service-manager/add-route.html
index a144afab..928116e2 100644
--- a/api/pl.treksoft.kvision.remote/-k-v-service-manager/add-route.html
+++ b/api/pl.treksoft.kvision.remote/-k-v-service-manager/add-route.html
@@ -8,7 +8,9 @@
<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="index.html">KVServiceManager</a>&nbsp;/&nbsp;<a href="./add-route.html">addRoute</a><br/>
<br/>
<h1>addRoute</h1>
-<a name="pl.treksoft.kvision.remote.KVServiceManager$addRoute(pl.treksoft.kvision.remote.RpcHttpMethod, kotlin.String, kotlin.Function2((, , kotlin.Unit)))"></a>
-<code><span class="keyword">fun </span><span class="identifier">addRoute</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$addRoute(pl.treksoft.kvision.remote.RpcHttpMethod, kotlin.String, kotlin.Function2((, , kotlin.Unit)))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">RpcHttpMethod</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$addRoute(pl.treksoft.kvision.remote.RpcHttpMethod, kotlin.String, kotlin.Function2((, , kotlin.Unit)))/path">path</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$addRoute(pl.treksoft.kvision.remote.RpcHttpMethod, kotlin.String, kotlin.Function2((, , kotlin.Unit)))/handler">handler</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
+<a name="pl.treksoft.kvision.remote.KVServiceManager$addRoute(pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.SuspendFunction2((((kotlin.Unit, )), , )))"></a>
+<code><span class="keyword">fun </span><span class="identifier">addRoute</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$addRoute(pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.SuspendFunction2((((kotlin.Unit, )), , )))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$addRoute(pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.SuspendFunction2((((kotlin.Unit, )), , )))/path">path</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$addRoute(pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.SuspendFunction2((((kotlin.Unit, )), , )))/handler">handler</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">&gt;</span><span class="symbol">.</span><span class="symbol">(</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code><br/>
+<a name="pl.treksoft.kvision.remote.KVServiceManager$addRoute(pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function3((, , , kotlin.Unit)))"></a>
+<code><span class="keyword">fun </span><span class="identifier">addRoute</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$addRoute(pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function3((, , , kotlin.Unit)))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$addRoute(pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function3((, , , kotlin.Unit)))/path">path</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$addRoute(pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function3((, , , kotlin.Unit)))/handler">handler</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
</BODY>
</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-k-v-service-manager/apply-routes.html b/api/pl.treksoft.kvision.remote/-k-v-service-manager/apply-routes.html
deleted file mode 100644
index 96e7e799..00000000
--- a/api/pl.treksoft.kvision.remote/-k-v-service-manager/apply-routes.html
+++ /dev/null
@@ -1,16 +0,0 @@
-<HTML>
-<HEAD>
-<meta charset="UTF-8">
-<title>KVServiceManager.applyRoutes - kvision</title>
-<link rel="stylesheet" href="../../../style.css">
-</HEAD>
-<BODY>
-<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="index.html">KVServiceManager</a>&nbsp;/&nbsp;<a href="./apply-routes.html">applyRoutes</a><br/>
-<br/>
-<h1>applyRoutes</h1>
-<a name="pl.treksoft.kvision.remote.KVServiceManager$applyRoutes(pl.treksoft.kvision.remote.KVServer)"></a>
-<code><span class="keyword">actual</span> <span class="keyword">fun </span><span class="identifier">applyRoutes</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$applyRoutes(pl.treksoft.kvision.remote.KVServer)/k">k</span><span class="symbol">:</span>&nbsp;<a href="../-k-v-server/index.html"><span class="identifier">KVServer</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
-<p>Applies all defined routes to the given server.
-Not used on the js platform.</p>
-</BODY>
-</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-k-v-service-manager/bind.html b/api/pl.treksoft.kvision.remote/-k-v-service-manager/bind.html
index cd647656..d4ed2d6b 100644
--- a/api/pl.treksoft.kvision.remote/-k-v-service-manager/bind.html
+++ b/api/pl.treksoft.kvision.remote/-k-v-service-manager/bind.html
@@ -8,26 +8,26 @@
<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="index.html">KVServiceManager</a>&nbsp;/&nbsp;<a href="./bind.html">bind</a><br/>
<br/>
<h1>bind</h1>
-<a name="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction1((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)"></a>
-<code><span class="keyword">protected</span> <span class="keyword">inline</span> <span class="keyword">actual</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">RET</span><span class="symbol">&gt;</span> <span class="identifier">bind</span><span class="symbol">(</span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction1((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/function">function</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="bind.html#RET"><span class="identifier">RET</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction1((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/route">route</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction1((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">RpcHttpMethod</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code><br/>
-<a name="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction2((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)"></a>
-<code><span class="keyword">protected</span> <span class="keyword">inline</span> <span class="keyword">actual</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">RET</span><span class="symbol">&gt;</span> <span class="identifier">bind</span><span class="symbol">(</span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction2((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/function">function</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="bind.html#PAR"><span class="identifier">PAR</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="bind.html#RET"><span class="identifier">RET</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction2((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/route">route</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction2((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">RpcHttpMethod</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code><br/>
-<a name="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction3((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)"></a>
-<code><span class="keyword">protected</span> <span class="keyword">inline</span> <span class="keyword">actual</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR1</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR2</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">RET</span><span class="symbol">&gt;</span> <span class="identifier">bind</span><span class="symbol">(</span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction3((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/function">function</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="bind.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="bind.html#RET"><span class="identifier">RET</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction3((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/route">route</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction3((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">RpcHttpMethod</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code><br/>
-<a name="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction4((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)"></a>
-<code><span class="keyword">protected</span> <span class="keyword">inline</span> <span class="keyword">actual</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR1</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR2</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR3</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">RET</span><span class="symbol">&gt;</span> <span class="identifier">bind</span><span class="symbol">(</span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction4((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/function">function</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="bind.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="bind.html#RET"><span class="identifier">RET</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction4((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/route">route</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction4((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">RpcHttpMethod</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code><br/>
-<a name="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction5((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)"></a>
-<code><span class="keyword">protected</span> <span class="keyword">inline</span> <span class="keyword">actual</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR1</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR2</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR3</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR4</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">RET</span><span class="symbol">&gt;</span> <span class="identifier">bind</span><span class="symbol">(</span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction5((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/function">function</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="bind.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="bind.html#RET"><span class="identifier">RET</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction5((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/route">route</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction5((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">RpcHttpMethod</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code><br/>
-<a name="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction6((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR5, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)"></a>
-<code><span class="keyword">protected</span> <span class="keyword">inline</span> <span class="keyword">actual</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR1</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR2</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR3</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR4</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR5</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">RET</span><span class="symbol">&gt;</span> <span class="identifier">bind</span><span class="symbol">(</span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction6((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR5, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/function">function</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="bind.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR5"><span class="identifier">PAR5</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="bind.html#RET"><span class="identifier">RET</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction6((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR5, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/route">route</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction6((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR5, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">RpcHttpMethod</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
+<a name="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction1((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)"></a>
+<code><span class="keyword">protected</span> <span class="keyword">inline</span> <span class="keyword">actual</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">RET</span><span class="symbol">&gt;</span> <span class="identifier">bind</span><span class="symbol">(</span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction1((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/function">function</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="bind.html#RET"><span class="identifier">RET</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction1((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction1((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/route">route</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code><br/>
+<a name="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction2((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)"></a>
+<code><span class="keyword">protected</span> <span class="keyword">inline</span> <span class="keyword">actual</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">RET</span><span class="symbol">&gt;</span> <span class="identifier">bind</span><span class="symbol">(</span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction2((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/function">function</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="bind.html#PAR"><span class="identifier">PAR</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="bind.html#RET"><span class="identifier">RET</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction2((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction2((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/route">route</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code><br/>
+<a name="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction3((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)"></a>
+<code><span class="keyword">protected</span> <span class="keyword">inline</span> <span class="keyword">actual</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR1</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR2</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">RET</span><span class="symbol">&gt;</span> <span class="identifier">bind</span><span class="symbol">(</span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction3((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/function">function</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="bind.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="bind.html#RET"><span class="identifier">RET</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction3((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction3((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/route">route</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code><br/>
+<a name="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction4((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)"></a>
+<code><span class="keyword">protected</span> <span class="keyword">inline</span> <span class="keyword">actual</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR1</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR2</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR3</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">RET</span><span class="symbol">&gt;</span> <span class="identifier">bind</span><span class="symbol">(</span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction4((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/function">function</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="bind.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="bind.html#RET"><span class="identifier">RET</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction4((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction4((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/route">route</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code><br/>
+<a name="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction5((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)"></a>
+<code><span class="keyword">protected</span> <span class="keyword">inline</span> <span class="keyword">actual</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR1</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR2</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR3</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR4</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">RET</span><span class="symbol">&gt;</span> <span class="identifier">bind</span><span class="symbol">(</span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction5((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/function">function</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="bind.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="bind.html#RET"><span class="identifier">RET</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction5((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction5((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/route">route</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code><br/>
+<a name="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction6((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR5, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)"></a>
+<code><span class="keyword">protected</span> <span class="keyword">inline</span> <span class="keyword">actual</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR1</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR2</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR3</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR4</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR5</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">RET</span><span class="symbol">&gt;</span> <span class="identifier">bind</span><span class="symbol">(</span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction6((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR5, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/function">function</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="bind.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR5"><span class="identifier">PAR5</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="bind.html#RET"><span class="identifier">RET</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction6((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR5, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction6((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR5, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/route">route</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
<p>Binds a given route with a function of the receiver.</p>
<h3>Parameters</h3>
<p><a name="function"></a>
<code>function</code> - a function of the receiver</p>
-<p><a name="route"></a>
-<code>route</code> - a route</p>
<p><a name="method"></a>
<code>method</code> - a HTTP method</p>
+<p><a name="route"></a>
+<code>route</code> - a route</p>
<a name="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.Function3((pl.treksoft.kvision.remote.KVServiceManager.T, kotlin.String, , kotlin.collections.List(()))))"></a>
<code><span class="keyword">protected</span> <span class="keyword">actual</span> <span class="keyword">fun </span><span class="identifier">bind</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.Function3((pl.treksoft.kvision.remote.KVServiceManager.T, kotlin.String, , kotlin.collections.List(()))))/function">function</span><span class="symbol">:</span>&nbsp;<a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">,</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">&gt;</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
<p>Binds a given function of the receiver as a select options source</p>
diff --git a/api/pl.treksoft.kvision.remote/-k-v-service-manager/call.html b/api/pl.treksoft.kvision.remote/-k-v-service-manager/call.html
index baed88fa..d5959ccd 100644
--- a/api/pl.treksoft.kvision.remote/-k-v-service-manager/call.html
+++ b/api/pl.treksoft.kvision.remote/-k-v-service-manager/call.html
@@ -8,7 +8,7 @@
<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="index.html">KVServiceManager</a>&nbsp;/&nbsp;<a href="./call.html">call</a><br/>
<br/>
<h1>call</h1>
-<a name="pl.treksoft.kvision.remote.KVServiceManager$call(pl.treksoft.kvision.remote.RpcHttpMethod, kotlin.String, kotlin.Function2((, , kotlin.Unit)))"></a>
-<code><span class="keyword">fun </span><span class="identifier">call</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$call(pl.treksoft.kvision.remote.RpcHttpMethod, kotlin.String, kotlin.Function2((, , kotlin.Unit)))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">RpcHttpMethod</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$call(pl.treksoft.kvision.remote.RpcHttpMethod, kotlin.String, kotlin.Function2((, , kotlin.Unit)))/path">path</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$call(pl.treksoft.kvision.remote.RpcHttpMethod, kotlin.String, kotlin.Function2((, , kotlin.Unit)))/handler">handler</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="../-k-v-server/index.html"><span class="identifier">KVServer</span></a><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
+<a name="pl.treksoft.kvision.remote.KVServiceManager$call(pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((, , kotlin.Unit)))"></a>
+<code><span class="keyword">fun </span><span class="identifier">call</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$call(pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((, , kotlin.Unit)))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$call(pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((, , kotlin.Unit)))/path">path</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$call(pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((, , kotlin.Unit)))/handler">handler</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
</BODY>
</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-k-v-service-manager/calls.html b/api/pl.treksoft.kvision.remote/-k-v-service-manager/calls.html
index 79c1a020..7ec715d7 100644
--- a/api/pl.treksoft.kvision.remote/-k-v-service-manager/calls.html
+++ b/api/pl.treksoft.kvision.remote/-k-v-service-manager/calls.html
@@ -9,6 +9,6 @@
<br/>
<h1>calls</h1>
<a name="pl.treksoft.kvision.remote.KVServiceManager$calls"></a>
-<code><span class="keyword">protected</span> <span class="keyword">val </span><span class="identifier">calls</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html"><span class="identifier">MutableMap</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html"><span class="identifier">Pair</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<span class="identifier">RpcHttpMethod</span><span class="symbol">&gt;</span><span class="symbol">&gt;</span></code>
+<code><span class="keyword">protected</span> <span class="keyword">val </span><span class="identifier">calls</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html"><span class="identifier">MutableMap</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html"><span class="identifier">Pair</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<span class="identifier">HttpMethod</span><span class="symbol">&gt;</span><span class="symbol">&gt;</span></code>
</BODY>
</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-k-v-service-manager/delete-requests.html b/api/pl.treksoft.kvision.remote/-k-v-service-manager/delete-requests.html
index a3a2efcc..6398ff4a 100644
--- a/api/pl.treksoft.kvision.remote/-k-v-service-manager/delete-requests.html
+++ b/api/pl.treksoft.kvision.remote/-k-v-service-manager/delete-requests.html
@@ -9,6 +9,6 @@
<br/>
<h1>deleteRequests</h1>
<a name="pl.treksoft.kvision.remote.KVServiceManager$deleteRequests"></a>
-<code><span class="keyword">val </span><span class="identifier">deleteRequests</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html"><span class="identifier">MutableMap</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<span class="symbol">(</span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">&gt;</span></code>
+<code><span class="keyword">val </span><span class="identifier">deleteRequests</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html"><span class="identifier">MutableMap</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<span class="keyword">suspend </span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">&gt;</span><span class="symbol">.</span><span class="symbol">(</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">&gt;</span></code>
</BODY>
</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-k-v-service-manager/get-calls.html b/api/pl.treksoft.kvision.remote/-k-v-service-manager/get-calls.html
index f665a679..eb5887ff 100644
--- a/api/pl.treksoft.kvision.remote/-k-v-service-manager/get-calls.html
+++ b/api/pl.treksoft.kvision.remote/-k-v-service-manager/get-calls.html
@@ -9,7 +9,7 @@
<br/>
<h1>getCalls</h1>
<a name="pl.treksoft.kvision.remote.KVServiceManager$getCalls()"></a>
-<code><span class="keyword">open</span> <span class="keyword">fun </span><span class="identifier">getCalls</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-map/index.html"><span class="identifier">Map</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html"><span class="identifier">Pair</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<span class="identifier">RpcHttpMethod</span><span class="symbol">&gt;</span><span class="symbol">&gt;</span></code>
+<code><span class="keyword">fun </span><span class="identifier">getCalls</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-map/index.html"><span class="identifier">Map</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html"><span class="identifier">Pair</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<span class="identifier">HttpMethod</span><span class="symbol">&gt;</span><span class="symbol">&gt;</span></code>
<p>Returns the map of defined paths.</p>
</BODY>
</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-k-v-service-manager/get-requests.html b/api/pl.treksoft.kvision.remote/-k-v-service-manager/get-requests.html
new file mode 100644
index 00000000..714b7d36
--- /dev/null
+++ b/api/pl.treksoft.kvision.remote/-k-v-service-manager/get-requests.html
@@ -0,0 +1,14 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>KVServiceManager.getRequests - kvision</title>
+<link rel="stylesheet" href="../../../style.css">
+</HEAD>
+<BODY>
+<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="index.html">KVServiceManager</a>&nbsp;/&nbsp;<a href="./get-requests.html">getRequests</a><br/>
+<br/>
+<h1>getRequests</h1>
+<a name="pl.treksoft.kvision.remote.KVServiceManager$getRequests"></a>
+<code><span class="keyword">val </span><span class="identifier">getRequests</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html"><span class="identifier">MutableMap</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<span class="keyword">suspend </span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">&gt;</span><span class="symbol">.</span><span class="symbol">(</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">&gt;</span></code>
+</BODY>
+</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-k-v-service-manager/index.html b/api/pl.treksoft.kvision.remote/-k-v-service-manager/index.html
index 3e703de4..f2cf9b89 100644
--- a/api/pl.treksoft.kvision.remote/-k-v-service-manager/index.html
+++ b/api/pl.treksoft.kvision.remote/-k-v-service-manager/index.html
@@ -32,7 +32,7 @@
<p><a href="calls.html">calls</a></p>
</td>
<td>
-<code><span class="keyword">val </span><span class="identifier">calls</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html"><span class="identifier">MutableMap</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html"><span class="identifier">Pair</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<span class="identifier">RpcHttpMethod</span><span class="symbol">&gt;</span><span class="symbol">&gt;</span></code></td>
+<code><span class="keyword">val </span><span class="identifier">calls</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html"><span class="identifier">MutableMap</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html"><span class="identifier">Pair</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<span class="identifier">HttpMethod</span><span class="symbol">&gt;</span><span class="symbol">&gt;</span></code></td>
</tr>
<tr>
<td>
@@ -46,7 +46,14 @@
<p><a href="delete-requests.html">deleteRequests</a></p>
</td>
<td>
-<code><span class="keyword">val </span><span class="identifier">deleteRequests</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html"><span class="identifier">MutableMap</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<span class="symbol">(</span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">&gt;</span></code></td>
+<code><span class="keyword">val </span><span class="identifier">deleteRequests</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html"><span class="identifier">MutableMap</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<span class="keyword">suspend </span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">&gt;</span><span class="symbol">.</span><span class="symbol">(</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">&gt;</span></code></td>
+</tr>
+<tr>
+<td>
+<p><a href="get-requests.html">getRequests</a></p>
+</td>
+<td>
+<code><span class="keyword">val </span><span class="identifier">getRequests</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html"><span class="identifier">MutableMap</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<span class="keyword">suspend </span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">&gt;</span><span class="symbol">.</span><span class="symbol">(</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">&gt;</span></code></td>
</tr>
<tr>
<td>
@@ -60,28 +67,28 @@
<p><a href="options-requests.html">optionsRequests</a></p>
</td>
<td>
-<code><span class="keyword">val </span><span class="identifier">optionsRequests</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html"><span class="identifier">MutableMap</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<span class="symbol">(</span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">&gt;</span></code></td>
+<code><span class="keyword">val </span><span class="identifier">optionsRequests</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html"><span class="identifier">MutableMap</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<span class="keyword">suspend </span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">&gt;</span><span class="symbol">.</span><span class="symbol">(</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">&gt;</span></code></td>
</tr>
<tr>
<td>
<p><a href="post-requests.html">postRequests</a></p>
</td>
<td>
-<code><span class="keyword">val </span><span class="identifier">postRequests</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html"><span class="identifier">MutableMap</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<span class="symbol">(</span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">&gt;</span></code></td>
+<code><span class="keyword">val </span><span class="identifier">postRequests</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html"><span class="identifier">MutableMap</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<span class="keyword">suspend </span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">&gt;</span><span class="symbol">.</span><span class="symbol">(</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">&gt;</span></code></td>
</tr>
<tr>
<td>
<p><a href="put-requests.html">putRequests</a></p>
</td>
<td>
-<code><span class="keyword">val </span><span class="identifier">putRequests</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html"><span class="identifier">MutableMap</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<span class="symbol">(</span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">&gt;</span></code></td>
+<code><span class="keyword">val </span><span class="identifier">putRequests</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html"><span class="identifier">MutableMap</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<span class="keyword">suspend </span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">&gt;</span><span class="symbol">.</span><span class="symbol">(</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">&gt;</span></code></td>
</tr>
<tr>
<td>
<p><a href="routes.html">routes</a></p>
</td>
<td>
-<code><span class="keyword">val </span><span class="identifier">routes</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-list/index.html"><span class="identifier">MutableList</span></a><span class="symbol">&lt;</span><a href="../-k-v-server/index.html"><span class="identifier">KVServer</span></a><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">&gt;</span></code></td>
+<code><span class="keyword">val </span><span class="identifier">routes</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-list/index.html"><span class="identifier">MutableList</span></a><span class="symbol">&lt;</span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">&gt;</span></code></td>
</tr>
<tr>
<td>
@@ -100,29 +107,20 @@
<p><a href="add-route.html">addRoute</a></p>
</td>
<td>
-<code><span class="keyword">fun </span><span class="identifier">addRoute</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$addRoute(pl.treksoft.kvision.remote.RpcHttpMethod, kotlin.String, kotlin.Function2((, , kotlin.Unit)))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">RpcHttpMethod</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$addRoute(pl.treksoft.kvision.remote.RpcHttpMethod, kotlin.String, kotlin.Function2((, , kotlin.Unit)))/path">path</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$addRoute(pl.treksoft.kvision.remote.RpcHttpMethod, kotlin.String, kotlin.Function2((, , kotlin.Unit)))/handler">handler</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code></td>
-</tr>
-<tr>
-<td>
-<p><a href="apply-routes.html">applyRoutes</a></p>
-</td>
-<td>
-<code><span class="keyword">actual</span> <span class="keyword">fun </span><span class="identifier">applyRoutes</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$applyRoutes(pl.treksoft.kvision.remote.KVServer)/k">k</span><span class="symbol">:</span>&nbsp;<a href="../-k-v-server/index.html"><span class="identifier">KVServer</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
-<p>Applies all defined routes to the given server.
-Not used on the js platform.</p>
-</td>
+<code><span class="keyword">fun </span><span class="identifier">addRoute</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$addRoute(pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.SuspendFunction2((((kotlin.Unit, )), , )))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$addRoute(pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.SuspendFunction2((((kotlin.Unit, )), , )))/path">path</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$addRoute(pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.SuspendFunction2((((kotlin.Unit, )), , )))/handler">handler</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">&gt;</span><span class="symbol">.</span><span class="symbol">(</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code><br/>
+<code><span class="keyword">fun </span><span class="identifier">addRoute</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$addRoute(pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function3((, , , kotlin.Unit)))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$addRoute(pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function3((, , , kotlin.Unit)))/path">path</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$addRoute(pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function3((, , , kotlin.Unit)))/handler">handler</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code></td>
</tr>
<tr>
<td>
<p><a href="bind.html">bind</a></p>
</td>
<td>
-<code><span class="keyword">actual</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">RET</span><span class="symbol">&gt;</span> <span class="identifier">bind</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction1((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/function">function</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="bind.html#RET"><span class="identifier">RET</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction1((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/route">route</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction1((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">RpcHttpMethod</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code><br/>
-<code><span class="keyword">actual</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">PAR</span><span class="symbol">, </span><span class="identifier">RET</span><span class="symbol">&gt;</span> <span class="identifier">bind</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction2((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/function">function</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="bind.html#PAR"><span class="identifier">PAR</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="bind.html#RET"><span class="identifier">RET</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction2((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/route">route</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction2((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">RpcHttpMethod</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code><br/>
-<code><span class="keyword">actual</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">PAR1</span><span class="symbol">, </span><span class="identifier">PAR2</span><span class="symbol">, </span><span class="identifier">RET</span><span class="symbol">&gt;</span> <span class="identifier">bind</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction3((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/function">function</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="bind.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="bind.html#RET"><span class="identifier">RET</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction3((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/route">route</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction3((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">RpcHttpMethod</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code><br/>
-<code><span class="keyword">actual</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">PAR1</span><span class="symbol">, </span><span class="identifier">PAR2</span><span class="symbol">, </span><span class="identifier">PAR3</span><span class="symbol">, </span><span class="identifier">RET</span><span class="symbol">&gt;</span> <span class="identifier">bind</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction4((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/function">function</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="bind.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="bind.html#RET"><span class="identifier">RET</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction4((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/route">route</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction4((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">RpcHttpMethod</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code><br/>
-<code><span class="keyword">actual</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">PAR1</span><span class="symbol">, </span><span class="identifier">PAR2</span><span class="symbol">, </span><span class="identifier">PAR3</span><span class="symbol">, </span><span class="identifier">PAR4</span><span class="symbol">, </span><span class="identifier">RET</span><span class="symbol">&gt;</span> <span class="identifier">bind</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction5((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/function">function</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="bind.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="bind.html#RET"><span class="identifier">RET</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction5((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/route">route</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction5((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">RpcHttpMethod</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code><br/>
-<code><span class="keyword">actual</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">PAR1</span><span class="symbol">, </span><span class="identifier">PAR2</span><span class="symbol">, </span><span class="identifier">PAR3</span><span class="symbol">, </span><span class="identifier">PAR4</span><span class="symbol">, </span><span class="identifier">PAR5</span><span class="symbol">, </span><span class="identifier">RET</span><span class="symbol">&gt;</span> <span class="identifier">bind</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction6((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR5, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/function">function</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="bind.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR5"><span class="identifier">PAR5</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="bind.html#RET"><span class="identifier">RET</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction6((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR5, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/route">route</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction6((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR5, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), kotlin.String, pl.treksoft.kvision.remote.RpcHttpMethod)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">RpcHttpMethod</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
+<code><span class="keyword">actual</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">RET</span><span class="symbol">&gt;</span> <span class="identifier">bind</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction1((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/function">function</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="bind.html#RET"><span class="identifier">RET</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction1((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction1((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/route">route</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code><br/>
+<code><span class="keyword">actual</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">PAR</span><span class="symbol">, </span><span class="identifier">RET</span><span class="symbol">&gt;</span> <span class="identifier">bind</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction2((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/function">function</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="bind.html#PAR"><span class="identifier">PAR</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="bind.html#RET"><span class="identifier">RET</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction2((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction2((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/route">route</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code><br/>
+<code><span class="keyword">actual</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">PAR1</span><span class="symbol">, </span><span class="identifier">PAR2</span><span class="symbol">, </span><span class="identifier">RET</span><span class="symbol">&gt;</span> <span class="identifier">bind</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction3((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/function">function</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="bind.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="bind.html#RET"><span class="identifier">RET</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction3((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction3((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/route">route</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code><br/>
+<code><span class="keyword">actual</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">PAR1</span><span class="symbol">, </span><span class="identifier">PAR2</span><span class="symbol">, </span><span class="identifier">PAR3</span><span class="symbol">, </span><span class="identifier">RET</span><span class="symbol">&gt;</span> <span class="identifier">bind</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction4((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/function">function</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="bind.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="bind.html#RET"><span class="identifier">RET</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction4((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction4((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/route">route</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code><br/>
+<code><span class="keyword">actual</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">PAR1</span><span class="symbol">, </span><span class="identifier">PAR2</span><span class="symbol">, </span><span class="identifier">PAR3</span><span class="symbol">, </span><span class="identifier">PAR4</span><span class="symbol">, </span><span class="identifier">RET</span><span class="symbol">&gt;</span> <span class="identifier">bind</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction5((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/function">function</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="bind.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="bind.html#RET"><span class="identifier">RET</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction5((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction5((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/route">route</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code><br/>
+<code><span class="keyword">actual</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">PAR1</span><span class="symbol">, </span><span class="identifier">PAR2</span><span class="symbol">, </span><span class="identifier">PAR3</span><span class="symbol">, </span><span class="identifier">PAR4</span><span class="symbol">, </span><span class="identifier">PAR5</span><span class="symbol">, </span><span class="identifier">RET</span><span class="symbol">&gt;</span> <span class="identifier">bind</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction6((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR5, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/function">function</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="bind.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">,</span>&nbsp;<a href="bind.html#PAR5"><span class="identifier">PAR5</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="bind.html#RET"><span class="identifier">RET</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction6((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR5, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.SuspendFunction6((pl.treksoft.kvision.remote.KVServiceManager.T, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR1, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR2, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR3, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR4, pl.treksoft.kvision.remote.KVServiceManager.bind.PAR5, pl.treksoft.kvision.remote.KVServiceManager.bind.RET)), pl.treksoft.kvision.remote.HttpMethod, kotlin.String)/route">route</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
<p>Binds a given route with a function of the receiver.</p>
<code><span class="keyword">actual</span> <span class="keyword">fun </span><span class="identifier">bind</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$bind(kotlin.Function3((pl.treksoft.kvision.remote.KVServiceManager.T, kotlin.String, , kotlin.collections.List(()))))/function">function</span><span class="symbol">:</span>&nbsp;<a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">,</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">&gt;</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
<p>Binds a given function of the receiver as a select options source</p>
@@ -133,14 +131,14 @@ Not used on the js platform.</p>
<p><a href="call.html">call</a></p>
</td>
<td>
-<code><span class="keyword">fun </span><span class="identifier">call</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$call(pl.treksoft.kvision.remote.RpcHttpMethod, kotlin.String, kotlin.Function2((, , kotlin.Unit)))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">RpcHttpMethod</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$call(pl.treksoft.kvision.remote.RpcHttpMethod, kotlin.String, kotlin.Function2((, , kotlin.Unit)))/path">path</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$call(pl.treksoft.kvision.remote.RpcHttpMethod, kotlin.String, kotlin.Function2((, , kotlin.Unit)))/handler">handler</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="../-k-v-server/index.html"><span class="identifier">KVServer</span></a><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code></td>
+<code><span class="keyword">fun </span><span class="identifier">call</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$call(pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((, , kotlin.Unit)))/method">method</span><span class="symbol">:</span>&nbsp;<span class="identifier">HttpMethod</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$call(pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((, , kotlin.Unit)))/path">path</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.KVServiceManager$call(pl.treksoft.kvision.remote.HttpMethod, kotlin.String, kotlin.Function2((, , kotlin.Unit)))/handler">handler</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code></td>
</tr>
<tr>
<td>
<p><a href="get-calls.html">getCalls</a></p>
</td>
<td>
-<code><span class="keyword">open</span> <span class="keyword">fun </span><span class="identifier">getCalls</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-map/index.html"><span class="identifier">Map</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html"><span class="identifier">Pair</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<span class="identifier">RpcHttpMethod</span><span class="symbol">&gt;</span><span class="symbol">&gt;</span></code>
+<code><span class="keyword">fun </span><span class="identifier">getCalls</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-map/index.html"><span class="identifier">Map</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html"><span class="identifier">Pair</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<span class="identifier">HttpMethod</span><span class="symbol">&gt;</span><span class="symbol">&gt;</span></code>
<p>Returns the map of defined paths.</p>
</td>
</tr>
diff --git a/api/pl.treksoft.kvision.remote/-k-v-service-manager/options-requests.html b/api/pl.treksoft.kvision.remote/-k-v-service-manager/options-requests.html
index 36fb3334..83d19fd1 100644
--- a/api/pl.treksoft.kvision.remote/-k-v-service-manager/options-requests.html
+++ b/api/pl.treksoft.kvision.remote/-k-v-service-manager/options-requests.html
@@ -9,6 +9,6 @@
<br/>
<h1>optionsRequests</h1>
<a name="pl.treksoft.kvision.remote.KVServiceManager$optionsRequests"></a>
-<code><span class="keyword">val </span><span class="identifier">optionsRequests</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html"><span class="identifier">MutableMap</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<span class="symbol">(</span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">&gt;</span></code>
+<code><span class="keyword">val </span><span class="identifier">optionsRequests</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html"><span class="identifier">MutableMap</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<span class="keyword">suspend </span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">&gt;</span><span class="symbol">.</span><span class="symbol">(</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">&gt;</span></code>
</BODY>
</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-k-v-service-manager/post-requests.html b/api/pl.treksoft.kvision.remote/-k-v-service-manager/post-requests.html
index 8022e055..1f819332 100644
--- a/api/pl.treksoft.kvision.remote/-k-v-service-manager/post-requests.html
+++ b/api/pl.treksoft.kvision.remote/-k-v-service-manager/post-requests.html
@@ -9,6 +9,6 @@
<br/>
<h1>postRequests</h1>
<a name="pl.treksoft.kvision.remote.KVServiceManager$postRequests"></a>
-<code><span class="keyword">val </span><span class="identifier">postRequests</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html"><span class="identifier">MutableMap</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<span class="symbol">(</span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">&gt;</span></code>
+<code><span class="keyword">val </span><span class="identifier">postRequests</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html"><span class="identifier">MutableMap</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<span class="keyword">suspend </span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">&gt;</span><span class="symbol">.</span><span class="symbol">(</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">&gt;</span></code>
</BODY>
</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-k-v-service-manager/put-requests.html b/api/pl.treksoft.kvision.remote/-k-v-service-manager/put-requests.html
index 4538803e..a17d543c 100644
--- a/api/pl.treksoft.kvision.remote/-k-v-service-manager/put-requests.html
+++ b/api/pl.treksoft.kvision.remote/-k-v-service-manager/put-requests.html
@@ -9,6 +9,6 @@
<br/>
<h1>putRequests</h1>
<a name="pl.treksoft.kvision.remote.KVServiceManager$putRequests"></a>
-<code><span class="keyword">val </span><span class="identifier">putRequests</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html"><span class="identifier">MutableMap</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<span class="symbol">(</span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">&gt;</span></code>
+<code><span class="keyword">val </span><span class="identifier">putRequests</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html"><span class="identifier">MutableMap</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">,</span>&nbsp;<span class="keyword">suspend </span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">,</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">&gt;</span><span class="symbol">.</span><span class="symbol">(</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">&gt;</span></code>
</BODY>
</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-k-v-service-manager/routes.html b/api/pl.treksoft.kvision.remote/-k-v-service-manager/routes.html
index 252f1ccc..49b7318a 100644
--- a/api/pl.treksoft.kvision.remote/-k-v-service-manager/routes.html
+++ b/api/pl.treksoft.kvision.remote/-k-v-service-manager/routes.html
@@ -9,6 +9,6 @@
<br/>
<h1>routes</h1>
<a name="pl.treksoft.kvision.remote.KVServiceManager$routes"></a>
-<code><span class="keyword">protected</span> <span class="keyword">val </span><span class="identifier">routes</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-list/index.html"><span class="identifier">MutableList</span></a><span class="symbol">&lt;</span><a href="../-k-v-server/index.html"><span class="identifier">KVServer</span></a><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">&gt;</span></code>
+<code><span class="keyword">val </span><span class="identifier">routes</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-list/index.html"><span class="identifier">MutableList</span></a><span class="symbol">&lt;</span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a><span class="symbol">&gt;</span></code>
</BODY>
</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-login-service/-init-.html b/api/pl.treksoft.kvision.remote/-login-service/-init-.html
index fc85eeab..eb38c216 100644
--- a/api/pl.treksoft.kvision.remote/-login-service/-init-.html
+++ b/api/pl.treksoft.kvision.remote/-login-service/-init-.html
@@ -8,8 +8,8 @@
<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="index.html">LoginService</a>&nbsp;/&nbsp;<a href="./-init-.html">&lt;init&gt;</a><br/>
<br/>
<h1>&lt;init&gt;</h1>
-<a name="pl.treksoft.kvision.remote.LoginService$&lt;init&gt;()"></a>
-<code><span class="identifier">LoginService</span><span class="symbol">(</span><span class="symbol">)</span></code>
-<p>Pac4j form login dispatcher.</p>
+<a name="pl.treksoft.kvision.remote.LoginService$&lt;init&gt;(kotlin.String)"></a>
+<code><span class="identifier">LoginService</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.LoginService$<init>(kotlin.String)/loginEndpoint">loginEndpoint</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">)</span></code>
+<p>Form login dispatcher.</p>
</BODY>
</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-login-service/index.html b/api/pl.treksoft.kvision.remote/-login-service/index.html
index c0c2bd83..45f65f43 100644
--- a/api/pl.treksoft.kvision.remote/-login-service/index.html
+++ b/api/pl.treksoft.kvision.remote/-login-service/index.html
@@ -9,7 +9,7 @@
<br/>
<h1>LoginService</h1>
<code><span class="keyword">class </span><span class="identifier">LoginService</span></code>
-<p>Pac4j form login dispatcher.</p>
+<p>Form login dispatcher.</p>
<h3>Constructors</h3>
<table>
<tbody>
@@ -18,8 +18,8 @@
<p><a href="-init-.html">&lt;init&gt;</a></p>
</td>
<td>
-<code><span class="identifier">LoginService</span><span class="symbol">(</span><span class="symbol">)</span></code>
-<p>Pac4j form login dispatcher.</p>
+<code><span class="identifier">LoginService</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.LoginService$<init>(kotlin.String)/loginEndpoint">loginEndpoint</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">)</span></code>
+<p>Form login dispatcher.</p>
</td>
</tr>
</tbody>
@@ -34,6 +34,13 @@
<td>
<code><span class="keyword">val </span><span class="identifier">loginAgent</span><span class="symbol">: </span><a href="../-call-agent/index.html"><span class="identifier">CallAgent</span></a></code></td>
</tr>
+<tr>
+<td>
+<p><a href="login-endpoint.html">loginEndpoint</a></p>
+</td>
+<td>
+<code><span class="keyword">val </span><span class="identifier">loginEndpoint</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a></code></td>
+</tr>
</tbody>
</table>
<h3>Functions</h3>
@@ -45,7 +52,7 @@
</td>
<td>
<code><span class="keyword">suspend</span> <span class="keyword">fun </span><span class="identifier">login</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.LoginService$login(pl.treksoft.kvision.remote.Credentials)/credentials">credentials</span><span class="symbol">:</span>&nbsp;<a href="../-credentials/index.html"><span class="identifier">Credentials</span></a><span class="symbol">?</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a></code>
-<p>Login with Pac4j FormClient.</p>
+<p>Login with a form.</p>
</td>
</tr>
</tbody>
diff --git a/api/pl.treksoft.kvision.remote/-login-service/login-endpoint.html b/api/pl.treksoft.kvision.remote/-login-service/login-endpoint.html
new file mode 100644
index 00000000..ac24b0d5
--- /dev/null
+++ b/api/pl.treksoft.kvision.remote/-login-service/login-endpoint.html
@@ -0,0 +1,14 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>LoginService.loginEndpoint - kvision</title>
+<link rel="stylesheet" href="../../../style.css">
+</HEAD>
+<BODY>
+<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="index.html">LoginService</a>&nbsp;/&nbsp;<a href="./login-endpoint.html">loginEndpoint</a><br/>
+<br/>
+<h1>loginEndpoint</h1>
+<a name="pl.treksoft.kvision.remote.LoginService$loginEndpoint"></a>
+<code><span class="keyword">val </span><span class="identifier">loginEndpoint</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a></code>
+</BODY>
+</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-login-service/login.html b/api/pl.treksoft.kvision.remote/-login-service/login.html
index 0141d535..bc43ce98 100644
--- a/api/pl.treksoft.kvision.remote/-login-service/login.html
+++ b/api/pl.treksoft.kvision.remote/-login-service/login.html
@@ -10,7 +10,7 @@
<h1>login</h1>
<a name="pl.treksoft.kvision.remote.LoginService$login(pl.treksoft.kvision.remote.Credentials)"></a>
<code><span class="keyword">suspend</span> <span class="keyword">fun </span><span class="identifier">login</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.LoginService$login(pl.treksoft.kvision.remote.Credentials)/credentials">credentials</span><span class="symbol">:</span>&nbsp;<a href="../-credentials/index.html"><span class="identifier">Credentials</span></a><span class="symbol">?</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a></code>
-<p>Login with Pac4j FormClient.</p>
+<p>Login with a form.</p>
<h3>Parameters</h3>
<p><a name="credentials"></a>
<code>credentials</code> - username and password credentials</p>
diff --git a/api/pl.treksoft.kvision.remote/-main-module/-init-.html b/api/pl.treksoft.kvision.remote/-main-module/-init-.html
new file mode 100644
index 00000000..6c6b8317
--- /dev/null
+++ b/api/pl.treksoft.kvision.remote/-main-module/-init-.html
@@ -0,0 +1,14 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>MainModule.<init> - kvision</title>
+<link rel="stylesheet" href="../../../style.css">
+</HEAD>
+<BODY>
+<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="index.html">MainModule</a>&nbsp;/&nbsp;<a href="./-init-.html">&lt;init&gt;</a><br/>
+<br/>
+<h1>&lt;init&gt;</h1>
+<a name="pl.treksoft.kvision.remote.MainModule$&lt;init&gt;()"></a>
+<code><span class="identifier">MainModule</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.MainModule$<init>()/application">application</span><span class="symbol">:</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">)</span></code>
+</BODY>
+</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-main-module/configure.html b/api/pl.treksoft.kvision.remote/-main-module/configure.html
new file mode 100644
index 00000000..07871bc5
--- /dev/null
+++ b/api/pl.treksoft.kvision.remote/-main-module/configure.html
@@ -0,0 +1,14 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>MainModule.configure - kvision</title>
+<link rel="stylesheet" href="../../../style.css">
+</HEAD>
+<BODY>
+<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="index.html">MainModule</a>&nbsp;/&nbsp;<a href="./configure.html">configure</a><br/>
+<br/>
+<h1>configure</h1>
+<a name="pl.treksoft.kvision.remote.MainModule$configure()"></a>
+<code><span class="keyword">fun </span><span class="identifier">configure</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
+</BODY>
+</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-main-module/index.html b/api/pl.treksoft.kvision.remote/-main-module/index.html
new file mode 100644
index 00000000..0e930267
--- /dev/null
+++ b/api/pl.treksoft.kvision.remote/-main-module/index.html
@@ -0,0 +1,37 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>MainModule - kvision</title>
+<link rel="stylesheet" href="../../../style.css">
+</HEAD>
+<BODY>
+<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="./index.html">MainModule</a><br/>
+<br/>
+<h1>MainModule</h1>
+<code><span class="keyword">class </span><span class="identifier">MainModule</span></code>
+<h3>Constructors</h3>
+<table>
+<tbody>
+<tr>
+<td>
+<p><a href="-init-.html">&lt;init&gt;</a></p>
+</td>
+<td>
+<code><span class="identifier">MainModule</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.MainModule$<init>()/application">application</span><span class="symbol">:</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">)</span></code></td>
+</tr>
+</tbody>
+</table>
+<h3>Functions</h3>
+<table>
+<tbody>
+<tr>
+<td>
+<p><a href="configure.html">configure</a></p>
+</td>
+<td>
+<code><span class="keyword">fun </span><span class="identifier">configure</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code></td>
+</tr>
+</tbody>
+</table>
+</BODY>
+</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-security-mgr/-init-.html b/api/pl.treksoft.kvision.remote/-security-mgr/-init-.html
index 4e31e55d..d276e99a 100644
--- a/api/pl.treksoft.kvision.remote/-security-mgr/-init-.html
+++ b/api/pl.treksoft.kvision.remote/-security-mgr/-init-.html
@@ -10,6 +10,6 @@
<h1>&lt;init&gt;</h1>
<a name="pl.treksoft.kvision.remote.SecurityMgr$&lt;init&gt;()"></a>
<code><span class="identifier">SecurityMgr</span><span class="symbol">(</span><span class="symbol">)</span></code>
-<p>Pac4j form login dispatcher.</p>
+<p>Form login dispatcher.</p>
</BODY>
</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-security-mgr/index.html b/api/pl.treksoft.kvision.remote/-security-mgr/index.html
index 2c1b3d96..92fefd27 100644
--- a/api/pl.treksoft.kvision.remote/-security-mgr/index.html
+++ b/api/pl.treksoft.kvision.remote/-security-mgr/index.html
@@ -9,7 +9,7 @@
<br/>
<h1>SecurityMgr</h1>
<code><span class="keyword">abstract</span> <span class="keyword">class </span><span class="identifier">SecurityMgr</span></code>
-<p>Pac4j form login dispatcher.</p>
+<p>Form login dispatcher.</p>
<h3>Constructors</h3>
<table>
<tbody>
@@ -19,7 +19,7 @@
</td>
<td>
<code><span class="identifier">SecurityMgr</span><span class="symbol">(</span><span class="symbol">)</span></code>
-<p>Pac4j form login dispatcher.</p>
+<p>Form login dispatcher.</p>
</td>
</tr>
</tbody>
diff --git a/api/pl.treksoft.kvision.remote/-spring-context/-init-.html b/api/pl.treksoft.kvision.remote/-spring-context/-init-.html
deleted file mode 100644
index 66b70a2d..00000000
--- a/api/pl.treksoft.kvision.remote/-spring-context/-init-.html
+++ /dev/null
@@ -1,14 +0,0 @@
-<HTML>
-<HEAD>
-<meta charset="UTF-8">
-<title>SpringContext.<init> - kvision</title>
-<link rel="stylesheet" href="../../../style.css">
-</HEAD>
-<BODY>
-<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="index.html">SpringContext</a>&nbsp;/&nbsp;<a href="./-init-.html">&lt;init&gt;</a><br/>
-<br/>
-<h1>&lt;init&gt;</h1>
-<a name="pl.treksoft.kvision.remote.SpringContext$&lt;init&gt;()"></a>
-<code><span class="identifier">SpringContext</span><span class="symbol">(</span><span class="symbol">)</span></code>
-</BODY>
-</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-spring-context/get-bean.html b/api/pl.treksoft.kvision.remote/-spring-context/get-bean.html
deleted file mode 100644
index 24be4c0c..00000000
--- a/api/pl.treksoft.kvision.remote/-spring-context/get-bean.html
+++ /dev/null
@@ -1,21 +0,0 @@
-<HTML>
-<HEAD>
-<meta charset="UTF-8">
-<title>SpringContext.getBean - kvision</title>
-<link rel="stylesheet" href="../../../style.css">
-</HEAD>
-<BODY>
-<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="index.html">SpringContext</a>&nbsp;/&nbsp;<a href="./get-bean.html">getBean</a><br/>
-<br/>
-<h1>getBean</h1>
-<a name="pl.treksoft.kvision.remote.SpringContext.Companion$getBean(java.lang.Class((pl.treksoft.kvision.remote.SpringContext.Companion.getBean.T)))"></a>
-<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">getBean</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.SpringContext.Companion$getBean(java.lang.Class((pl.treksoft.kvision.remote.SpringContext.Companion.getBean.T)))/beanClass">beanClass</span><span class="symbol">:</span>&nbsp;<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol">&lt;</span><a href="get-bean.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span><span class="symbol">)</span><span class="symbol">: </span><a href="get-bean.html#T"><span class="identifier">T</span></a></code>
-<p>Get a Spring bean by type.</p>
-<a name="pl.treksoft.kvision.remote.SpringContext.Companion$getBean(kotlin.String)"></a>
-<code><span class="keyword">fun </span><span class="identifier">getBean</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.SpringContext.Companion$getBean(kotlin.String)/beanName">beanName</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a></code>
-<p>Get a Spring bean by name.</p>
-<a name="pl.treksoft.kvision.remote.SpringContext.Companion$getBean(kotlin.String, java.lang.Class((pl.treksoft.kvision.remote.SpringContext.Companion.getBean.T)))"></a>
-<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">getBean</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.SpringContext.Companion$getBean(kotlin.String, java.lang.Class((pl.treksoft.kvision.remote.SpringContext.Companion.getBean.T)))/beanName">beanName</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.SpringContext.Companion$getBean(kotlin.String, java.lang.Class((pl.treksoft.kvision.remote.SpringContext.Companion.getBean.T)))/beanClass">beanClass</span><span class="symbol">:</span>&nbsp;<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol">&lt;</span><a href="get-bean.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span><span class="symbol">)</span><span class="symbol">: </span><a href="get-bean.html#T"><span class="identifier">T</span></a></code>
-<p>Get a Spring bean by name and type.</p>
-</BODY>
-</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-spring-context/index.html b/api/pl.treksoft.kvision.remote/-spring-context/index.html
deleted file mode 100644
index 1fdadc3e..00000000
--- a/api/pl.treksoft.kvision.remote/-spring-context/index.html
+++ /dev/null
@@ -1,55 +0,0 @@
-<HTML>
-<HEAD>
-<meta charset="UTF-8">
-<title>SpringContext - kvision</title>
-<link rel="stylesheet" href="../../../style.css">
-</HEAD>
-<BODY>
-<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="./index.html">SpringContext</a><br/>
-<br/>
-<h1>SpringContext</h1>
-<code><span class="keyword">class </span><span class="identifier">SpringContext</span></code>
-<h3>Constructors</h3>
-<table>
-<tbody>
-<tr>
-<td>
-<p><a href="-init-.html">&lt;init&gt;</a></p>
-</td>
-<td>
-<code><span class="identifier">SpringContext</span><span class="symbol">(</span><span class="symbol">)</span></code></td>
-</tr>
-</tbody>
-</table>
-<h3>Functions</h3>
-<table>
-<tbody>
-<tr>
-<td>
-<p><a href="set-application-context.html">setApplicationContext</a></p>
-</td>
-<td>
-<code><span class="keyword">fun </span><span class="identifier">setApplicationContext</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.SpringContext$setApplicationContext()/applicationContext">applicationContext</span><span class="symbol">:</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code></td>
-</tr>
-</tbody>
-</table>
-<h3>Companion Object Functions</h3>
-<table>
-<tbody>
-<tr>
-<td>
-<p><a href="get-bean.html">getBean</a></p>
-</td>
-<td>
-<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">getBean</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.SpringContext.Companion$getBean(java.lang.Class((pl.treksoft.kvision.remote.SpringContext.Companion.getBean.T)))/beanClass">beanClass</span><span class="symbol">:</span>&nbsp;<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol">&lt;</span><a href="get-bean.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span><span class="symbol">)</span><span class="symbol">: </span><a href="get-bean.html#T"><span class="identifier">T</span></a></code>
-<p>Get a Spring bean by type.</p>
-<code><span class="keyword">fun </span><span class="identifier">getBean</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.SpringContext.Companion$getBean(kotlin.String)/beanName">beanName</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a></code>
-<p>Get a Spring bean by name.</p>
-<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">getBean</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.SpringContext.Companion$getBean(kotlin.String, java.lang.Class((pl.treksoft.kvision.remote.SpringContext.Companion.getBean.T)))/beanName">beanName</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.SpringContext.Companion$getBean(kotlin.String, java.lang.Class((pl.treksoft.kvision.remote.SpringContext.Companion.getBean.T)))/beanClass">beanClass</span><span class="symbol">:</span>&nbsp;<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol">&lt;</span><a href="get-bean.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span><span class="symbol">)</span><span class="symbol">: </span><a href="get-bean.html#T"><span class="identifier">T</span></a></code>
-<p>Get a Spring bean by name and type.</p>
-</td>
-</tr>
-</tbody>
-</table>
-</BODY>
-</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-spring-context/set-application-context.html b/api/pl.treksoft.kvision.remote/-spring-context/set-application-context.html
deleted file mode 100644
index 96f64914..00000000
--- a/api/pl.treksoft.kvision.remote/-spring-context/set-application-context.html
+++ /dev/null
@@ -1,14 +0,0 @@
-<HTML>
-<HEAD>
-<meta charset="UTF-8">
-<title>SpringContext.setApplicationContext - kvision</title>
-<link rel="stylesheet" href="../../../style.css">
-</HEAD>
-<BODY>
-<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="index.html">SpringContext</a>&nbsp;/&nbsp;<a href="./set-application-context.html">setApplicationContext</a><br/>
-<br/>
-<h1>setApplicationContext</h1>
-<a name="pl.treksoft.kvision.remote.SpringContext$setApplicationContext()"></a>
-<code><span class="keyword">fun </span><span class="identifier">setApplicationContext</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.SpringContext$setApplicationContext()/applicationContext">applicationContext</span><span class="symbol">:</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
-</BODY>
-</HTML>
diff --git a/api/pl.treksoft.kvision.remote/apply-routes.html b/api/pl.treksoft.kvision.remote/apply-routes.html
new file mode 100644
index 00000000..764152be
--- /dev/null
+++ b/api/pl.treksoft.kvision.remote/apply-routes.html
@@ -0,0 +1,14 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>applyRoutes - kvision</title>
+<link rel="stylesheet" href="../../style.css">
+</HEAD>
+<BODY>
+<a href="../index.html">kvision</a>&nbsp;/&nbsp;<a href="index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="./apply-routes.html">applyRoutes</a><br/>
+<br/>
+<h1>applyRoutes</h1>
+<a name="pl.treksoft.kvision.remote$applyRoutes(, pl.treksoft.kvision.remote.KVServiceManager((pl.treksoft.kvision.remote.applyRoutes.T)))"></a>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">T</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">&gt;</span> <span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">.</span><span class="identifier">applyRoutes</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote$applyRoutes(, pl.treksoft.kvision.remote.KVServiceManager((pl.treksoft.kvision.remote.applyRoutes.T)))/serviceManager">serviceManager</span><span class="symbol">:</span>&nbsp;<a href="-k-v-service-manager/index.html"><span class="identifier">KVServiceManager</span></a><span class="symbol">&lt;</span><a href="apply-routes.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
+</BODY>
+</HTML>
diff --git a/api/pl.treksoft.kvision.remote/index.html b/api/pl.treksoft.kvision.remote/index.html
index fdaa1be6..4bf1959f 100644
--- a/api/pl.treksoft.kvision.remote/index.html
+++ b/api/pl.treksoft.kvision.remote/index.html
@@ -23,6 +23,13 @@
</tr>
<tr>
<td>
+<p><a href="-call-module/index.html">CallModule</a></p>
+</td>
+<td>
+<code><span class="keyword">class </span><span class="identifier">CallModule</span></code></td>
+</tr>
+<tr>
+<td>
<p><a href="-credentials/index.html">Credentials</a></p>
</td>
<td>
@@ -48,16 +55,6 @@
</tr>
<tr>
<td>
-<p><a href="-k-v-server/index.html">KVServer</a></p>
-</td>
-<td>
-<code><span class="keyword">open</span> <span class="keyword">actual</span> <span class="keyword">class </span><span class="identifier">KVServer</span></code>
-<p>A server.
-Not used on the js platform.</p>
-</td>
-</tr>
-<tr>
-<td>
<p><a href="-k-v-service-manager/index.html">KVServiceManager</a></p>
</td>
<td>
@@ -71,11 +68,18 @@ Not used on the js platform.</p>
</td>
<td>
<code><span class="keyword">class </span><span class="identifier">LoginService</span></code>
-<p>Pac4j form login dispatcher.</p>
+<p>Form login dispatcher.</p>
</td>
</tr>
<tr>
<td>
+<p><a href="-main-module/index.html">MainModule</a></p>
+</td>
+<td>
+<code><span class="keyword">class </span><span class="identifier">MainModule</span></code></td>
+</tr>
+<tr>
+<td>
<p><a href="-profile/index.html">Profile</a></p>
</td>
<td>
@@ -98,16 +102,9 @@ Not used on the js platform.</p>
</td>
<td>
<code><span class="keyword">abstract</span> <span class="keyword">class </span><span class="identifier">SecurityMgr</span></code>
-<p>Pac4j form login dispatcher.</p>
+<p>Form login dispatcher.</p>
</td>
</tr>
-<tr>
-<td>
-<p><a href="-spring-context/index.html">SpringContext</a></p>
-</td>
-<td>
-<code><span class="keyword">class </span><span class="identifier">SpringContext</span></code></td>
-</tr>
</tbody>
</table>
<h3>Exceptions</h3>
@@ -150,6 +147,20 @@ Not used on the js platform.</p>
<p>HTTP status unauthorized (401).</p>
</td>
</tr>
+<tr>
+<td>
+<p><a href="-i-n-j-e-c-t-o-r_-k-e-y.html">INJECTOR_KEY</a></p>
+</td>
+<td>
+<code><span class="keyword">val </span><span class="identifier">INJECTOR_KEY</span><span class="symbol">: </span><span class="identifier">&lt;ERROR CLASS&gt;</span></code></td>
+</tr>
+<tr>
+<td>
+<p><a href="injector.html">injector</a></p>
+</td>
+<td>
+<code><span class="keyword">val </span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">.</span><span class="identifier">injector</span><span class="symbol">: </span><span class="identifier">&lt;ERROR CLASS&gt;</span></code></td>
+</tr>
</tbody>
</table>
<h3>Functions</h3>
@@ -164,11 +175,26 @@ Not used on the js platform.</p>
</tr>
<tr>
<td>
+<p><a href="apply-routes.html">applyRoutes</a></p>
+</td>
+<td>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">T</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">&gt;</span> <span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">.</span><span class="identifier">applyRoutes</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote$applyRoutes(, pl.treksoft.kvision.remote.KVServiceManager((pl.treksoft.kvision.remote.applyRoutes.T)))/serviceManager">serviceManager</span><span class="symbol">:</span>&nbsp;<a href="-k-v-service-manager/index.html"><span class="identifier">KVServiceManager</span></a><span class="symbol">&lt;</span><a href="apply-routes.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code></td>
+</tr>
+<tr>
+<td>
+<p><a href="kvision-init.html">kvisionInit</a></p>
+</td>
+<td>
+<code><span class="keyword">fun </span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">.</span><span class="identifier">kvisionInit</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code><br/>
+<code><span class="keyword">fun </span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">.</span><span class="identifier">kvisionInit</span><span class="symbol">(</span><span class="keyword">vararg</span> <span class="identifier" id="pl.treksoft.kvision.remote$kvisionInit(, kotlin.Array(()))/modules">modules</span><span class="symbol">:</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code></td>
+</tr>
+<tr>
+<td>
<p><a href="with-profile.html">withProfile</a></p>
</td>
<td>
-<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">RESP</span><span class="symbol">&gt;</span> <span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">.</span><span class="identifier">withProfile</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote$withProfile(, kotlin.Function1((pl.treksoft.kvision.remote.Profile, pl.treksoft.kvision.remote.withProfile.RESP)))/block">block</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="-profile/index.html"><span class="identifier">Profile</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="with-profile.html#RESP"><span class="identifier">RESP</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="with-profile.html#RESP"><span class="identifier">RESP</span></a></code><br/>
-<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">RESP</span><span class="symbol">&gt;</span> <span class="identifier">withProfile</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote$withProfile(kotlin.Function1((pl.treksoft.kvision.remote.Profile, pl.treksoft.kvision.remote.withProfile.RESP)))/block">block</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="-profile/index.html"><span class="identifier">Profile</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="with-profile.html#RESP"><span class="identifier">RESP</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="with-profile.html#RESP"><span class="identifier">RESP</span></a></code>
+<code><span class="keyword">suspend</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">RESP</span><span class="symbol">&gt;</span> <span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">.</span><span class="identifier">withProfile</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote$withProfile(, kotlin.SuspendFunction1((pl.treksoft.kvision.remote.Profile, pl.treksoft.kvision.remote.withProfile.RESP)))/block">block</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><span class="symbol">(</span><a href="-profile/index.html"><span class="identifier">Profile</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="with-profile.html#RESP"><span class="identifier">RESP</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="with-profile.html#RESP"><span class="identifier">RESP</span></a></code><br/>
+<code><span class="keyword">suspend</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">RESP</span><span class="symbol">&gt;</span> <span class="identifier">withProfile</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote$withProfile(kotlin.SuspendFunction1((pl.treksoft.kvision.remote.Profile, pl.treksoft.kvision.remote.withProfile.RESP)))/block">block</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><span class="symbol">(</span><a href="-profile/index.html"><span class="identifier">Profile</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="with-profile.html#RESP"><span class="identifier">RESP</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="with-profile.html#RESP"><span class="identifier">RESP</span></a></code>
<p>A helper extension function for processing with authenticated user profile.</p>
</td>
</tr>
diff --git a/api/pl.treksoft.kvision.remote/injector.html b/api/pl.treksoft.kvision.remote/injector.html
new file mode 100644
index 00000000..b3251d14
--- /dev/null
+++ b/api/pl.treksoft.kvision.remote/injector.html
@@ -0,0 +1,14 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>injector - kvision</title>
+<link rel="stylesheet" href="../../style.css">
+</HEAD>
+<BODY>
+<a href="../index.html">kvision</a>&nbsp;/&nbsp;<a href="index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="./injector.html">injector</a><br/>
+<br/>
+<h1>injector</h1>
+<a name="pl.treksoft.kvision.remote$injector#"></a>
+<code><span class="keyword">val </span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">.</span><span class="identifier">injector</span><span class="symbol">: </span><span class="identifier">&lt;ERROR CLASS&gt;</span></code>
+</BODY>
+</HTML>
diff --git a/api/pl.treksoft.kvision.remote/kvision-init.html b/api/pl.treksoft.kvision.remote/kvision-init.html
new file mode 100644
index 00000000..824f1fa6
--- /dev/null
+++ b/api/pl.treksoft.kvision.remote/kvision-init.html
@@ -0,0 +1,16 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>kvisionInit - kvision</title>
+<link rel="stylesheet" href="../../style.css">
+</HEAD>
+<BODY>
+<a href="../index.html">kvision</a>&nbsp;/&nbsp;<a href="index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="./kvision-init.html">kvisionInit</a><br/>
+<br/>
+<h1>kvisionInit</h1>
+<a name="pl.treksoft.kvision.remote$kvisionInit()"></a>
+<code><span class="keyword">fun </span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">.</span><span class="identifier">kvisionInit</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code><br/>
+<a name="pl.treksoft.kvision.remote$kvisionInit(, kotlin.Array(()))"></a>
+<code><span class="keyword">fun </span><span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">.</span><span class="identifier">kvisionInit</span><span class="symbol">(</span><span class="keyword">vararg</span> <span class="identifier" id="pl.treksoft.kvision.remote$kvisionInit(, kotlin.Array(()))/modules">modules</span><span class="symbol">:</span>&nbsp;<span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
+</BODY>
+</HTML>
diff --git a/api/pl.treksoft.kvision.remote/with-profile.html b/api/pl.treksoft.kvision.remote/with-profile.html
index 787964b1..5f4c4521 100644
--- a/api/pl.treksoft.kvision.remote/with-profile.html
+++ b/api/pl.treksoft.kvision.remote/with-profile.html
@@ -8,10 +8,10 @@
<a href="../index.html">kvision</a>&nbsp;/&nbsp;<a href="index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="./with-profile.html">withProfile</a><br/>
<br/>
<h1>withProfile</h1>
-<a name="pl.treksoft.kvision.remote$withProfile(, kotlin.Function1((pl.treksoft.kvision.remote.Profile, pl.treksoft.kvision.remote.withProfile.RESP)))"></a>
-<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">RESP</span><span class="symbol">&gt;</span> <span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">.</span><span class="identifier">withProfile</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote$withProfile(, kotlin.Function1((pl.treksoft.kvision.remote.Profile, pl.treksoft.kvision.remote.withProfile.RESP)))/block">block</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="-profile/index.html"><span class="identifier">Profile</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="with-profile.html#RESP"><span class="identifier">RESP</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="with-profile.html#RESP"><span class="identifier">RESP</span></a></code><br/>
-<a name="pl.treksoft.kvision.remote$withProfile(kotlin.Function1((pl.treksoft.kvision.remote.Profile, pl.treksoft.kvision.remote.withProfile.RESP)))"></a>
-<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">RESP</span><span class="symbol">&gt;</span> <span class="identifier">withProfile</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote$withProfile(kotlin.Function1((pl.treksoft.kvision.remote.Profile, pl.treksoft.kvision.remote.withProfile.RESP)))/block">block</span><span class="symbol">:</span>&nbsp;<span class="symbol">(</span><a href="-profile/index.html"><span class="identifier">Profile</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="with-profile.html#RESP"><span class="identifier">RESP</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="with-profile.html#RESP"><span class="identifier">RESP</span></a></code>
+<a name="pl.treksoft.kvision.remote$withProfile(, kotlin.SuspendFunction1((pl.treksoft.kvision.remote.Profile, pl.treksoft.kvision.remote.withProfile.RESP)))"></a>
+<code><span class="keyword">suspend</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">RESP</span><span class="symbol">&gt;</span> <span class="identifier">&lt;ERROR CLASS&gt;</span><span class="symbol">.</span><span class="identifier">withProfile</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote$withProfile(, kotlin.SuspendFunction1((pl.treksoft.kvision.remote.Profile, pl.treksoft.kvision.remote.withProfile.RESP)))/block">block</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><span class="symbol">(</span><a href="-profile/index.html"><span class="identifier">Profile</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="with-profile.html#RESP"><span class="identifier">RESP</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="with-profile.html#RESP"><span class="identifier">RESP</span></a></code><br/>
+<a name="pl.treksoft.kvision.remote$withProfile(kotlin.SuspendFunction1((pl.treksoft.kvision.remote.Profile, pl.treksoft.kvision.remote.withProfile.RESP)))"></a>
+<code><span class="keyword">suspend</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">RESP</span><span class="symbol">&gt;</span> <span class="identifier">withProfile</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote$withProfile(kotlin.SuspendFunction1((pl.treksoft.kvision.remote.Profile, pl.treksoft.kvision.remote.withProfile.RESP)))/block">block</span><span class="symbol">:</span>&nbsp;<span class="keyword">suspend </span><span class="symbol">(</span><a href="-profile/index.html"><span class="identifier">Profile</span></a><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="with-profile.html#RESP"><span class="identifier">RESP</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="with-profile.html#RESP"><span class="identifier">RESP</span></a></code>
<p>A helper extension function for processing with authenticated user profile.</p>
</BODY>
</HTML>