I've reached the point in my firmware where I have to create wrappers around the different crypto constructs because their APIs are so all over the place:

<hpke::kem::X25519HkdfSha256 as Kem>::PrivateKey

rsa::pkcs1v15::SigningKey<rsa::sha2::Sha256>

ed25519_dalek::SigningKey