-module(wemote). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch]). -export([call/3]). -export_type([timeout_/0, rpc_error/0, error/0]). -type timeout_() :: infinity | {milliseconds, integer()}. -type rpc_error() :: badarg | noconnection | system_limit | timeout | notsup. -type error() :: {threw, gleam@dynamic:dynamic_()} | {exception, gleam@dynamic:dynamic_()} | {exited, gleam@dynamic:dynamic_()} | {runtime_error, gleam@dynamic:dynamic_(), gleam@dynamic:dynamic_()} | {rpc_error, rpc_error()} | {other, gleam@dynamic:dynamic_()}. -spec call(gleam@erlang@node:node_(), fun(() -> GDE), timeout_()) -> {ok, GDE} | {error, error()}. call(Node, Fun, Timeout) -> wemote_ffi:call(Node, Fun, Timeout).