23 #include "WrapperCommon.hpp"
24 #include "immutable_ids.hpp"
25 #include "EverReTransferArgs.hpp"
36 [[
internal, answer_id, deploy]]
38 uint128 reserve_wallet_evers,
39 cell internal_wallet_code
43 [[
internal, answer_id]]
55 FlexDeployWalletArgs args
66 uint256 sender_pubkey,
67 address_opt sender_owner,
70 address_opt out_owner,
78 address_opt answer_addr,
84 [[
internal, answer_id]]
88 [[
internal, answer_id]]
89 std::pair<address_opt, uint256>
cloned() = immutable_ids::wrapper_cloned_id;
95 uint256 cloned_pubkey,
97 uint256 wrappers_cfg_code_hash,
98 uint16 wrappers_cfg_code_depth
99 ) = immutable_ids::wrapper_set_cloned_id;
103 wrapper_details_info
getDetails() = immutable_ids::wrapper_get_details_id;
118 ) = immutable_ids::wrapper_get_wallet_address_id;
124 using IWrapperEverPtr = handle<IWrapperEver>;
130 static std::pair<StateInit, uint256> execute(DWrapper data, cell code) {
131 cell data_cl = prepare_persistent_data<IWrapperEver, void, DWrapper>({}, data);
132 StateInit init { {}, {}, code, data_cl, {} };
133 cell init_cl = build(init).make_cell();
134 return { init, uint256(tvm_hash(init_cl)) };
TONTokenWallet contract interfaces and data-structs.
WrapperEver contract interface.
Definition: WrapperEver.hpp:33
uint128 requestTotalGranted()
Request total granted tokens.
wrapper_details_info getDetails()
Get info about contract state details.
address getWalletAddress(uint256 pubkey, address_opt owner)
Calculate flex tip3 wallet address.
void transferFromReserveWallet(address_opt answer_addr, address to, uint128 tokens)
Transfer gathered fees from reserve wallet to other wallet. Request allowed only from Flex root.
bool init(uint128 reserve_wallet_evers, cell internal_wallet_code)
Additional initialization on deploy.
void setCloned(address_opt cloned, uint256 cloned_pubkey, address wrappers_cfg, uint256 wrappers_cfg_code_hash, uint16 wrappers_cfg_code_depth)
Set cloned wrapper address.
void burn(uint128 tokens, address answer_addr, uint256 sender_pubkey, address_opt sender_owner, uint256 out_pubkey, address_opt out_owner, opt< cell > notify)
Burn internal tokens.
void onEverTransfer(uint128 tokens, FlexDeployWalletArgs args)
Implements ITONTokenWalletNotify::onEverTransfer(). Notification about incoming tokens from user wall...
Tip3Config getTip3Config()
Get Tip3 configuration.
address getReserveWallet()
Get reserve token wallet address for this Wrapper.
address deployEmptyWallet(uint256 pubkey, address_opt owner, uint128 evers)
Deploy empty wallet.
std::pair< address_opt, uint256 > cloned()
Request cloned wrapper address.
bool hasInternalWalletCode()
If internal wallet code was set up.