sui_graphql_client/query_types/
events.rs1use crate::query_types::schema;
5use crate::query_types::transaction::TransactionBlockDigest;
6use crate::query_types::Address;
7use crate::query_types::Base64;
8use crate::query_types::PageInfo;
9
10#[derive(cynic::QueryFragment, Debug)]
15#[cynic(schema = "rpc", graphql_type = "Query", variables = "EventsQueryArgs")]
16pub struct EventsQuery {
17 #[arguments(after: $after, before: $before, filter: $filter, first: $first, last: $last)]
18 pub events: EventConnection,
19}
20
21#[derive(cynic::QueryVariables, Debug)]
26pub struct EventsQueryArgs<'a> {
27 pub filter: Option<EventFilter>,
28 pub after: Option<&'a str>,
29 pub before: Option<&'a str>,
30 pub first: Option<i32>,
31 pub last: Option<i32>,
32}
33
34#[derive(cynic::QueryFragment, Debug)]
39#[cynic(schema = "rpc", graphql_type = "EventConnection")]
40pub struct EventConnection {
41 pub page_info: PageInfo,
42 pub nodes: Vec<Event>,
43}
44
45#[derive(Clone, cynic::InputObject, Debug)]
46#[cynic(schema = "rpc", graphql_type = "EventFilter")]
47pub struct EventFilter {
48 pub emitting_module: Option<String>,
49 pub event_type: Option<String>,
50 pub sender: Option<Address>,
51 pub transaction_digest: Option<String>,
52}
53
54#[derive(cynic::QueryFragment, Debug)]
55#[cynic(schema = "rpc", graphql_type = "Event")]
56pub struct Event {
57 pub bcs: Base64,
58 pub transaction_block: Option<TransactionBlockDigest>,
59}