use crate::fleet_ensure::{
model::capacity_import::CapacityImportPlanRecord,
ops::capacity_import::journal::CapacityImportJournalError,
view::capacity_import::{CapacityImportDestinationView, CapacityImportSourceView},
};
use candid::Principal;
use std::future::Future;
pub trait CapacityImportObserver {
fn destination(
&mut self,
plan: &CapacityImportPlanRecord,
) -> impl Future<Output = Result<CapacityImportDestinationView, CapacityImportJournalError>>;
fn source(
&mut self,
plan: &CapacityImportPlanRecord,
canister: Principal,
) -> impl Future<Output = Result<CapacityImportSourceView, CapacityImportJournalError>>;
}