using System.Collections;

namespace XGame.Framework.Serialization
{
    public interface IWriter
    {
        void Write(bool value);

        void Write(sbyte value);

        void Write(byte value);

        void Write(short value);

        void Write(ushort value);

        void Write(int value);

        void Write(uint value);

        void Write(long value);

        void Write(ulong value);

        void Write(float value);

        void Write(double value);

        void Write(char value);

        void Write(string value);

        void Write(byte[] value);

        void Write(ISerializable data);

        void Write(IEnumerable enumerable);
    }
}
