1// SPDX-FileCopyrightText: 2026 The vihaco Authors 2// SPDX-License-Identifier: MIT 3 4use crate::Effects; 5 6pub trait Observe<E: 'static> { 7 type Effect: 'static; 8 type Error; 9 10 fn observe(&mut self, effect: &E) -> Result<Effects<Self::Effect>, Self::Error>; 11}