1use scale::{Decode, Encode};
2
3pub type AccountId = [u8; 32];
4pub type H256 = [u8; 32];
5
6#[derive(Encode, Decode)]
7pub struct QueryRequest {
8 pub origin: Option<AccountId>,
9 pub payload: Vec<u8>,
10 pub reply_tx: i32,
11}
12
13#[derive(Encode, Decode)]
14#[non_exhaustive]
15pub enum SystemMessage {
16 PinkLog {
17 block_number: u32,
18 contract: AccountId,
19 in_query: bool,
20 timestamp_ms: u64,
21 level: u8,
22 message: String,
23 },
24 PinkEvent {
25 block_number: u32,
26 contract: AccountId,
27 topics: Vec<H256>,
28 payload: Vec<u8>,
29 },
30 PinkMessageOutput {
31 block_number: u32,
32 origin: AccountId,
33 contract: AccountId,
34 nonce: Vec<u8>,
35 output: Vec<u8>,
36 },
37}