wasi_sol/core/
response.rs

1use serde::{Deserialize, Serialize};
2use serde_json::Value;
3
4#[derive(Serialize, Deserialize, Debug)]
5pub struct SignedMessage {
6    #[serde(rename = "type")]
7    message_type: String,
8    data: Vec<u8>,
9}
10
11#[derive(Serialize, Deserialize, Debug)]
12pub struct Signature {
13    #[serde(rename = "type")]
14    signature_type: String,
15    data: Vec<u8>,
16}
17
18#[derive(Serialize, Deserialize, Debug)]
19pub struct MessageObject {
20    address: String,
21    #[serde(rename = "SignedMessage")]
22    signed_message: SignedMessage,
23    signature: Signature,
24}
25
26#[derive(Serialize, Deserialize, Debug)]
27pub struct JsSignature {
28    #[serde(rename = "type")]
29    pub sig_type: String,
30    pub data: Vec<u8>,
31}
32
33#[derive(Serialize, Deserialize, Debug)]
34pub struct JsSignatureResponse {
35    pub signature: JsSignature,
36    #[serde(rename = "publicKey")]
37    pub public_key: String,
38}
39
40#[derive(Serialize, Deserialize, Debug)]
41pub struct SignaturesObject {
42    pub signatures: Vec<SignatureArray>,
43}
44
45#[derive(Serialize, Deserialize, Debug)]
46pub struct SignatureArray {
47    #[serde(flatten)]
48    pub signature: serde_json::Map<String, Value>,
49}
50
51#[derive(Deserialize, Debug)]
52pub struct JsSignatureObject {
53    pub signature: String,
54    #[serde(rename = "publicKey")]
55    pub public_key: String,
56}