Ah ok. I don't write Rust either but maybe it'd look like:
impl State<Running> {
pub fn next(self, Trigger<Hibernate>) -> State<Hibernate> {
State { _inner: Hibernate {} }
}
pub fn next(self, Trigger<Terminate>) -> State<Terminate> {
State { _inner: Terminate {} }
}
}