#pragma once #include #include #include namespace td { namespace client { class IClientSocket { public: utils::Signal<> OnConnect; utils::Signal<> OnDisconnect; utils::Signal OnReceive; virtual void Send(const protocol::PacketBase& a_Packet) = 0; virtual void Disconnect() = 0; IClientSocket() {} virtual ~IClientSocket() {} }; } // namespace client } // namespace td