pub trait Take {
// Required methods
fn needs_one(self) -> Result<Value, RpcError>;
fn needs_two(self) -> Result<(Value, Value), RpcError>;
fn needs_three(self) -> Result<(Value, Value, Value), RpcError>;
fn needs_one_or_two(self) -> Result<(Value, Value), RpcError>;
fn needs_one_two_or_three(self) -> Result<(Value, Value, Value), RpcError>;
fn needs_three_or_four(
self,
) -> Result<(Value, Value, Value, Value), RpcError>;
}