4 #ifndef DJINNI_GENERATED_BITCOINLIKETRANSACTIONBUILDER_HPP 5 #define DJINNI_GENERATED_BITCOINLIKETRANSACTIONBUILDER_HPP 7 #include "../utils/optional.hpp" 12 #ifndef LIBCORE_EXPORT 14 #include <libcore_export.h> 16 #define LIBCORE_EXPORT 20 namespace ledger {
namespace core {
namespace api {
23 class BitcoinLikeScript;
24 class BitcoinLikeTransaction;
25 class BitcoinLikeTransactionCallback;
26 enum class BitcoinLikePickingStrategy;
40 virtual std::shared_ptr<BitcoinLikeTransactionBuilder> addInput(
const std::string & transactionHash, int32_t index, int32_t sequence) = 0;
46 virtual std::shared_ptr<BitcoinLikeTransactionBuilder> addOutput(
const std::shared_ptr<Amount> & amount,
const std::shared_ptr<BitcoinLikeScript> & script) = 0;
52 virtual std::shared_ptr<BitcoinLikeTransactionBuilder> addChangePath(
const std::string & path) = 0;
61 virtual std::shared_ptr<BitcoinLikeTransactionBuilder> excludeUtxo(
const std::string & transactionHash, int32_t outputIndex) = 0;
67 virtual std::shared_ptr<BitcoinLikeTransactionBuilder> setNumberOfChangeAddresses(int32_t count) = 0;
73 virtual std::shared_ptr<BitcoinLikeTransactionBuilder> setMaxAmountOnChange(
const std::shared_ptr<Amount> & amount) = 0;
79 virtual std::shared_ptr<BitcoinLikeTransactionBuilder> setMinAmountOnChange(
const std::shared_ptr<Amount> & amount) = 0;
88 virtual std::shared_ptr<BitcoinLikeTransactionBuilder> pickInputs(BitcoinLikePickingStrategy strategy, int32_t sequence) = 0;
96 virtual std::shared_ptr<BitcoinLikeTransactionBuilder> sendToAddress(
const std::shared_ptr<Amount> & amount,
const std::string & address) = 0;
103 virtual std::shared_ptr<BitcoinLikeTransactionBuilder> wipeToAddress(
const std::string & address) = 0;
109 virtual std::shared_ptr<BitcoinLikeTransactionBuilder> setFeesPerByte(
const std::shared_ptr<Amount> & fees) = 0;
112 virtual void build(
const std::shared_ptr<BitcoinLikeTransactionCallback> & callback) = 0;
118 virtual std::shared_ptr<BitcoinLikeTransactionBuilder> clone() = 0;
121 virtual void reset() = 0;
131 #endif //DJINNI_GENERATED_BITCOINLIKETRANSACTIONBUILDER_HPP Definition: BitcoinLikeTransactionBuilder.hpp:29
Definition: Currency.hpp:23
Definition: Account.cpp:8