+struct Tariffs {
+ virtual ~Tariffs() = default;
+
+ virtual int ReadTariffs() = 0;
+ virtual const Tariff* FindByName(const std::string& name) const = 0;
+ virtual const Tariff* GetNoTariff() const = 0;
+ virtual int Del(const std::string& name, const Admin* admin) = 0;
+ virtual int Add(const std::string& name, const Admin* admin) = 0;
+ virtual int Chg(const TariffData& td, const Admin* admin) = 0;
+
+ virtual void AddNotifierAdd(NotifierBase<TariffData>* notifier) = 0;
+ virtual void DelNotifierAdd(NotifierBase<TariffData>* notifier) = 0;
+
+ virtual void AddNotifierDel(NotifierBase<TariffData>* notifier) = 0;
+ virtual void DelNotifierDel(NotifierBase<TariffData>* notifier) = 0;
+
+ virtual void GetTariffsData(std::vector<TariffData>* tdl) const = 0;
+
+ virtual size_t Count() const = 0;
+
+ virtual const std::string& GetStrError() const = 0;