ledger-core
TezosLikeTransactionBuilder.hpp
1 // AUTOGENERATED FILE - DO NOT MODIFY!
2 // This file generated by Djinni from tezos_like_wallet.djinni
3 
4 #ifndef DJINNI_GENERATED_TEZOSLIKETRANSACTIONBUILDER_HPP
5 #define DJINNI_GENERATED_TEZOSLIKETRANSACTIONBUILDER_HPP
6 
7 #include <cstdint>
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 Amount;
22 class BigInt;
23 class TezosLikeTransaction;
24 class TezosLikeTransactionCallback;
25 enum class TezosOperationTag;
26 struct Currency;
27 
28 class LIBCORE_EXPORT TezosLikeTransactionBuilder {
29 public:
30  virtual ~TezosLikeTransactionBuilder() {}
31 
36  virtual std::shared_ptr<TezosLikeTransactionBuilder> setType(TezosOperationTag type) = 0;
37 
44  virtual std::shared_ptr<TezosLikeTransactionBuilder> sendToAddress(const std::shared_ptr<Amount> & amount, const std::string & address) = 0;
45 
51  virtual std::shared_ptr<TezosLikeTransactionBuilder> wipeToAddress(const std::string & address) = 0;
52 
57  virtual std::shared_ptr<TezosLikeTransactionBuilder> setFees(const std::shared_ptr<Amount> & fees) = 0;
58 
63  virtual std::shared_ptr<TezosLikeTransactionBuilder> setGasLimit(const std::shared_ptr<Amount> & gasLimit) = 0;
64 
70  virtual std::shared_ptr<TezosLikeTransactionBuilder> setStorageLimit(const std::shared_ptr<BigInt> & storageLimit) = 0;
71 
73  virtual void build(const std::shared_ptr<TezosLikeTransactionCallback> & callback) = 0;
74 
79  virtual std::shared_ptr<TezosLikeTransactionBuilder> clone() = 0;
80 
82  virtual void reset() = 0;
83 
84  static std::shared_ptr<TezosLikeTransaction> parseRawUnsignedTransaction(const Currency & currency, const std::vector<uint8_t> & rawTransaction);
85 
86  static std::shared_ptr<TezosLikeTransaction> parseRawSignedTransaction(const Currency & currency, const std::vector<uint8_t> & rawTransaction);
87 };
88 
89 } } } // namespace ledger::core::api
90 #endif //DJINNI_GENERATED_TEZOSLIKETRANSACTIONBUILDER_HPP
Definition: Currency.hpp:23
Definition: Account.cpp:8
Definition: TezosLikeTransactionBuilder.hpp:28