1use cosmwasm_std::Coin;
2use cosmwasm_schema::cw_serde;
3
4#[cw_serde]
5pub struct Link {
6 pub from: String,
7 pub to: String,
8}
9
10#[cw_serde]
11pub struct Trigger {
12 pub period: Option<u64>,
13 pub block: Option<u64>,
14}
15
16#[cw_serde]
17pub struct Load {
18 pub input: String,
19 pub gas_price: Coin,
20}
21
22#[cw_serde]
23pub struct Route {
24 pub source: String,
25 pub destination: String,
26 pub name: String,
27 pub value: Vec<Coin>,
28}
29
30#[cw_serde]
31pub struct NeuronBandwidth {
32 pub neuron: String,
33 pub remained_value: Option<u64>,
34 pub last_updated_block: u64,
35 pub max_value: Option<u64>,
36}
37
38#[cw_serde]
39pub struct Thought {
40 pub program: String,
41 pub trigger: Trigger,
42 pub load: Load,
43 pub name: String,
44 pub particle: String,
45}
46#[cw_serde]
47pub struct ThoughtStats {
48 pub program: String,
49 pub name: String,
50 pub calls: u64,
51 pub fees: u64,
52 pub gas: u64,
53 pub last_block: u64,
54}