use rasn::prelude::*;
use crate::types::{Imsi, IsdnAddressString};
pub type TraceReference = OctetString;
pub type TraceType = Integer;
#[derive(Debug, Clone, PartialEq, Eq, AsnType, Decode, Encode)]
pub struct ActivateTraceModeArg {
#[rasn(tag(context, 0))]
pub imsi: Option<Imsi>,
#[rasn(tag(context, 1))]
pub trace_reference: TraceReference,
#[rasn(tag(context, 2))]
pub trace_type: TraceType,
#[rasn(tag(context, 3))]
pub omc_id: Option<OctetString>,
}
#[derive(Debug, Clone, PartialEq, Eq, AsnType, Decode, Encode)]
pub struct ActivateTraceModeRes {}
#[derive(Debug, Clone, PartialEq, Eq, AsnType, Decode, Encode)]
pub struct DeactivateTraceModeArg {
#[rasn(tag(context, 0))]
pub imsi: Option<Imsi>,
#[rasn(tag(context, 1))]
pub trace_reference: TraceReference,
}
#[derive(Debug, Clone, PartialEq, Eq, AsnType, Decode, Encode)]
pub struct DeactivateTraceModeRes {}
#[derive(Debug, Clone, PartialEq, Eq, AsnType, Decode, Encode)]
pub struct SendImsiArg {
pub msisdn: IsdnAddressString,
}
#[derive(Debug, Clone, PartialEq, Eq, AsnType, Decode, Encode)]
pub struct SendImsiRes {
pub imsi: Imsi,
}
pub mod op_codes {
pub const ACTIVATE_TRACE_MODE: i64 = 50;
pub const DEACTIVATE_TRACE_MODE: i64 = 51;
pub const SEND_IMSI: i64 = 58;
}