ledger-core
ERC20LikeAccount.hpp
1 // AUTOGENERATED FILE - DO NOT MODIFY!
2 // This file generated by Djinni from erc20.djinni
3 
4 #ifndef DJINNI_GENERATED_ERC20LIKEACCOUNT_HPP
5 #define DJINNI_GENERATED_ERC20LIKEACCOUNT_HPP
6 
7 #include <chrono>
8 #include <memory>
9 #include <string>
10 #include <vector>
11 #ifndef LIBCORE_EXPORT
12  #if defined(_MSC_VER)
13  #include <libcore_export.h>
14  #else
15  #define LIBCORE_EXPORT
16  #endif
17 #endif
18 
19 namespace ledger { namespace core { namespace api {
20 
21 class BigInt;
22 class BigIntCallback;
23 class BinaryCallback;
24 class ERC20LikeOperation;
25 class OperationQuery;
26 enum class TimePeriod;
27 struct ERC20Token;
28 
30 class LIBCORE_EXPORT ERC20LikeAccount {
31 public:
32  virtual ~ERC20LikeAccount() {}
33 
35  virtual ERC20Token getToken() = 0;
36 
38  virtual std::string getAddress() = 0;
39 
41  virtual void getBalance(const std::shared_ptr<BigIntCallback> & callback) = 0;
42 
47  virtual std::vector<std::shared_ptr<BigInt>> getBalanceHistoryFor(const std::chrono::system_clock::time_point & start, const std::chrono::system_clock::time_point & end, TimePeriod period) = 0;
48 
50  virtual std::vector<std::shared_ptr<ERC20LikeOperation>> getOperations() = 0;
51 
53  virtual void getTransferToAddressData(const std::shared_ptr<BigInt> & amount, const std::string & address, const std::shared_ptr<BinaryCallback> & data) = 0;
54 
55  virtual std::shared_ptr<OperationQuery> queryOperations() = 0;
56 };
57 
58 } } } // namespace ledger::core::api
59 #endif //DJINNI_GENERATED_ERC20LIKEACCOUNT_HPP
Definition: ERC20LikeAccount.hpp:30
Definition: Account.cpp:8
Definition: ERC20Token.hpp:15