canic_core/dto/
cascade.rs1use crate::dto::{prelude::*, state::FleetStateInput};
2#[derive(CandidType, Clone, Debug, Deserialize)]
9pub struct StateSnapshotInput {
10 pub fleet_state: Option<FleetStateInput>,
11}
12
13#[derive(CandidType, Clone, Debug, Deserialize)]
20pub struct TopologySnapshotInput {
21 pub parents: Vec<TopologyPathNode>,
22 pub children_map: Vec<TopologyChildren>,
24}
25
26#[derive(CandidType, Clone, Debug, Deserialize)]
33pub struct TopologyChildren {
34 pub parent_pid: Principal,
35 pub children: Vec<TopologyDirectChild>,
36}
37
38#[derive(CandidType, Clone, Debug, Deserialize)]
45pub struct TopologyDirectChild {
46 pub pid: Principal,
47 pub role: CanisterRole,
48}
49
50#[derive(CandidType, Clone, Debug, Deserialize)]
57pub struct TopologyPathNode {
58 pub pid: Principal,
59 pub role: CanisterRole,
60 pub parent_pid: Option<Principal>,
61}