using Barotrauma.LuaCs.Configuration;
using Barotrauma.LuaCs.Data;
using Barotrauma.LuaCs.Networking;
using Barotrauma.Networking;
namespace Barotrauma.LuaCs.Networking;
public interface INetVar : IVarId
{
///
/// Synchronized network id, uninitialized if value is zero/0. Used by Networking service.
///
ushort NetId { get; }
///
/// Synchronization type
///
NetSync SyncType { get; }
///
/// Permissions needed by clients to send net-events or receive net messages.
///
ClientPermissions WritePermissions { get; }
void ReadNetMessage(INetReadMessage message);
void WriteNetMessage(INetWriteMessage message);
void Initialize(ushort netId, NetSync syncMode, ClientPermissions writePermissions);
}