casper_client/rpcs/v1_6_0/
query_global_state.rs1use serde::{Deserialize, Serialize};
2
3use casper_types::{BlockHeader, Key, ProtocolVersion, StoredValue};
4
5use crate::rpcs::common::GlobalStateIdentifier;
6pub(crate) use crate::rpcs::v1_4_5::query_global_state::QUERY_GLOBAL_STATE_METHOD;
7
8#[cfg(doc)]
9use crate::BlockIdentifier;
10
11#[derive(Clone, Serialize, Deserialize, Debug)]
12#[serde(deny_unknown_fields)]
13pub(crate) struct QueryGlobalStateParams {
14 state_identifier: Option<GlobalStateIdentifier>,
17 key: String,
19 path: Vec<String>,
21}
22
23impl QueryGlobalStateParams {
24 pub(crate) fn new(
25 state_identifier: Option<GlobalStateIdentifier>,
26 key: Key,
27 path: Vec<String>,
28 ) -> Self {
29 QueryGlobalStateParams {
30 state_identifier,
31 key: key.to_formatted_string(),
32 path,
33 }
34 }
35}
36
37#[derive(Serialize, Deserialize, Debug, Clone)]
39#[serde(deny_unknown_fields)]
40pub struct QueryGlobalStateResult {
41 pub api_version: ProtocolVersion,
43 pub block_header: Option<BlockHeader>,
45 pub stored_value: StoredValue,
47 pub merkle_proof: String,
49}