import * as $ from "@manahippo/move-to-ts"; import {AptosDataCache, AptosParserRepo, DummyCache, AptosLocalCache} from "@manahippo/move-to-ts"; import {U8, U64, U128} from "@manahippo/move-to-ts"; import {u8, u64, u128} from "@manahippo/move-to-ts"; import {TypeParamDeclType, FieldDeclType} from "@manahippo/move-to-ts"; import {AtomicTypeTag, StructTag, TypeTag, VectorTag, SimpleStructTag} from "@manahippo/move-to-ts"; import {OptionTransaction} from "@manahippo/move-to-ts"; import {HexString, AptosClient, AptosAccount, TxnBuilderTypes, Types} from "aptos"; import * as Signer from "./signer"; import * as Stake from "./stake"; import * as Staking_contract from "./staking_contract"; import * as Vector from "./vector"; import * as Vesting from "./vesting"; export const packageName = "AptosFramework"; export const moduleAddress = new HexString("0x1"); export const moduleName = "staking_proxy"; export function set_operator_ ( owner: HexString, old_operator: HexString, new_operator: HexString, $c: AptosDataCache, ): void { set_vesting_contract_operator_(owner, $.copy(old_operator), $.copy(new_operator), $c); set_staking_contract_operator_(owner, $.copy(old_operator), $.copy(new_operator), $c); set_stake_pool_operator_(owner, $.copy(new_operator), $c); return; } export function buildPayload_set_operator ( old_operator: HexString, new_operator: HexString, isJSON = false, ): TxnBuilderTypes.TransactionPayloadEntryFunction | Types.TransactionPayload_EntryFunctionPayload { const typeParamStrings = [] as string[]; return $.buildPayload( new HexString("0x1"), "staking_proxy", "set_operator", typeParamStrings, [ old_operator, new_operator, ], isJSON, ); } export function set_stake_pool_operator_ ( owner: HexString, new_operator: HexString, $c: AptosDataCache, ): void { let owner_address; owner_address = Signer.address_of_(owner, $c); if (Stake.stake_pool_exists_($.copy(owner_address), $c)) { Stake.set_operator_(owner, $.copy(new_operator), $c); } else{ } return; } export function buildPayload_set_stake_pool_operator ( new_operator: HexString, isJSON = false, ): TxnBuilderTypes.TransactionPayloadEntryFunction | Types.TransactionPayload_EntryFunctionPayload { const typeParamStrings = [] as string[]; return $.buildPayload( new HexString("0x1"), "staking_proxy", "set_stake_pool_operator", typeParamStrings, [ new_operator, ], isJSON, ); } export function set_stake_pool_voter_ ( owner: HexString, new_voter: HexString, $c: AptosDataCache, ): void { if (Stake.stake_pool_exists_(Signer.address_of_(owner, $c), $c)) { Stake.set_delegated_voter_(owner, $.copy(new_voter), $c); } else{ } return; } export function buildPayload_set_stake_pool_voter ( new_voter: HexString, isJSON = false, ): TxnBuilderTypes.TransactionPayloadEntryFunction | Types.TransactionPayload_EntryFunctionPayload { const typeParamStrings = [] as string[]; return $.buildPayload( new HexString("0x1"), "staking_proxy", "set_stake_pool_voter", typeParamStrings, [ new_voter, ], isJSON, ); } export function set_staking_contract_operator_ ( owner: HexString, old_operator: HexString, new_operator: HexString, $c: AptosDataCache, ): void { let current_commission_percentage, owner_address; owner_address = Signer.address_of_(owner, $c); if (Staking_contract.staking_contract_exists_($.copy(owner_address), $.copy(old_operator), $c)) { current_commission_percentage = Staking_contract.commission_percentage_($.copy(owner_address), $.copy(old_operator), $c); Staking_contract.switch_operator_(owner, $.copy(old_operator), $.copy(new_operator), $.copy(current_commission_percentage), $c); } else{ } return; } export function buildPayload_set_staking_contract_operator ( old_operator: HexString, new_operator: HexString, isJSON = false, ): TxnBuilderTypes.TransactionPayloadEntryFunction | Types.TransactionPayload_EntryFunctionPayload { const typeParamStrings = [] as string[]; return $.buildPayload( new HexString("0x1"), "staking_proxy", "set_staking_contract_operator", typeParamStrings, [ old_operator, new_operator, ], isJSON, ); } export function set_staking_contract_voter_ ( owner: HexString, operator: HexString, new_voter: HexString, $c: AptosDataCache, ): void { let owner_address; owner_address = Signer.address_of_(owner, $c); if (Staking_contract.staking_contract_exists_($.copy(owner_address), $.copy(operator), $c)) { Staking_contract.update_voter_(owner, $.copy(operator), $.copy(new_voter), $c); } else{ } return; } export function buildPayload_set_staking_contract_voter ( operator: HexString, new_voter: HexString, isJSON = false, ): TxnBuilderTypes.TransactionPayloadEntryFunction | Types.TransactionPayload_EntryFunctionPayload { const typeParamStrings = [] as string[]; return $.buildPayload( new HexString("0x1"), "staking_proxy", "set_staking_contract_voter", typeParamStrings, [ operator, new_voter, ], isJSON, ); } export function set_vesting_contract_operator_ ( owner: HexString, old_operator: HexString, new_operator: HexString, $c: AptosDataCache, ): void { let temp$1, current_commission_percentage, i, len, owner_address, vesting_contract, vesting_contracts; owner_address = Signer.address_of_(owner, $c); temp$1 = Vesting.vesting_contracts_($.copy(owner_address), $c); vesting_contracts = temp$1; i = u64("0"); len = Vector.length_(vesting_contracts, $c, [AtomicTypeTag.Address]); while (($.copy(i)).lt($.copy(len))) { { vesting_contract = $.copy(Vector.borrow_(vesting_contracts, $.copy(i), $c, [AtomicTypeTag.Address])); if (((Vesting.operator_($.copy(vesting_contract), $c)).hex() === ($.copy(old_operator)).hex())) { current_commission_percentage = Vesting.operator_commission_percentage_($.copy(vesting_contract), $c); Vesting.update_operator_(owner, $.copy(vesting_contract), $.copy(new_operator), $.copy(current_commission_percentage), $c); } else{ } i = ($.copy(i)).add(u64("1")); } }return; } export function buildPayload_set_vesting_contract_operator ( old_operator: HexString, new_operator: HexString, isJSON = false, ): TxnBuilderTypes.TransactionPayloadEntryFunction | Types.TransactionPayload_EntryFunctionPayload { const typeParamStrings = [] as string[]; return $.buildPayload( new HexString("0x1"), "staking_proxy", "set_vesting_contract_operator", typeParamStrings, [ old_operator, new_operator, ], isJSON, ); } export function set_vesting_contract_voter_ ( owner: HexString, operator: HexString, new_voter: HexString, $c: AptosDataCache, ): void { let temp$1, i, len, owner_address, vesting_contract, vesting_contracts; owner_address = Signer.address_of_(owner, $c); temp$1 = Vesting.vesting_contracts_($.copy(owner_address), $c); vesting_contracts = temp$1; i = u64("0"); len = Vector.length_(vesting_contracts, $c, [AtomicTypeTag.Address]); while (($.copy(i)).lt($.copy(len))) { { vesting_contract = $.copy(Vector.borrow_(vesting_contracts, $.copy(i), $c, [AtomicTypeTag.Address])); if (((Vesting.operator_($.copy(vesting_contract), $c)).hex() === ($.copy(operator)).hex())) { Vesting.update_voter_(owner, $.copy(vesting_contract), $.copy(new_voter), $c); } else{ } i = ($.copy(i)).add(u64("1")); } }return; } export function buildPayload_set_vesting_contract_voter ( operator: HexString, new_voter: HexString, isJSON = false, ): TxnBuilderTypes.TransactionPayloadEntryFunction | Types.TransactionPayload_EntryFunctionPayload { const typeParamStrings = [] as string[]; return $.buildPayload( new HexString("0x1"), "staking_proxy", "set_vesting_contract_voter", typeParamStrings, [ operator, new_voter, ], isJSON, ); } export function set_voter_ ( owner: HexString, operator: HexString, new_voter: HexString, $c: AptosDataCache, ): void { set_vesting_contract_voter_(owner, $.copy(operator), $.copy(new_voter), $c); set_staking_contract_voter_(owner, $.copy(operator), $.copy(new_voter), $c); set_stake_pool_voter_(owner, $.copy(new_voter), $c); return; } export function buildPayload_set_voter ( operator: HexString, new_voter: HexString, isJSON = false, ): TxnBuilderTypes.TransactionPayloadEntryFunction | Types.TransactionPayload_EntryFunctionPayload { const typeParamStrings = [] as string[]; return $.buildPayload( new HexString("0x1"), "staking_proxy", "set_voter", typeParamStrings, [ operator, new_voter, ], isJSON, ); } export function loadParsers(repo: AptosParserRepo) { } export class App { constructor( public client: AptosClient, public repo: AptosParserRepo, public cache: AptosLocalCache, ) { } get moduleAddress() {{ return moduleAddress; }} get moduleName() {{ return moduleName; }} payload_set_operator( old_operator: HexString, new_operator: HexString, isJSON = false, ): TxnBuilderTypes.TransactionPayloadEntryFunction | Types.TransactionPayload_EntryFunctionPayload { return buildPayload_set_operator(old_operator, new_operator, isJSON); } async set_operator( _account: AptosAccount, old_operator: HexString, new_operator: HexString, option?: OptionTransaction, _isJSON = false ) { const payload__ = buildPayload_set_operator(old_operator, new_operator, _isJSON); return $.sendPayloadTx(this.client, _account, payload__, option); } payload_set_stake_pool_operator( new_operator: HexString, isJSON = false, ): TxnBuilderTypes.TransactionPayloadEntryFunction | Types.TransactionPayload_EntryFunctionPayload { return buildPayload_set_stake_pool_operator(new_operator, isJSON); } async set_stake_pool_operator( _account: AptosAccount, new_operator: HexString, option?: OptionTransaction, _isJSON = false ) { const payload__ = buildPayload_set_stake_pool_operator(new_operator, _isJSON); return $.sendPayloadTx(this.client, _account, payload__, option); } payload_set_stake_pool_voter( new_voter: HexString, isJSON = false, ): TxnBuilderTypes.TransactionPayloadEntryFunction | Types.TransactionPayload_EntryFunctionPayload { return buildPayload_set_stake_pool_voter(new_voter, isJSON); } async set_stake_pool_voter( _account: AptosAccount, new_voter: HexString, option?: OptionTransaction, _isJSON = false ) { const payload__ = buildPayload_set_stake_pool_voter(new_voter, _isJSON); return $.sendPayloadTx(this.client, _account, payload__, option); } payload_set_staking_contract_operator( old_operator: HexString, new_operator: HexString, isJSON = false, ): TxnBuilderTypes.TransactionPayloadEntryFunction | Types.TransactionPayload_EntryFunctionPayload { return buildPayload_set_staking_contract_operator(old_operator, new_operator, isJSON); } async set_staking_contract_operator( _account: AptosAccount, old_operator: HexString, new_operator: HexString, option?: OptionTransaction, _isJSON = false ) { const payload__ = buildPayload_set_staking_contract_operator(old_operator, new_operator, _isJSON); return $.sendPayloadTx(this.client, _account, payload__, option); } payload_set_staking_contract_voter( operator: HexString, new_voter: HexString, isJSON = false, ): TxnBuilderTypes.TransactionPayloadEntryFunction | Types.TransactionPayload_EntryFunctionPayload { return buildPayload_set_staking_contract_voter(operator, new_voter, isJSON); } async set_staking_contract_voter( _account: AptosAccount, operator: HexString, new_voter: HexString, option?: OptionTransaction, _isJSON = false ) { const payload__ = buildPayload_set_staking_contract_voter(operator, new_voter, _isJSON); return $.sendPayloadTx(this.client, _account, payload__, option); } payload_set_vesting_contract_operator( old_operator: HexString, new_operator: HexString, isJSON = false, ): TxnBuilderTypes.TransactionPayloadEntryFunction | Types.TransactionPayload_EntryFunctionPayload { return buildPayload_set_vesting_contract_operator(old_operator, new_operator, isJSON); } async set_vesting_contract_operator( _account: AptosAccount, old_operator: HexString, new_operator: HexString, option?: OptionTransaction, _isJSON = false ) { const payload__ = buildPayload_set_vesting_contract_operator(old_operator, new_operator, _isJSON); return $.sendPayloadTx(this.client, _account, payload__, option); } payload_set_vesting_contract_voter( operator: HexString, new_voter: HexString, isJSON = false, ): TxnBuilderTypes.TransactionPayloadEntryFunction | Types.TransactionPayload_EntryFunctionPayload { return buildPayload_set_vesting_contract_voter(operator, new_voter, isJSON); } async set_vesting_contract_voter( _account: AptosAccount, operator: HexString, new_voter: HexString, option?: OptionTransaction, _isJSON = false ) { const payload__ = buildPayload_set_vesting_contract_voter(operator, new_voter, _isJSON); return $.sendPayloadTx(this.client, _account, payload__, option); } payload_set_voter( operator: HexString, new_voter: HexString, isJSON = false, ): TxnBuilderTypes.TransactionPayloadEntryFunction | Types.TransactionPayload_EntryFunctionPayload { return buildPayload_set_voter(operator, new_voter, isJSON); } async set_voter( _account: AptosAccount, operator: HexString, new_voter: HexString, option?: OptionTransaction, _isJSON = false ) { const payload__ = buildPayload_set_voter(operator, new_voter, _isJSON); return $.sendPayloadTx(this.client, _account, payload__, option); } }