in lib/src/client.dart [196:209]
void _handleSingleResponse(response) {
if (!_isResponseValid(response)) return;
var id = response['id'];
id = (id is String) ? int.parse(id) : id;
var request = _pendingRequests.remove(id)!;
if (response.containsKey('result')) {
request.completer.complete(response['result']);
} else {
request.completer.completeError(
RpcException(response['error']['code'], response['error']['message'],
data: response['error']['data']),
request.chain);
}
}