#ifndef MAP_HPP_INCLUDED
#define MAP_HPP_INCLUDED

#include <cstdint>
#include "Object.hpp"
#include "Set.hpp"

namespace Internal
{
    class Map : public Object
    {
        public:
            Map(const void* Obj);

            Map() = default;
            Map(Map&& Obj) = default;
            Map(const Map& Obj) = default;
            Map& operator=(Map&& Obj) = default;
            Map& operator=(const Map& Obj) = default;

            Object GetValue(Object Key) const;
            Set GetKeySet() const;
    };
}

#endif // MAP_HPP_INCLUDED
