use rasn::prelude::*;
use crate::types::{AddressString, IsdnAddressString};
#[derive(Debug, Clone, Copy, PartialEq, Eq, AsnType, Decode, Encode)]
#[rasn(enumerated)]
pub enum SmDeliveryOutcome {
MemoryCapacityExceeded = 0,
AbsentSubscriber = 1,
SuccessfulTransfer = 2,
}
#[derive(Debug, Clone, PartialEq, Eq, AsnType, Decode, Encode)]
pub struct ReportSmDeliveryStatusArg {
pub msisdn: IsdnAddressString,
pub service_centre_address: AddressString,
pub sm_delivery_outcome: SmDeliveryOutcome,
}
#[derive(Debug, Clone, PartialEq, Eq, AsnType, Decode, Encode)]
pub struct ReportSmDeliveryStatusRes {
pub stored_msisdn: Option<IsdnAddressString>,
}