using Content.Shared.DeviceLinking.Events;
using Content.Shared.DeviceNetwork;
namespace Content.Shared.DeviceLinking;
///
/// A network payload that can be nested inside .
///
public partial interface ISignalNetworkPayload : INetworkPayload;
///
/// A network payload that raises when successfully delivered.
/// Optionally contains a to provide additional data for the event.
///
public partial record struct SignalPayload : INetworkPayload
{
///
/// A signal port that was invoked.
///
[DataField]
public string InvokedPort;
}
///
/// A network payload that raises when successfully delivered.
/// Optionally contains a to provide additional data for the event.
///
public partial record struct SignalPayload : INetworkPayload where T : ISignalNetworkPayload
{
///
/// A signal port that was invoked.
///
[DataField]
public string InvokedPort;
///
/// Optional additional data about the signal.
///
[DataField]
public T Payload;
}