#pragma once #include #include #include #include "../entities/User.h" namespace uad { class IUserDAO { public: virtual std::string Create(const User& created_user) = 0; virtual std::optional GetByUUID(const std::string& uuid) = 0; virtual std::optional GetByLogin(const std::string& login) = 0; virtual std::pair> GetAll(size_t limit, size_t offset) = 0; virtual bool Update(const User& u) = 0; virtual bool Delete(const std::string& uuid) = 0; virtual ~IUserDAO() = default; }; }