@type t() :: %DSMR.Telegram{
actual_switch_position: String.t(),
actual_threshold_electricity: DSMR.Measurement.t(),
checksum: String.t(),
currently_delivered_l1: DSMR.Measurement.t(),
currently_delivered_l2: DSMR.Measurement.t(),
currently_delivered_l3: DSMR.Measurement.t(),
currently_returned_l1: DSMR.Measurement.t(),
currently_returned_l2: DSMR.Measurement.t(),
currently_returned_l3: DSMR.Measurement.t(),
electricity_currently_delivered: DSMR.Measurement.t(),
electricity_currently_returned: DSMR.Measurement.t(),
electricity_delivered_1: DSMR.Measurement.t(),
electricity_delivered_2: DSMR.Measurement.t(),
electricity_returned_1: DSMR.Measurement.t(),
electricity_returned_2: DSMR.Measurement.t(),
electricity_tariff_indicator: String.t(),
equipment_id: String.t(),
header: String.t(),
mbus_devices: [DSMR.MBusDevice.t()],
measured_at: DSMR.Timestamp.t(),
phase_power_current_l1: DSMR.Measurement.t(),
phase_power_current_l2: DSMR.Measurement.t(),
phase_power_current_l3: DSMR.Measurement.t(),
power_failures_count: String.t(),
power_failures_log: [{DSMR.Timestamp.t(), DSMR.Measurement.t()}],
power_failures_long_count: String.t(),
text_message: String.t(),
text_message_code: String.t(),
version: String.t(),
voltage_sags_l1_count: String.t(),
voltage_sags_l2_count: String.t(),
voltage_sags_l3_count: String.t(),
voltage_swells_l1_count: String.t(),
voltage_swells_l2_count: String.t(),
voltage_swells_l3_count: String.t()
}