use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
#[serde(tag = "type")]
pub enum Signature {
#[serde(rename="ed25519")]
Ed25519(Box<models::SignatureEd25519>),
#[serde(rename="secp256k1_ecdsa")]
Secp256k1Ecdsa(Box<models::SignatureSecp256k1Ecdsa>),
#[serde(rename="web_authn")]
WebAuthn(Box<models::SignatureWebAuthn>),
#[serde(rename="keyless")]
Keyless(Box<models::SignatureKeyless>),
}
impl Default for Signature {
fn default() -> Self {
Self::Ed25519(Default::default())
}
}