type-safe jrpc framework for typescript