/* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ /* Generated types for 0x3, original address 0x3 */ import { TypeDescriptor, ANY_TYPE } from "@typemove/move"; import { MoveCoder, TypedEventInstance } from "@typemove/sui"; import { defaultMoveCoder } from "@sentio/sdk/sui"; import { ZERO_ADDRESS, TypedSimulateResults, getMoveCoder, } from "@typemove/sui"; import { Transaction, TransactionArgument, TransactionObjectArgument, } from "@mysten/sui/transactions"; import { SuiGrpcClient } from "@mysten/sui/grpc"; import { transactionArgumentOrObject, transactionArgumentOrVec, transactionArgumentOrPure, transactionArgumentOrPureU8, transactionArgumentOrPureU16, transactionArgumentOrPureU32, transactionArgumentOrPureU64, transactionArgumentOrPureU128, transactionArgumentOrPureU256, transactionArgumentOrPureBool, transactionArgumentOrPureString, transactionArgumentOrPureAddress, } from "@typemove/sui"; import { CallFilter, MoveFetchConfig, EventFilter } from "@sentio/sdk/move"; import { HandlerOptions } from "@sentio/sdk"; import { SuiBindOptions, SuiBaseProcessor, SuiNetwork, TypedFunctionPayload, SuiContext, } from "@sentio/sdk/sui"; import * as _0x1 from "./0x1.js"; import * as _0x2 from "./0x2.js"; export class genesis extends SuiBaseProcessor { constructor(options: SuiBindOptions) { super("genesis", options); } static DEFAULT_OPTIONS: SuiBindOptions = { address: "0x3", network: SuiNetwork.MAIN_NET, }; static bind(options: Partial = {}): genesis { return new genesis({ ...genesis.DEFAULT_OPTIONS, ...options }); } onEventGenesisChainParameters( func: ( event: genesis.GenesisChainParametersInstance, ctx: SuiContext, ) => void, handlerOptions?: HandlerOptions< MoveFetchConfig, genesis.GenesisChainParametersInstance >, eventFilter?: Omit, ): genesis { this.onMoveEvent( func, { ...(eventFilter ?? {}), type: "genesis::GenesisChainParameters" }, handlerOptions, ); return this; } onEventGenesisValidatorMetadata( func: ( event: genesis.GenesisValidatorMetadataInstance, ctx: SuiContext, ) => void, handlerOptions?: HandlerOptions< MoveFetchConfig, genesis.GenesisValidatorMetadataInstance >, eventFilter?: Omit, ): genesis { this.onMoveEvent( func, { ...(eventFilter ?? {}), type: "genesis::GenesisValidatorMetadata" }, handlerOptions, ); return this; } } export namespace genesis { export interface GenesisChainParameters { protocol_version: bigint; chain_start_timestamp_ms: bigint; epoch_duration_ms: bigint; stake_subsidy_start_epoch: bigint; stake_subsidy_initial_distribution_amount: bigint; stake_subsidy_period_length: bigint; stake_subsidy_decrease_rate: number; max_validator_count: bigint; min_validator_joining_stake: bigint; validator_low_stake_threshold: bigint; validator_very_low_stake_threshold: bigint; validator_low_stake_grace_period: bigint; } export namespace GenesisChainParameters { export const TYPE_QNAME = "0x3::genesis::GenesisChainParameters"; const TYPE = new TypeDescriptor( GenesisChainParameters.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export type GenesisChainParametersInstance = TypedEventInstance & { data_decoded: GenesisChainParameters; type_arguments: []; }; export interface GenesisValidatorMetadata { name: number[]; description: number[]; image_url: number[]; project_url: number[]; sui_address: string; gas_price: bigint; commission_rate: bigint; protocol_public_key: number[]; proof_of_possession: number[]; network_public_key: number[]; worker_public_key: number[]; network_address: number[]; p2p_address: number[]; primary_address: number[]; worker_address: number[]; } export namespace GenesisValidatorMetadata { export const TYPE_QNAME = "0x3::genesis::GenesisValidatorMetadata"; const TYPE = new TypeDescriptor( GenesisValidatorMetadata.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export type GenesisValidatorMetadataInstance = TypedEventInstance & { data_decoded: GenesisValidatorMetadata; type_arguments: []; }; export interface TokenAllocation { recipient_address: string; amount_mist: bigint; staked_with_validator: _0x1.option.Option; } export namespace TokenAllocation { export const TYPE_QNAME = "0x3::genesis::TokenAllocation"; const TYPE = new TypeDescriptor( TokenAllocation.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export interface TokenDistributionSchedule { stake_subsidy_fund_mist: bigint; allocations: genesis.TokenAllocation[]; } export namespace TokenDistributionSchedule { export const TYPE_QNAME = "0x3::genesis::TokenDistributionSchedule"; const TYPE = new TypeDescriptor( TokenDistributionSchedule.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export namespace builder {} export namespace view {} } export namespace stake_subsidy { export interface StakeSubsidy { balance: _0x2.balance.Balance<_0x2.sui.SUI>; distribution_counter: bigint; current_distribution_amount: bigint; stake_subsidy_period_length: bigint; stake_subsidy_decrease_rate: number; extra_fields: _0x2.bag.Bag; } export namespace StakeSubsidy { export const TYPE_QNAME = "0x3::stake_subsidy::StakeSubsidy"; const TYPE = new TypeDescriptor(StakeSubsidy.TYPE_QNAME); export function type(): TypeDescriptor { return TYPE.apply(); } } export namespace builder { export function advanceEpoch( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::stake_subsidy::advance_epoch", arguments: _args, }); } export function create( tx: Transaction, args: [ _0x2.balance.Balance<_0x2.sui.SUI> | TransactionArgument, bigint | TransactionArgument, bigint | TransactionArgument, number | TransactionArgument, ], ): TransactionArgument & [ TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, ] { const _args: any[] = []; _args.push(transactionArgumentOrPure(args[0], tx)); _args.push(transactionArgumentOrPureU64(args[1], tx)); _args.push(transactionArgumentOrPureU64(args[2], tx)); _args.push(transactionArgumentOrPureU16(args[3], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::stake_subsidy::create", arguments: _args, }); } export function currentEpochSubsidyAmount( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::stake_subsidy::current_epoch_subsidy_amount", arguments: _args, }); } export function getDistributionCounter( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::stake_subsidy::get_distribution_counter", arguments: _args, }); } } export namespace view { export async function advanceEpoch( client: SuiGrpcClient, args: [string], ): Promise]>> { const tx = new Transaction(); builder.advanceEpoch(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [_0x2.balance.Balance<_0x2.sui.SUI>] >(simulateRes, ["0x2::balance::Balance<0x2::sui::SUI>"]); } export async function create( client: SuiGrpcClient, args: [_0x2.balance.Balance<_0x2.sui.SUI>, bigint, bigint, number], ): Promise> { const tx = new Transaction(); builder.create(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [stake_subsidy.StakeSubsidy] >(simulateRes, ["0x3::stake_subsidy::StakeSubsidy"]); } export async function currentEpochSubsidyAmount( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.currentEpochSubsidyAmount(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function getDistributionCounter( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.getDistributionCounter(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } } } export class staking_pool extends SuiBaseProcessor { constructor(options: SuiBindOptions) { super("staking_pool", options); } static DEFAULT_OPTIONS: SuiBindOptions = { address: "0x3", network: SuiNetwork.MAIN_NET, }; static bind(options: Partial = {}): staking_pool { return new staking_pool({ ...staking_pool.DEFAULT_OPTIONS, ...options }); } onEntryJoinStakedSui( func: (call: staking_pool.JoinStakedSuiPayload, ctx: SuiContext) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, staking_pool.JoinStakedSuiPayload >, ): staking_pool { this.onEntryFunctionCall( func, { ...filter, function: "staking_pool::join_staked_sui", }, handlerOptions, ); return this; } onEntrySplitStakedSui( func: (call: staking_pool.SplitStakedSuiPayload, ctx: SuiContext) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, staking_pool.SplitStakedSuiPayload >, ): staking_pool { this.onEntryFunctionCall( func, { ...filter, function: "staking_pool::split_staked_sui", }, handlerOptions, ); return this; } onEventFungibleStakedSuiDataKey( func: ( event: staking_pool.FungibleStakedSuiDataKeyInstance, ctx: SuiContext, ) => void, handlerOptions?: HandlerOptions< MoveFetchConfig, staking_pool.FungibleStakedSuiDataKeyInstance >, eventFilter?: Omit, ): staking_pool { this.onMoveEvent( func, { ...(eventFilter ?? {}), type: "staking_pool::FungibleStakedSuiDataKey", }, handlerOptions, ); return this; } onEventPoolTokenExchangeRate( func: ( event: staking_pool.PoolTokenExchangeRateInstance, ctx: SuiContext, ) => void, handlerOptions?: HandlerOptions< MoveFetchConfig, staking_pool.PoolTokenExchangeRateInstance >, eventFilter?: Omit, ): staking_pool { this.onMoveEvent( func, { ...(eventFilter ?? {}), type: "staking_pool::PoolTokenExchangeRate" }, handlerOptions, ); return this; } onEventUnderflowSuiBalance( func: ( event: staking_pool.UnderflowSuiBalanceInstance, ctx: SuiContext, ) => void, handlerOptions?: HandlerOptions< MoveFetchConfig, staking_pool.UnderflowSuiBalanceInstance >, eventFilter?: Omit, ): staking_pool { this.onMoveEvent( func, { ...(eventFilter ?? {}), type: "staking_pool::UnderflowSuiBalance" }, handlerOptions, ); return this; } } export namespace staking_pool { export interface FungibleStakedSui { id: _0x2.object$.UID; pool_id: _0x2.object$.ID; value: bigint; } export namespace FungibleStakedSui { export const TYPE_QNAME = "0x3::staking_pool::FungibleStakedSui"; const TYPE = new TypeDescriptor( FungibleStakedSui.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export interface FungibleStakedSuiData { id: _0x2.object$.UID; total_supply: bigint; principal: _0x2.balance.Balance<_0x2.sui.SUI>; } export namespace FungibleStakedSuiData { export const TYPE_QNAME = "0x3::staking_pool::FungibleStakedSuiData"; const TYPE = new TypeDescriptor( FungibleStakedSuiData.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export interface FungibleStakedSuiDataKey { dummy_field: boolean; } export namespace FungibleStakedSuiDataKey { export const TYPE_QNAME = "0x3::staking_pool::FungibleStakedSuiDataKey"; const TYPE = new TypeDescriptor( FungibleStakedSuiDataKey.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export type FungibleStakedSuiDataKeyInstance = TypedEventInstance & { data_decoded: FungibleStakedSuiDataKey; type_arguments: []; }; export interface PoolTokenExchangeRate { sui_amount: bigint; pool_token_amount: bigint; } export namespace PoolTokenExchangeRate { export const TYPE_QNAME = "0x3::staking_pool::PoolTokenExchangeRate"; const TYPE = new TypeDescriptor( PoolTokenExchangeRate.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export type PoolTokenExchangeRateInstance = TypedEventInstance & { data_decoded: PoolTokenExchangeRate; type_arguments: []; }; export interface StakedSui { id: _0x2.object$.UID; pool_id: _0x2.object$.ID; stake_activation_epoch: bigint; principal: _0x2.balance.Balance<_0x2.sui.SUI>; } export namespace StakedSui { export const TYPE_QNAME = "0x3::staking_pool::StakedSui"; const TYPE = new TypeDescriptor(StakedSui.TYPE_QNAME); export function type(): TypeDescriptor { return TYPE.apply(); } } export interface StakingPool { id: _0x2.object$.UID; activation_epoch: _0x1.option.Option; deactivation_epoch: _0x1.option.Option; sui_balance: bigint; rewards_pool: _0x2.balance.Balance<_0x2.sui.SUI>; pool_token_balance: bigint; exchange_rates: _0x2.table.Table< bigint, staking_pool.PoolTokenExchangeRate >; pending_stake: bigint; pending_total_sui_withdraw: bigint; pending_pool_token_withdraw: bigint; extra_fields: _0x2.bag.Bag; } export namespace StakingPool { export const TYPE_QNAME = "0x3::staking_pool::StakingPool"; const TYPE = new TypeDescriptor(StakingPool.TYPE_QNAME); export function type(): TypeDescriptor { return TYPE.apply(); } } export interface UnderflowSuiBalance { dummy_field: boolean; } export namespace UnderflowSuiBalance { export const TYPE_QNAME = "0x3::staking_pool::UnderflowSuiBalance"; const TYPE = new TypeDescriptor( UnderflowSuiBalance.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export type UnderflowSuiBalanceInstance = TypedEventInstance & { data_decoded: UnderflowSuiBalance; type_arguments: []; }; export namespace builder { export function activateStakingPool( tx: Transaction, args: [string | TransactionObjectArgument, bigint | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureU64(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::activate_staking_pool", arguments: _args, }); } export function activationEpoch( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::activation_epoch", arguments: _args, }); } export function calculateRewards( tx: Transaction, args: [ string | TransactionObjectArgument, string | TransactionObjectArgument, bigint | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrObject(args[1], tx)); _args.push(transactionArgumentOrPureU64(args[2], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::calculate_rewards", arguments: _args, }); } export function convertToFungibleStakedSui( tx: Transaction, args: [ string | TransactionObjectArgument, staking_pool.StakedSui | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::convert_to_fungible_staked_sui", arguments: _args, }); } export function deactivateStakingPool( tx: Transaction, args: [string | TransactionObjectArgument, bigint | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureU64(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::deactivate_staking_pool", arguments: _args, }); } export function depositRewards( tx: Transaction, args: [ string | TransactionObjectArgument, _0x2.balance.Balance<_0x2.sui.SUI> | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::deposit_rewards", arguments: _args, }); } export function exchangeRates( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::exchange_rates", arguments: _args, }); } export function fungibleStakedSuiPoolId( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::fungible_staked_sui_pool_id", arguments: _args, }); } export function fungibleStakedSuiValue( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::fungible_staked_sui_value", arguments: _args, }); } export function isEqualStakingMetadata( tx: Transaction, args: [ string | TransactionObjectArgument, string | TransactionObjectArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrObject(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::is_equal_staking_metadata", arguments: _args, }); } export function isInactive( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::is_inactive", arguments: _args, }); } export function isPreactive( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::is_preactive", arguments: _args, }); } export function joinFungibleStakedSui( tx: Transaction, args: [ string | TransactionObjectArgument, staking_pool.FungibleStakedSui | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::join_fungible_staked_sui", arguments: _args, }); } export function joinStakedSui( tx: Transaction, args: [ string | TransactionObjectArgument, staking_pool.StakedSui | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::join_staked_sui", arguments: _args, }); } export function new$(tx: Transaction, args: []): TransactionArgument & [] { const _args: any[] = []; // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::new", arguments: _args, }); } export function pendingStakeAmount( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::pending_stake_amount", arguments: _args, }); } export function pendingStakeWithdrawAmount( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::pending_stake_withdraw_amount", arguments: _args, }); } export function poolId( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::pool_id", arguments: _args, }); } export function poolTokenAmount( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::pool_token_amount", arguments: _args, }); } export function poolTokenExchangeRateAtEpoch( tx: Transaction, args: [string | TransactionObjectArgument, bigint | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureU64(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::pool_token_exchange_rate_at_epoch", arguments: _args, }); } export function processPendingStake( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::process_pending_stake", arguments: _args, }); } export function processPendingStakesAndWithdraws( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::process_pending_stakes_and_withdraws", arguments: _args, }); } export function redeemFungibleStakedSui( tx: Transaction, args: [ string | TransactionObjectArgument, staking_pool.FungibleStakedSui | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::redeem_fungible_staked_sui", arguments: _args, }); } export function requestAddStake( tx: Transaction, args: [ string | TransactionObjectArgument, _0x2.balance.Balance<_0x2.sui.SUI> | TransactionArgument, bigint | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); _args.push(transactionArgumentOrPureU64(args[2], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::request_add_stake", arguments: _args, }); } export function requestWithdrawStake( tx: Transaction, args: [ string | TransactionObjectArgument, staking_pool.StakedSui | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::request_withdraw_stake", arguments: _args, }); } export function split( tx: Transaction, args: [string | TransactionObjectArgument, bigint | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureU64(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::split", arguments: _args, }); } export function splitFungibleStakedSui( tx: Transaction, args: [string | TransactionObjectArgument, bigint | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureU64(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::split_fungible_staked_sui", arguments: _args, }); } export function splitStakedSui( tx: Transaction, args: [string | TransactionObjectArgument, bigint | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureU64(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::split_staked_sui", arguments: _args, }); } export function stakeActivationEpoch( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::stake_activation_epoch", arguments: _args, }); } export function stakedSuiAmount( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::staked_sui_amount", arguments: _args, }); } export function suiAmount( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::sui_amount", arguments: _args, }); } export function suiBalance( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::sui_balance", arguments: _args, }); } export function withdrawFromPrincipal( tx: Transaction, args: [ string | TransactionObjectArgument, staking_pool.StakedSui | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::staking_pool::withdraw_from_principal", arguments: _args, }); } } export namespace view { export async function activateStakingPool( client: SuiGrpcClient, args: [string, bigint], ): Promise> { const tx = new Transaction(); builder.activateStakingPool(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function activationEpoch( client: SuiGrpcClient, args: [string], ): Promise]>> { const tx = new Transaction(); builder.activationEpoch(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [_0x1.option.Option] >(simulateRes, ["0x1::option::Option"]); } export async function calculateRewards( client: SuiGrpcClient, args: [string, string, bigint], ): Promise> { const tx = new Transaction(); builder.calculateRewards(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function convertToFungibleStakedSui( client: SuiGrpcClient, args: [string, staking_pool.StakedSui], ): Promise> { const tx = new Transaction(); builder.convertToFungibleStakedSui(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [staking_pool.FungibleStakedSui] >(simulateRes, ["0x3::staking_pool::FungibleStakedSui"]); } export async function deactivateStakingPool( client: SuiGrpcClient, args: [string, bigint], ): Promise> { const tx = new Transaction(); builder.deactivateStakingPool(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function depositRewards( client: SuiGrpcClient, args: [string, _0x2.balance.Balance<_0x2.sui.SUI>], ): Promise> { const tx = new Transaction(); builder.depositRewards(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function exchangeRates( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.exchangeRates(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x2::table::Table"], ); } export async function fungibleStakedSuiPoolId( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.fungibleStakedSuiPoolId(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [_0x2.object$.ID] >(simulateRes, ["0x2::object::ID"]); } export async function fungibleStakedSuiValue( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.fungibleStakedSuiValue(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function isEqualStakingMetadata( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.isEqualStakingMetadata(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[boolean]>( simulateRes, ["Bool"], ); } export async function isInactive( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.isInactive(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[boolean]>( simulateRes, ["Bool"], ); } export async function isPreactive( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.isPreactive(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[boolean]>( simulateRes, ["Bool"], ); } export async function joinFungibleStakedSui( client: SuiGrpcClient, args: [string, staking_pool.FungibleStakedSui], ): Promise> { const tx = new Transaction(); builder.joinFungibleStakedSui(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function joinStakedSui( client: SuiGrpcClient, args: [string, staking_pool.StakedSui], ): Promise> { const tx = new Transaction(); builder.joinStakedSui(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function new$( client: SuiGrpcClient, args: [], ): Promise> { const tx = new Transaction(); builder.new$(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [staking_pool.StakingPool] >(simulateRes, ["0x3::staking_pool::StakingPool"]); } export async function pendingStakeAmount( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.pendingStakeAmount(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function pendingStakeWithdrawAmount( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.pendingStakeWithdrawAmount(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function poolId( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.poolId(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [_0x2.object$.ID] >(simulateRes, ["0x2::object::ID"]); } export async function poolTokenAmount( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.poolTokenAmount(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function poolTokenExchangeRateAtEpoch( client: SuiGrpcClient, args: [string, bigint], ): Promise> { const tx = new Transaction(); builder.poolTokenExchangeRateAtEpoch(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [staking_pool.PoolTokenExchangeRate] >(simulateRes, ["0x3::staking_pool::PoolTokenExchangeRate"]); } export async function processPendingStake( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.processPendingStake(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function processPendingStakesAndWithdraws( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.processPendingStakesAndWithdraws(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function redeemFungibleStakedSui( client: SuiGrpcClient, args: [string, staking_pool.FungibleStakedSui], ): Promise]>> { const tx = new Transaction(); builder.redeemFungibleStakedSui(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [_0x2.balance.Balance<_0x2.sui.SUI>] >(simulateRes, ["0x2::balance::Balance<0x2::sui::SUI>"]); } export async function requestAddStake( client: SuiGrpcClient, args: [string, _0x2.balance.Balance<_0x2.sui.SUI>, bigint], ): Promise> { const tx = new Transaction(); builder.requestAddStake(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [staking_pool.StakedSui] >(simulateRes, ["0x3::staking_pool::StakedSui"]); } export async function requestWithdrawStake( client: SuiGrpcClient, args: [string, staking_pool.StakedSui], ): Promise]>> { const tx = new Transaction(); builder.requestWithdrawStake(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [_0x2.balance.Balance<_0x2.sui.SUI>] >(simulateRes, ["0x2::balance::Balance<0x2::sui::SUI>"]); } export async function split( client: SuiGrpcClient, args: [string, bigint], ): Promise> { const tx = new Transaction(); builder.split(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [staking_pool.StakedSui] >(simulateRes, ["0x3::staking_pool::StakedSui"]); } export async function splitFungibleStakedSui( client: SuiGrpcClient, args: [string, bigint], ): Promise> { const tx = new Transaction(); builder.splitFungibleStakedSui(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [staking_pool.FungibleStakedSui] >(simulateRes, ["0x3::staking_pool::FungibleStakedSui"]); } export async function splitStakedSui( client: SuiGrpcClient, args: [string, bigint], ): Promise> { const tx = new Transaction(); builder.splitStakedSui(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function stakeActivationEpoch( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.stakeActivationEpoch(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function stakedSuiAmount( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.stakedSuiAmount(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function suiAmount( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.suiAmount(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function suiBalance( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.suiBalance(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function withdrawFromPrincipal( client: SuiGrpcClient, args: [string, staking_pool.StakedSui], ): Promise< TypedSimulateResults<[bigint, _0x2.balance.Balance<_0x2.sui.SUI>]> > { const tx = new Transaction(); builder.withdrawFromPrincipal(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [bigint, _0x2.balance.Balance<_0x2.sui.SUI>] >(simulateRes, ["U64", "0x2::balance::Balance<0x2::sui::SUI>"]); } } export interface JoinStakedSuiPayload extends TypedFunctionPayload<[string, staking_pool.StakedSui]> { arguments_decoded: [string, staking_pool.StakedSui]; type_arguments: []; } export interface SplitStakedSuiPayload extends TypedFunctionPayload<[string, bigint, string]> { arguments_decoded: [string, bigint, string]; type_arguments: []; } } export namespace storage_fund { export interface StorageFund { total_object_storage_rebates: _0x2.balance.Balance<_0x2.sui.SUI>; non_refundable_balance: _0x2.balance.Balance<_0x2.sui.SUI>; } export namespace StorageFund { export const TYPE_QNAME = "0x3::storage_fund::StorageFund"; const TYPE = new TypeDescriptor(StorageFund.TYPE_QNAME); export function type(): TypeDescriptor { return TYPE.apply(); } } export namespace builder { export function advanceEpoch( tx: Transaction, args: [ string | TransactionObjectArgument, _0x2.balance.Balance<_0x2.sui.SUI> | TransactionArgument, _0x2.balance.Balance<_0x2.sui.SUI> | TransactionArgument, _0x2.balance.Balance<_0x2.sui.SUI> | TransactionArgument, bigint | TransactionArgument, bigint | TransactionArgument, ], ): TransactionArgument & [ TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, ] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); _args.push(transactionArgumentOrPure(args[2], tx)); _args.push(transactionArgumentOrPure(args[3], tx)); _args.push(transactionArgumentOrPureU64(args[4], tx)); _args.push(transactionArgumentOrPureU64(args[5], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::storage_fund::advance_epoch", arguments: _args, }); } export function new$( tx: Transaction, args: [_0x2.balance.Balance<_0x2.sui.SUI> | TransactionArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrPure(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::storage_fund::new", arguments: _args, }); } export function totalBalance( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::storage_fund::total_balance", arguments: _args, }); } export function totalObjectStorageRebates( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::storage_fund::total_object_storage_rebates", arguments: _args, }); } } export namespace view { export async function advanceEpoch( client: SuiGrpcClient, args: [ string, _0x2.balance.Balance<_0x2.sui.SUI>, _0x2.balance.Balance<_0x2.sui.SUI>, _0x2.balance.Balance<_0x2.sui.SUI>, bigint, bigint, ], ): Promise]>> { const tx = new Transaction(); builder.advanceEpoch(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [_0x2.balance.Balance<_0x2.sui.SUI>] >(simulateRes, ["0x2::balance::Balance<0x2::sui::SUI>"]); } export async function new$( client: SuiGrpcClient, args: [_0x2.balance.Balance<_0x2.sui.SUI>], ): Promise> { const tx = new Transaction(); builder.new$(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [storage_fund.StorageFund] >(simulateRes, ["0x3::storage_fund::StorageFund"]); } export async function totalBalance( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.totalBalance(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function totalObjectStorageRebates( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.totalObjectStorageRebates(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } } } export class sui_system extends SuiBaseProcessor { constructor(options: SuiBindOptions) { super("sui_system", options); } static DEFAULT_OPTIONS: SuiBindOptions = { address: "0x3", network: SuiNetwork.MAIN_NET, }; static bind(options: Partial = {}): sui_system { return new sui_system({ ...sui_system.DEFAULT_OPTIONS, ...options }); } onEntryReportValidator( func: (call: sui_system.ReportValidatorPayload, ctx: SuiContext) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.ReportValidatorPayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::report_validator", }, handlerOptions, ); return this; } onEntryRequestAddStake( func: (call: sui_system.RequestAddStakePayload, ctx: SuiContext) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.RequestAddStakePayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::request_add_stake", }, handlerOptions, ); return this; } onEntryRequestAddStakeMulCoin( func: ( call: sui_system.RequestAddStakeMulCoinPayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.RequestAddStakeMulCoinPayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::request_add_stake_mul_coin", }, handlerOptions, ); return this; } onEntryRequestAddValidator( func: ( call: sui_system.RequestAddValidatorPayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.RequestAddValidatorPayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::request_add_validator", }, handlerOptions, ); return this; } onEntryRequestAddValidatorCandidate( func: ( call: sui_system.RequestAddValidatorCandidatePayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.RequestAddValidatorCandidatePayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::request_add_validator_candidate", }, handlerOptions, ); return this; } onEntryRequestRemoveValidator( func: ( call: sui_system.RequestRemoveValidatorPayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.RequestRemoveValidatorPayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::request_remove_validator", }, handlerOptions, ); return this; } onEntryRequestRemoveValidatorCandidate( func: ( call: sui_system.RequestRemoveValidatorCandidatePayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.RequestRemoveValidatorCandidatePayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::request_remove_validator_candidate", }, handlerOptions, ); return this; } onEntryRequestSetCommissionRate( func: ( call: sui_system.RequestSetCommissionRatePayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.RequestSetCommissionRatePayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::request_set_commission_rate", }, handlerOptions, ); return this; } onEntryRequestSetGasPrice( func: (call: sui_system.RequestSetGasPricePayload, ctx: SuiContext) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.RequestSetGasPricePayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::request_set_gas_price", }, handlerOptions, ); return this; } onEntryRequestWithdrawStake( func: ( call: sui_system.RequestWithdrawStakePayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.RequestWithdrawStakePayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::request_withdraw_stake", }, handlerOptions, ); return this; } onEntryRotateOperationCap( func: (call: sui_system.RotateOperationCapPayload, ctx: SuiContext) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.RotateOperationCapPayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::rotate_operation_cap", }, handlerOptions, ); return this; } onEntrySetCandidateValidatorCommissionRate( func: ( call: sui_system.SetCandidateValidatorCommissionRatePayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.SetCandidateValidatorCommissionRatePayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::set_candidate_validator_commission_rate", }, handlerOptions, ); return this; } onEntrySetCandidateValidatorGasPrice( func: ( call: sui_system.SetCandidateValidatorGasPricePayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.SetCandidateValidatorGasPricePayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::set_candidate_validator_gas_price", }, handlerOptions, ); return this; } onEntryUndoReportValidator( func: ( call: sui_system.UndoReportValidatorPayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.UndoReportValidatorPayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::undo_report_validator", }, handlerOptions, ); return this; } onEntryUpdateCandidateValidatorNetworkAddress( func: ( call: sui_system.UpdateCandidateValidatorNetworkAddressPayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.UpdateCandidateValidatorNetworkAddressPayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::update_candidate_validator_network_address", }, handlerOptions, ); return this; } onEntryUpdateCandidateValidatorNetworkPubkey( func: ( call: sui_system.UpdateCandidateValidatorNetworkPubkeyPayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.UpdateCandidateValidatorNetworkPubkeyPayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::update_candidate_validator_network_pubkey", }, handlerOptions, ); return this; } onEntryUpdateCandidateValidatorP2pAddress( func: ( call: sui_system.UpdateCandidateValidatorP2pAddressPayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.UpdateCandidateValidatorP2pAddressPayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::update_candidate_validator_p2p_address", }, handlerOptions, ); return this; } onEntryUpdateCandidateValidatorPrimaryAddress( func: ( call: sui_system.UpdateCandidateValidatorPrimaryAddressPayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.UpdateCandidateValidatorPrimaryAddressPayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::update_candidate_validator_primary_address", }, handlerOptions, ); return this; } onEntryUpdateCandidateValidatorProtocolPubkey( func: ( call: sui_system.UpdateCandidateValidatorProtocolPubkeyPayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.UpdateCandidateValidatorProtocolPubkeyPayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::update_candidate_validator_protocol_pubkey", }, handlerOptions, ); return this; } onEntryUpdateCandidateValidatorWorkerAddress( func: ( call: sui_system.UpdateCandidateValidatorWorkerAddressPayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.UpdateCandidateValidatorWorkerAddressPayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::update_candidate_validator_worker_address", }, handlerOptions, ); return this; } onEntryUpdateCandidateValidatorWorkerPubkey( func: ( call: sui_system.UpdateCandidateValidatorWorkerPubkeyPayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.UpdateCandidateValidatorWorkerPubkeyPayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::update_candidate_validator_worker_pubkey", }, handlerOptions, ); return this; } onEntryUpdateValidatorDescription( func: ( call: sui_system.UpdateValidatorDescriptionPayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.UpdateValidatorDescriptionPayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::update_validator_description", }, handlerOptions, ); return this; } onEntryUpdateValidatorImageUrl( func: ( call: sui_system.UpdateValidatorImageUrlPayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.UpdateValidatorImageUrlPayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::update_validator_image_url", }, handlerOptions, ); return this; } onEntryUpdateValidatorName( func: ( call: sui_system.UpdateValidatorNamePayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.UpdateValidatorNamePayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::update_validator_name", }, handlerOptions, ); return this; } onEntryUpdateValidatorNextEpochNetworkAddress( func: ( call: sui_system.UpdateValidatorNextEpochNetworkAddressPayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.UpdateValidatorNextEpochNetworkAddressPayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::update_validator_next_epoch_network_address", }, handlerOptions, ); return this; } onEntryUpdateValidatorNextEpochNetworkPubkey( func: ( call: sui_system.UpdateValidatorNextEpochNetworkPubkeyPayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.UpdateValidatorNextEpochNetworkPubkeyPayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::update_validator_next_epoch_network_pubkey", }, handlerOptions, ); return this; } onEntryUpdateValidatorNextEpochP2pAddress( func: ( call: sui_system.UpdateValidatorNextEpochP2pAddressPayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.UpdateValidatorNextEpochP2pAddressPayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::update_validator_next_epoch_p2p_address", }, handlerOptions, ); return this; } onEntryUpdateValidatorNextEpochPrimaryAddress( func: ( call: sui_system.UpdateValidatorNextEpochPrimaryAddressPayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.UpdateValidatorNextEpochPrimaryAddressPayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::update_validator_next_epoch_primary_address", }, handlerOptions, ); return this; } onEntryUpdateValidatorNextEpochProtocolPubkey( func: ( call: sui_system.UpdateValidatorNextEpochProtocolPubkeyPayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.UpdateValidatorNextEpochProtocolPubkeyPayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::update_validator_next_epoch_protocol_pubkey", }, handlerOptions, ); return this; } onEntryUpdateValidatorNextEpochWorkerAddress( func: ( call: sui_system.UpdateValidatorNextEpochWorkerAddressPayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.UpdateValidatorNextEpochWorkerAddressPayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::update_validator_next_epoch_worker_address", }, handlerOptions, ); return this; } onEntryUpdateValidatorNextEpochWorkerPubkey( func: ( call: sui_system.UpdateValidatorNextEpochWorkerPubkeyPayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.UpdateValidatorNextEpochWorkerPubkeyPayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::update_validator_next_epoch_worker_pubkey", }, handlerOptions, ); return this; } onEntryUpdateValidatorProjectUrl( func: ( call: sui_system.UpdateValidatorProjectUrlPayload, ctx: SuiContext, ) => void, filter?: CallFilter, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.UpdateValidatorProjectUrlPayload >, ): sui_system { this.onEntryFunctionCall( func, { ...filter, function: "sui_system::update_validator_project_url", }, handlerOptions, ); return this; } onEventAccumulatorStorageCostKey( func: ( event: sui_system.AccumulatorStorageCostKeyInstance, ctx: SuiContext, ) => void, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system.AccumulatorStorageCostKeyInstance >, eventFilter?: Omit, ): sui_system { this.onMoveEvent( func, { ...(eventFilter ?? {}), type: "sui_system::AccumulatorStorageCostKey" }, handlerOptions, ); return this; } } export namespace sui_system { export interface AccumulatorStorageCostKey { dummy_field: boolean; } export namespace AccumulatorStorageCostKey { export const TYPE_QNAME = "0x3::sui_system::AccumulatorStorageCostKey"; const TYPE = new TypeDescriptor( AccumulatorStorageCostKey.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export type AccumulatorStorageCostKeyInstance = TypedEventInstance & { data_decoded: AccumulatorStorageCostKey; type_arguments: []; }; export interface SuiSystemState { id: _0x2.object$.UID; version: bigint; } export namespace SuiSystemState { export const TYPE_QNAME = "0x3::sui_system::SuiSystemState"; const TYPE = new TypeDescriptor(SuiSystemState.TYPE_QNAME); export function type(): TypeDescriptor { return TYPE.apply(); } } export namespace builder { export function activeValidatorAddresses( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::active_validator_addresses", arguments: _args, }); } export function activeValidatorAddressesRef( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::active_validator_addresses_ref", arguments: _args, }); } export function activeValidatorStakeAmount( tx: Transaction, args: [string | TransactionObjectArgument, string | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureAddress(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::active_validator_stake_amount", arguments: _args, }); } export function activeValidatorVotingPowers( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::active_validator_voting_powers", arguments: _args, }); } export function calculateRewards( tx: Transaction, args: [ string | TransactionObjectArgument, string | TransactionObjectArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrObject(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::calculate_rewards", arguments: _args, }); } export function convertToFungibleStakedSui( tx: Transaction, args: [ string | TransactionObjectArgument, staking_pool.StakedSui | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::convert_to_fungible_staked_sui", arguments: _args, }); } export function create( tx: Transaction, args: [ _0x2.object$.UID | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, _0x2.balance.Balance<_0x2.sui.SUI> | TransactionArgument, bigint | TransactionArgument, bigint | TransactionArgument, sui_system_state_inner.SystemParameters | TransactionArgument, stake_subsidy.StakeSubsidy | TransactionArgument, ], ): TransactionArgument & [ TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, ] { const _args: any[] = []; _args.push(transactionArgumentOrPure(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); _args.push(transactionArgumentOrPure(args[2], tx)); _args.push(transactionArgumentOrPureU64(args[3], tx)); _args.push(transactionArgumentOrPureU64(args[4], tx)); _args.push(transactionArgumentOrPure(args[5], tx)); _args.push(transactionArgumentOrPure(args[6], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::create", arguments: _args, }); } export function poolExchangeRates( tx: Transaction, args: [ string | TransactionObjectArgument, string | TransactionObjectArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrObject(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::pool_exchange_rates", arguments: _args, }); } export function redeemFungibleStakedSui( tx: Transaction, args: [ string | TransactionObjectArgument, staking_pool.FungibleStakedSui | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::redeem_fungible_staked_sui", arguments: _args, }); } export function reportValidator( tx: Transaction, args: [ string | TransactionObjectArgument, string | TransactionObjectArgument, string | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrObject(args[1], tx)); _args.push(transactionArgumentOrPureAddress(args[2], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::report_validator", arguments: _args, }); } export function requestAddStake( tx: Transaction, args: [ string | TransactionObjectArgument, _0x2.coin.Coin<_0x2.sui.SUI> | TransactionArgument, string | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); _args.push(transactionArgumentOrPureAddress(args[2], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::request_add_stake", arguments: _args, }); } export function requestAddStakeMulCoin( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, _0x1.option.Option | TransactionArgument, string | TransactionArgument, ], ): TransactionArgument & [ TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, ] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); _args.push(transactionArgumentOrPure(args[2], tx)); _args.push(transactionArgumentOrPureAddress(args[3], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::request_add_stake_mul_coin", arguments: _args, }); } export function requestAddStakeNonEntry( tx: Transaction, args: [ string | TransactionObjectArgument, _0x2.coin.Coin<_0x2.sui.SUI> | TransactionArgument, string | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); _args.push(transactionArgumentOrPureAddress(args[2], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::request_add_stake_non_entry", arguments: _args, }); } export function requestAddValidator( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::request_add_validator", arguments: _args, }); } export function requestAddValidatorCandidate( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, bigint | TransactionArgument, bigint | TransactionArgument, ], ): TransactionArgument & [ TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, ] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); _args.push(transactionArgumentOrVec(args[2], tx)); _args.push(transactionArgumentOrVec(args[3], tx)); _args.push(transactionArgumentOrVec(args[4], tx)); _args.push(transactionArgumentOrVec(args[5], tx)); _args.push(transactionArgumentOrVec(args[6], tx)); _args.push(transactionArgumentOrVec(args[7], tx)); _args.push(transactionArgumentOrVec(args[8], tx)); _args.push(transactionArgumentOrVec(args[9], tx)); _args.push(transactionArgumentOrVec(args[10], tx)); _args.push(transactionArgumentOrVec(args[11], tx)); _args.push(transactionArgumentOrVec(args[12], tx)); _args.push(transactionArgumentOrPureU64(args[13], tx)); _args.push(transactionArgumentOrPureU64(args[14], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::request_add_validator_candidate", arguments: _args, }); } export function requestRemoveValidator( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::request_remove_validator", arguments: _args, }); } export function requestRemoveValidatorCandidate( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::request_remove_validator_candidate", arguments: _args, }); } export function requestSetCommissionRate( tx: Transaction, args: [string | TransactionObjectArgument, bigint | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureU64(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::request_set_commission_rate", arguments: _args, }); } export function requestSetGasPrice( tx: Transaction, args: [ string | TransactionObjectArgument, string | TransactionObjectArgument, bigint | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrObject(args[1], tx)); _args.push(transactionArgumentOrPureU64(args[2], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::request_set_gas_price", arguments: _args, }); } export function requestWithdrawStake( tx: Transaction, args: [ string | TransactionObjectArgument, staking_pool.StakedSui | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::request_withdraw_stake", arguments: _args, }); } export function requestWithdrawStakeNonEntry( tx: Transaction, args: [ string | TransactionObjectArgument, staking_pool.StakedSui | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::request_withdraw_stake_non_entry", arguments: _args, }); } export function rotateOperationCap( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::rotate_operation_cap", arguments: _args, }); } export function setCandidateValidatorCommissionRate( tx: Transaction, args: [string | TransactionObjectArgument, bigint | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureU64(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::set_candidate_validator_commission_rate", arguments: _args, }); } export function setCandidateValidatorGasPrice( tx: Transaction, args: [ string | TransactionObjectArgument, string | TransactionObjectArgument, bigint | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrObject(args[1], tx)); _args.push(transactionArgumentOrPureU64(args[2], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::set_candidate_validator_gas_price", arguments: _args, }); } export function undoReportValidator( tx: Transaction, args: [ string | TransactionObjectArgument, string | TransactionObjectArgument, string | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrObject(args[1], tx)); _args.push(transactionArgumentOrPureAddress(args[2], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::undo_report_validator", arguments: _args, }); } export function updateCandidateValidatorNetworkAddress( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::update_candidate_validator_network_address", arguments: _args, }); } export function updateCandidateValidatorNetworkPubkey( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::update_candidate_validator_network_pubkey", arguments: _args, }); } export function updateCandidateValidatorP2pAddress( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::update_candidate_validator_p2p_address", arguments: _args, }); } export function updateCandidateValidatorPrimaryAddress( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::update_candidate_validator_primary_address", arguments: _args, }); } export function updateCandidateValidatorProtocolPubkey( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); _args.push(transactionArgumentOrVec(args[2], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::update_candidate_validator_protocol_pubkey", arguments: _args, }); } export function updateCandidateValidatorWorkerAddress( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::update_candidate_validator_worker_address", arguments: _args, }); } export function updateCandidateValidatorWorkerPubkey( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::update_candidate_validator_worker_pubkey", arguments: _args, }); } export function updateValidatorDescription( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::update_validator_description", arguments: _args, }); } export function updateValidatorImageUrl( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::update_validator_image_url", arguments: _args, }); } export function updateValidatorName( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::update_validator_name", arguments: _args, }); } export function updateValidatorNextEpochNetworkAddress( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::update_validator_next_epoch_network_address", arguments: _args, }); } export function updateValidatorNextEpochNetworkPubkey( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::update_validator_next_epoch_network_pubkey", arguments: _args, }); } export function updateValidatorNextEpochP2pAddress( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::update_validator_next_epoch_p2p_address", arguments: _args, }); } export function updateValidatorNextEpochPrimaryAddress( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::update_validator_next_epoch_primary_address", arguments: _args, }); } export function updateValidatorNextEpochProtocolPubkey( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); _args.push(transactionArgumentOrVec(args[2], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::update_validator_next_epoch_protocol_pubkey", arguments: _args, }); } export function updateValidatorNextEpochWorkerAddress( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::update_validator_next_epoch_worker_address", arguments: _args, }); } export function updateValidatorNextEpochWorkerPubkey( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::update_validator_next_epoch_worker_pubkey", arguments: _args, }); } export function updateValidatorProjectUrl( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::update_validator_project_url", arguments: _args, }); } export function validatorAddressByPoolId( tx: Transaction, args: [ string | TransactionObjectArgument, string | TransactionObjectArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrObject(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system::validator_address_by_pool_id", arguments: _args, }); } } export namespace view { export async function activeValidatorAddresses( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.activeValidatorAddresses(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string[]]>( simulateRes, ["Vector
"], ); } export async function activeValidatorAddressesRef( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.activeValidatorAddressesRef(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string[]]>( simulateRes, ["Vector
"], ); } export async function activeValidatorStakeAmount( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.activeValidatorStakeAmount(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function activeValidatorVotingPowers( client: SuiGrpcClient, args: [string], ): Promise]>> { const tx = new Transaction(); builder.activeValidatorVotingPowers(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [_0x2.vec_map.VecMap] >(simulateRes, ["0x2::vec_map::VecMap"]); } export async function calculateRewards( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.calculateRewards(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function convertToFungibleStakedSui( client: SuiGrpcClient, args: [string, staking_pool.StakedSui], ): Promise> { const tx = new Transaction(); builder.convertToFungibleStakedSui(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [staking_pool.FungibleStakedSui] >(simulateRes, ["0x3::staking_pool::FungibleStakedSui"]); } export async function create( client: SuiGrpcClient, args: [ _0x2.object$.UID, string[], _0x2.balance.Balance<_0x2.sui.SUI>, bigint, bigint, sui_system_state_inner.SystemParameters, stake_subsidy.StakeSubsidy, ], ): Promise> { const tx = new Transaction(); builder.create(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function poolExchangeRates( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.poolExchangeRates(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x2::table::Table"], ); } export async function redeemFungibleStakedSui( client: SuiGrpcClient, args: [string, staking_pool.FungibleStakedSui], ): Promise]>> { const tx = new Transaction(); builder.redeemFungibleStakedSui(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [_0x2.balance.Balance<_0x2.sui.SUI>] >(simulateRes, ["0x2::balance::Balance<0x2::sui::SUI>"]); } export async function reportValidator( client: SuiGrpcClient, args: [string, string, string], ): Promise> { const tx = new Transaction(); builder.reportValidator(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function requestAddStake( client: SuiGrpcClient, args: [string, _0x2.coin.Coin<_0x2.sui.SUI>, string], ): Promise> { const tx = new Transaction(); builder.requestAddStake(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function requestAddStakeMulCoin( client: SuiGrpcClient, args: [string, string[], _0x1.option.Option, string], ): Promise> { const tx = new Transaction(); builder.requestAddStakeMulCoin(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function requestAddStakeNonEntry( client: SuiGrpcClient, args: [string, _0x2.coin.Coin<_0x2.sui.SUI>, string], ): Promise> { const tx = new Transaction(); builder.requestAddStakeNonEntry(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [staking_pool.StakedSui] >(simulateRes, ["0x3::staking_pool::StakedSui"]); } export async function requestAddValidator( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.requestAddValidator(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function requestAddValidatorCandidate( client: SuiGrpcClient, args: [ string, string[], string[], string[], string[], string[], string[], string[], string[], string[], string[], string[], string[], bigint, bigint, ], ): Promise> { const tx = new Transaction(); builder.requestAddValidatorCandidate(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function requestRemoveValidator( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.requestRemoveValidator(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function requestRemoveValidatorCandidate( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.requestRemoveValidatorCandidate(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function requestSetCommissionRate( client: SuiGrpcClient, args: [string, bigint], ): Promise> { const tx = new Transaction(); builder.requestSetCommissionRate(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function requestSetGasPrice( client: SuiGrpcClient, args: [string, string, bigint], ): Promise> { const tx = new Transaction(); builder.requestSetGasPrice(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function requestWithdrawStake( client: SuiGrpcClient, args: [string, staking_pool.StakedSui], ): Promise> { const tx = new Transaction(); builder.requestWithdrawStake(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function requestWithdrawStakeNonEntry( client: SuiGrpcClient, args: [string, staking_pool.StakedSui], ): Promise]>> { const tx = new Transaction(); builder.requestWithdrawStakeNonEntry(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [_0x2.balance.Balance<_0x2.sui.SUI>] >(simulateRes, ["0x2::balance::Balance<0x2::sui::SUI>"]); } export async function rotateOperationCap( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.rotateOperationCap(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function setCandidateValidatorCommissionRate( client: SuiGrpcClient, args: [string, bigint], ): Promise> { const tx = new Transaction(); builder.setCandidateValidatorCommissionRate(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function setCandidateValidatorGasPrice( client: SuiGrpcClient, args: [string, string, bigint], ): Promise> { const tx = new Transaction(); builder.setCandidateValidatorGasPrice(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function undoReportValidator( client: SuiGrpcClient, args: [string, string, string], ): Promise> { const tx = new Transaction(); builder.undoReportValidator(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateCandidateValidatorNetworkAddress( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateCandidateValidatorNetworkAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateCandidateValidatorNetworkPubkey( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateCandidateValidatorNetworkPubkey(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateCandidateValidatorP2pAddress( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateCandidateValidatorP2pAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateCandidateValidatorPrimaryAddress( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateCandidateValidatorPrimaryAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateCandidateValidatorProtocolPubkey( client: SuiGrpcClient, args: [string, string[], string[]], ): Promise> { const tx = new Transaction(); builder.updateCandidateValidatorProtocolPubkey(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateCandidateValidatorWorkerAddress( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateCandidateValidatorWorkerAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateCandidateValidatorWorkerPubkey( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateCandidateValidatorWorkerPubkey(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateValidatorDescription( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateValidatorDescription(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateValidatorImageUrl( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateValidatorImageUrl(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateValidatorName( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateValidatorName(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateValidatorNextEpochNetworkAddress( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateValidatorNextEpochNetworkAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateValidatorNextEpochNetworkPubkey( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateValidatorNextEpochNetworkPubkey(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateValidatorNextEpochP2pAddress( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateValidatorNextEpochP2pAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateValidatorNextEpochPrimaryAddress( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateValidatorNextEpochPrimaryAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateValidatorNextEpochProtocolPubkey( client: SuiGrpcClient, args: [string, string[], string[]], ): Promise> { const tx = new Transaction(); builder.updateValidatorNextEpochProtocolPubkey(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateValidatorNextEpochWorkerAddress( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateValidatorNextEpochWorkerAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateValidatorNextEpochWorkerPubkey( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateValidatorNextEpochWorkerPubkey(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateValidatorProjectUrl( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateValidatorProjectUrl(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function validatorAddressByPoolId( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.validatorAddressByPoolId(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["Address"], ); } } export interface ReportValidatorPayload extends TypedFunctionPayload<[string, string, string]> { arguments_decoded: [string, string, string]; type_arguments: []; } export interface RequestAddStakePayload extends TypedFunctionPayload< [string, _0x2.coin.Coin<_0x2.sui.SUI>, string, string] > { arguments_decoded: [string, _0x2.coin.Coin<_0x2.sui.SUI>, string, string]; type_arguments: []; } export interface RequestAddStakeMulCoinPayload extends TypedFunctionPayload< [ string, _0x2.coin.Coin<_0x2.sui.SUI>[], _0x1.option.Option, string, string, ] > { arguments_decoded: [ string, _0x2.coin.Coin<_0x2.sui.SUI>[], _0x1.option.Option, string, string, ]; type_arguments: []; } export interface RequestAddValidatorPayload extends TypedFunctionPayload<[string, string]> { arguments_decoded: [string, string]; type_arguments: []; } export interface RequestAddValidatorCandidatePayload extends TypedFunctionPayload< [ string, number[], number[], number[], number[], number[], number[], number[], number[], number[], number[], number[], number[], bigint, bigint, string, ] > { arguments_decoded: [ string, number[], number[], number[], number[], number[], number[], number[], number[], number[], number[], number[], number[], bigint, bigint, string, ]; type_arguments: []; } export interface RequestRemoveValidatorPayload extends TypedFunctionPayload<[string, string]> { arguments_decoded: [string, string]; type_arguments: []; } export interface RequestRemoveValidatorCandidatePayload extends TypedFunctionPayload<[string, string]> { arguments_decoded: [string, string]; type_arguments: []; } export interface RequestSetCommissionRatePayload extends TypedFunctionPayload<[string, bigint, string]> { arguments_decoded: [string, bigint, string]; type_arguments: []; } export interface RequestSetGasPricePayload extends TypedFunctionPayload<[string, string, bigint]> { arguments_decoded: [string, string, bigint]; type_arguments: []; } export interface RequestWithdrawStakePayload extends TypedFunctionPayload<[string, staking_pool.StakedSui, string]> { arguments_decoded: [string, staking_pool.StakedSui, string]; type_arguments: []; } export interface RotateOperationCapPayload extends TypedFunctionPayload<[string, string]> { arguments_decoded: [string, string]; type_arguments: []; } export interface SetCandidateValidatorCommissionRatePayload extends TypedFunctionPayload<[string, bigint, string]> { arguments_decoded: [string, bigint, string]; type_arguments: []; } export interface SetCandidateValidatorGasPricePayload extends TypedFunctionPayload<[string, string, bigint]> { arguments_decoded: [string, string, bigint]; type_arguments: []; } export interface UndoReportValidatorPayload extends TypedFunctionPayload<[string, string, string]> { arguments_decoded: [string, string, string]; type_arguments: []; } export interface UpdateCandidateValidatorNetworkAddressPayload extends TypedFunctionPayload<[string, number[], string]> { arguments_decoded: [string, number[], string]; type_arguments: []; } export interface UpdateCandidateValidatorNetworkPubkeyPayload extends TypedFunctionPayload<[string, number[], string]> { arguments_decoded: [string, number[], string]; type_arguments: []; } export interface UpdateCandidateValidatorP2pAddressPayload extends TypedFunctionPayload<[string, number[], string]> { arguments_decoded: [string, number[], string]; type_arguments: []; } export interface UpdateCandidateValidatorPrimaryAddressPayload extends TypedFunctionPayload<[string, number[], string]> { arguments_decoded: [string, number[], string]; type_arguments: []; } export interface UpdateCandidateValidatorProtocolPubkeyPayload extends TypedFunctionPayload<[string, number[], number[], string]> { arguments_decoded: [string, number[], number[], string]; type_arguments: []; } export interface UpdateCandidateValidatorWorkerAddressPayload extends TypedFunctionPayload<[string, number[], string]> { arguments_decoded: [string, number[], string]; type_arguments: []; } export interface UpdateCandidateValidatorWorkerPubkeyPayload extends TypedFunctionPayload<[string, number[], string]> { arguments_decoded: [string, number[], string]; type_arguments: []; } export interface UpdateValidatorDescriptionPayload extends TypedFunctionPayload<[string, number[], string]> { arguments_decoded: [string, number[], string]; type_arguments: []; } export interface UpdateValidatorImageUrlPayload extends TypedFunctionPayload<[string, number[], string]> { arguments_decoded: [string, number[], string]; type_arguments: []; } export interface UpdateValidatorNamePayload extends TypedFunctionPayload<[string, number[], string]> { arguments_decoded: [string, number[], string]; type_arguments: []; } export interface UpdateValidatorNextEpochNetworkAddressPayload extends TypedFunctionPayload<[string, number[], string]> { arguments_decoded: [string, number[], string]; type_arguments: []; } export interface UpdateValidatorNextEpochNetworkPubkeyPayload extends TypedFunctionPayload<[string, number[], string]> { arguments_decoded: [string, number[], string]; type_arguments: []; } export interface UpdateValidatorNextEpochP2pAddressPayload extends TypedFunctionPayload<[string, number[], string]> { arguments_decoded: [string, number[], string]; type_arguments: []; } export interface UpdateValidatorNextEpochPrimaryAddressPayload extends TypedFunctionPayload<[string, number[], string]> { arguments_decoded: [string, number[], string]; type_arguments: []; } export interface UpdateValidatorNextEpochProtocolPubkeyPayload extends TypedFunctionPayload<[string, number[], number[], string]> { arguments_decoded: [string, number[], number[], string]; type_arguments: []; } export interface UpdateValidatorNextEpochWorkerAddressPayload extends TypedFunctionPayload<[string, number[], string]> { arguments_decoded: [string, number[], string]; type_arguments: []; } export interface UpdateValidatorNextEpochWorkerPubkeyPayload extends TypedFunctionPayload<[string, number[], string]> { arguments_decoded: [string, number[], string]; type_arguments: []; } export interface UpdateValidatorProjectUrlPayload extends TypedFunctionPayload<[string, number[], string]> { arguments_decoded: [string, number[], string]; type_arguments: []; } } export class sui_system_state_inner extends SuiBaseProcessor { constructor(options: SuiBindOptions) { super("sui_system_state_inner", options); } static DEFAULT_OPTIONS: SuiBindOptions = { address: "0x3", network: SuiNetwork.MAIN_NET, }; static bind(options: Partial = {}): sui_system_state_inner { return new sui_system_state_inner({ ...sui_system_state_inner.DEFAULT_OPTIONS, ...options, }); } onEventExecutionTimeObservationChunkKey( func: ( event: sui_system_state_inner.ExecutionTimeObservationChunkKeyInstance, ctx: SuiContext, ) => void, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system_state_inner.ExecutionTimeObservationChunkKeyInstance >, eventFilter?: Omit, ): sui_system_state_inner { this.onMoveEvent( func, { ...(eventFilter ?? {}), type: "sui_system_state_inner::ExecutionTimeObservationChunkKey", }, handlerOptions, ); return this; } onEventSystemEpochInfoEvent( func: ( event: sui_system_state_inner.SystemEpochInfoEventInstance, ctx: SuiContext, ) => void, handlerOptions?: HandlerOptions< MoveFetchConfig, sui_system_state_inner.SystemEpochInfoEventInstance >, eventFilter?: Omit, ): sui_system_state_inner { this.onMoveEvent( func, { ...(eventFilter ?? {}), type: "sui_system_state_inner::SystemEpochInfoEvent", }, handlerOptions, ); return this; } } export namespace sui_system_state_inner { export interface ExecutionTimeObservationChunkKey { chunk_index: bigint; } export namespace ExecutionTimeObservationChunkKey { export const TYPE_QNAME = "0x3::sui_system_state_inner::ExecutionTimeObservationChunkKey"; const TYPE = new TypeDescriptor( ExecutionTimeObservationChunkKey.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export type ExecutionTimeObservationChunkKeyInstance = TypedEventInstance & { data_decoded: ExecutionTimeObservationChunkKey; type_arguments: []; }; export interface SuiSystemStateInner { epoch: bigint; protocol_version: bigint; system_state_version: bigint; validators: validator_set.ValidatorSet; storage_fund: storage_fund.StorageFund; parameters: sui_system_state_inner.SystemParameters; reference_gas_price: bigint; validator_report_records: _0x2.vec_map.VecMap< string, _0x2.vec_set.VecSet >; stake_subsidy: stake_subsidy.StakeSubsidy; safe_mode: boolean; safe_mode_storage_rewards: _0x2.balance.Balance<_0x2.sui.SUI>; safe_mode_computation_rewards: _0x2.balance.Balance<_0x2.sui.SUI>; safe_mode_storage_rebates: bigint; safe_mode_non_refundable_storage_fee: bigint; epoch_start_timestamp_ms: bigint; extra_fields: _0x2.bag.Bag; } export namespace SuiSystemStateInner { export const TYPE_QNAME = "0x3::sui_system_state_inner::SuiSystemStateInner"; const TYPE = new TypeDescriptor( SuiSystemStateInner.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export interface SuiSystemStateInnerV2 { epoch: bigint; protocol_version: bigint; system_state_version: bigint; validators: validator_set.ValidatorSet; storage_fund: storage_fund.StorageFund; parameters: sui_system_state_inner.SystemParametersV2; reference_gas_price: bigint; validator_report_records: _0x2.vec_map.VecMap< string, _0x2.vec_set.VecSet >; stake_subsidy: stake_subsidy.StakeSubsidy; safe_mode: boolean; safe_mode_storage_rewards: _0x2.balance.Balance<_0x2.sui.SUI>; safe_mode_computation_rewards: _0x2.balance.Balance<_0x2.sui.SUI>; safe_mode_storage_rebates: bigint; safe_mode_non_refundable_storage_fee: bigint; epoch_start_timestamp_ms: bigint; extra_fields: _0x2.bag.Bag; } export namespace SuiSystemStateInnerV2 { export const TYPE_QNAME = "0x3::sui_system_state_inner::SuiSystemStateInnerV2"; const TYPE = new TypeDescriptor( SuiSystemStateInnerV2.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export interface SystemEpochInfoEvent { epoch: bigint; protocol_version: bigint; reference_gas_price: bigint; total_stake: bigint; storage_fund_reinvestment: bigint; storage_charge: bigint; storage_rebate: bigint; storage_fund_balance: bigint; stake_subsidy_amount: bigint; total_gas_fees: bigint; total_stake_rewards_distributed: bigint; leftover_storage_fund_inflow: bigint; } export namespace SystemEpochInfoEvent { export const TYPE_QNAME = "0x3::sui_system_state_inner::SystemEpochInfoEvent"; const TYPE = new TypeDescriptor( SystemEpochInfoEvent.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export type SystemEpochInfoEventInstance = TypedEventInstance & { data_decoded: SystemEpochInfoEvent; type_arguments: []; }; export interface SystemParameters { epoch_duration_ms: bigint; stake_subsidy_start_epoch: bigint; max_validator_count: bigint; min_validator_joining_stake: bigint; validator_low_stake_threshold: bigint; validator_very_low_stake_threshold: bigint; validator_low_stake_grace_period: bigint; extra_fields: _0x2.bag.Bag; } export namespace SystemParameters { export const TYPE_QNAME = "0x3::sui_system_state_inner::SystemParameters"; const TYPE = new TypeDescriptor( SystemParameters.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export interface SystemParametersV2 { epoch_duration_ms: bigint; stake_subsidy_start_epoch: bigint; min_validator_count: bigint; max_validator_count: bigint; min_validator_joining_stake: bigint; validator_low_stake_threshold: bigint; validator_very_low_stake_threshold: bigint; validator_low_stake_grace_period: bigint; extra_fields: _0x2.bag.Bag; } export namespace SystemParametersV2 { export const TYPE_QNAME = "0x3::sui_system_state_inner::SystemParametersV2"; const TYPE = new TypeDescriptor( SystemParametersV2.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export namespace builder { export function activeValidatorAddresses( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::active_validator_addresses", arguments: _args, }); } export function activeValidatorVotingPowers( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::active_validator_voting_powers", arguments: _args, }); } export function advanceEpoch( tx: Transaction, args: [ string | TransactionObjectArgument, bigint | TransactionArgument, bigint | TransactionArgument, _0x2.balance.Balance<_0x2.sui.SUI> | TransactionArgument, _0x2.balance.Balance<_0x2.sui.SUI> | TransactionArgument, bigint | TransactionArgument, bigint | TransactionArgument, bigint | TransactionArgument, bigint | TransactionArgument, bigint | TransactionArgument, bigint | TransactionArgument, ], ): TransactionArgument & [ TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, ] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureU64(args[1], tx)); _args.push(transactionArgumentOrPureU64(args[2], tx)); _args.push(transactionArgumentOrPure(args[3], tx)); _args.push(transactionArgumentOrPure(args[4], tx)); _args.push(transactionArgumentOrPureU64(args[5], tx)); _args.push(transactionArgumentOrPureU64(args[6], tx)); _args.push(transactionArgumentOrPureU64(args[7], tx)); _args.push(transactionArgumentOrPureU64(args[8], tx)); _args.push(transactionArgumentOrPureU64(args[9], tx)); _args.push(transactionArgumentOrPureU64(args[10], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::advance_epoch", arguments: _args, }); } export function convertToFungibleStakedSui( tx: Transaction, args: [ string | TransactionObjectArgument, staking_pool.StakedSui | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::convert_to_fungible_staked_sui", arguments: _args, }); } export function create( tx: Transaction, args: [ (string | TransactionObjectArgument)[] | TransactionArgument, _0x2.balance.Balance<_0x2.sui.SUI> | TransactionArgument, bigint | TransactionArgument, bigint | TransactionArgument, sui_system_state_inner.SystemParameters | TransactionArgument, stake_subsidy.StakeSubsidy | TransactionArgument, ], ): TransactionArgument & [ TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, ] { const _args: any[] = []; _args.push(transactionArgumentOrVec(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); _args.push(transactionArgumentOrPureU64(args[2], tx)); _args.push(transactionArgumentOrPureU64(args[3], tx)); _args.push(transactionArgumentOrPure(args[4], tx)); _args.push(transactionArgumentOrPure(args[5], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::create", arguments: _args, }); } export function createSystemParameters( tx: Transaction, args: [ bigint | TransactionArgument, bigint | TransactionArgument, bigint | TransactionArgument, bigint | TransactionArgument, bigint | TransactionArgument, bigint | TransactionArgument, bigint | TransactionArgument, ], ): TransactionArgument & [ TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, ] { const _args: any[] = []; _args.push(transactionArgumentOrPureU64(args[0], tx)); _args.push(transactionArgumentOrPureU64(args[1], tx)); _args.push(transactionArgumentOrPureU64(args[2], tx)); _args.push(transactionArgumentOrPureU64(args[3], tx)); _args.push(transactionArgumentOrPureU64(args[4], tx)); _args.push(transactionArgumentOrPureU64(args[5], tx)); _args.push(transactionArgumentOrPureU64(args[6], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::create_system_parameters", arguments: _args, }); } export function epoch( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::epoch", arguments: _args, }); } export function epochStartTimestampMs( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::epoch_start_timestamp_ms", arguments: _args, }); } export function extraFields( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::extra_fields", arguments: _args, }); } export function extraFieldsMut( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::extra_fields_mut", arguments: _args, }); } export function genesisSystemStateVersion( tx: Transaction, args: [], ): TransactionArgument & [] { const _args: any[] = []; // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::genesis_system_state_version", arguments: _args, }); } export function getReportersOf( tx: Transaction, args: [string | TransactionObjectArgument, string | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureAddress(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::get_reporters_of", arguments: _args, }); } export function getStorageFundObjectRebates( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::get_storage_fund_object_rebates", arguments: _args, }); } export function getStorageFundTotalBalance( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::get_storage_fund_total_balance", arguments: _args, }); } export function poolExchangeRates( tx: Transaction, args: [ string | TransactionObjectArgument, _0x2.object$.ID | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::pool_exchange_rates", arguments: _args, }); } export function protocolVersion( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::protocol_version", arguments: _args, }); } export function redeemFungibleStakedSui( tx: Transaction, args: [ string | TransactionObjectArgument, staking_pool.FungibleStakedSui | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::redeem_fungible_staked_sui", arguments: _args, }); } export function reportValidator( tx: Transaction, args: [ string | TransactionObjectArgument, string | TransactionObjectArgument, string | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrObject(args[1], tx)); _args.push(transactionArgumentOrPureAddress(args[2], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::report_validator", arguments: _args, }); } export function requestAddStake( tx: Transaction, args: [ string | TransactionObjectArgument, _0x2.coin.Coin<_0x2.sui.SUI> | TransactionArgument, string | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); _args.push(transactionArgumentOrPureAddress(args[2], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::request_add_stake", arguments: _args, }); } export function requestAddStakeMulCoin( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, _0x1.option.Option | TransactionArgument, string | TransactionArgument, ], ): TransactionArgument & [ TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, ] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); _args.push(transactionArgumentOrPure(args[2], tx)); _args.push(transactionArgumentOrPureAddress(args[3], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::request_add_stake_mul_coin", arguments: _args, }); } export function requestAddValidator( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::request_add_validator", arguments: _args, }); } export function requestAddValidatorCandidate( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, bigint | TransactionArgument, bigint | TransactionArgument, ], ): TransactionArgument & [ TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, ] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); _args.push(transactionArgumentOrVec(args[2], tx)); _args.push(transactionArgumentOrVec(args[3], tx)); _args.push(transactionArgumentOrVec(args[4], tx)); _args.push(transactionArgumentOrVec(args[5], tx)); _args.push(transactionArgumentOrVec(args[6], tx)); _args.push(transactionArgumentOrVec(args[7], tx)); _args.push(transactionArgumentOrVec(args[8], tx)); _args.push(transactionArgumentOrVec(args[9], tx)); _args.push(transactionArgumentOrVec(args[10], tx)); _args.push(transactionArgumentOrVec(args[11], tx)); _args.push(transactionArgumentOrVec(args[12], tx)); _args.push(transactionArgumentOrPureU64(args[13], tx)); _args.push(transactionArgumentOrPureU64(args[14], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::request_add_validator_candidate", arguments: _args, }); } export function requestRemoveValidator( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::request_remove_validator", arguments: _args, }); } export function requestRemoveValidatorCandidate( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::request_remove_validator_candidate", arguments: _args, }); } export function requestSetCommissionRate( tx: Transaction, args: [string | TransactionObjectArgument, bigint | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureU64(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::request_set_commission_rate", arguments: _args, }); } export function requestSetGasPrice( tx: Transaction, args: [ string | TransactionObjectArgument, string | TransactionObjectArgument, bigint | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrObject(args[1], tx)); _args.push(transactionArgumentOrPureU64(args[2], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::request_set_gas_price", arguments: _args, }); } export function requestWithdrawStake( tx: Transaction, args: [ string | TransactionObjectArgument, staking_pool.StakedSui | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::request_withdraw_stake", arguments: _args, }); } export function rotateOperationCap( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::rotate_operation_cap", arguments: _args, }); } export function setCandidateValidatorCommissionRate( tx: Transaction, args: [string | TransactionObjectArgument, bigint | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureU64(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::set_candidate_validator_commission_rate", arguments: _args, }); } export function setCandidateValidatorGasPrice( tx: Transaction, args: [ string | TransactionObjectArgument, string | TransactionObjectArgument, bigint | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrObject(args[1], tx)); _args.push(transactionArgumentOrPureU64(args[2], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::set_candidate_validator_gas_price", arguments: _args, }); } export function storeExecutionTimeEstimates( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::store_execution_time_estimates", arguments: _args, }); } export function storeExecutionTimeEstimatesV2( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::store_execution_time_estimates_v2", arguments: _args, }); } export function systemStateVersion( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::system_state_version", arguments: _args, }); } export function undoReportValidator( tx: Transaction, args: [ string | TransactionObjectArgument, string | TransactionObjectArgument, string | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrObject(args[1], tx)); _args.push(transactionArgumentOrPureAddress(args[2], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::undo_report_validator", arguments: _args, }); } export function updateCandidateValidatorNetworkAddress( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::update_candidate_validator_network_address", arguments: _args, }); } export function updateCandidateValidatorNetworkPubkey( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::update_candidate_validator_network_pubkey", arguments: _args, }); } export function updateCandidateValidatorP2pAddress( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::update_candidate_validator_p2p_address", arguments: _args, }); } export function updateCandidateValidatorPrimaryAddress( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::update_candidate_validator_primary_address", arguments: _args, }); } export function updateCandidateValidatorProtocolPubkey( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); _args.push(transactionArgumentOrVec(args[2], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::update_candidate_validator_protocol_pubkey", arguments: _args, }); } export function updateCandidateValidatorWorkerAddress( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::update_candidate_validator_worker_address", arguments: _args, }); } export function updateCandidateValidatorWorkerPubkey( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::update_candidate_validator_worker_pubkey", arguments: _args, }); } export function updateValidatorDescription( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::update_validator_description", arguments: _args, }); } export function updateValidatorImageUrl( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::update_validator_image_url", arguments: _args, }); } export function updateValidatorName( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::update_validator_name", arguments: _args, }); } export function updateValidatorNextEpochNetworkAddress( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::update_validator_next_epoch_network_address", arguments: _args, }); } export function updateValidatorNextEpochNetworkPubkey( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::update_validator_next_epoch_network_pubkey", arguments: _args, }); } export function updateValidatorNextEpochP2pAddress( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::update_validator_next_epoch_p2p_address", arguments: _args, }); } export function updateValidatorNextEpochPrimaryAddress( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::update_validator_next_epoch_primary_address", arguments: _args, }); } export function updateValidatorNextEpochProtocolPubkey( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); _args.push(transactionArgumentOrVec(args[2], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::update_validator_next_epoch_protocol_pubkey", arguments: _args, }); } export function updateValidatorNextEpochWorkerAddress( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::update_validator_next_epoch_worker_address", arguments: _args, }); } export function updateValidatorNextEpochWorkerPubkey( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::update_validator_next_epoch_worker_pubkey", arguments: _args, }); } export function updateValidatorProjectUrl( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::update_validator_project_url", arguments: _args, }); } export function v1ToV2( tx: Transaction, args: [sui_system_state_inner.SuiSystemStateInner | TransactionArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrPure(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::v1_to_v2", arguments: _args, }); } export function validatorAddressByPoolId( tx: Transaction, args: [ string | TransactionObjectArgument, string | TransactionObjectArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrObject(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::validator_address_by_pool_id", arguments: _args, }); } export function validatorStakeAmount( tx: Transaction, args: [string | TransactionObjectArgument, string | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureAddress(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::validator_stake_amount", arguments: _args, }); } export function validatorStakingPoolId( tx: Transaction, args: [string | TransactionObjectArgument, string | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureAddress(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::validator_staking_pool_id", arguments: _args, }); } export function validatorStakingPoolMappings( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::validator_staking_pool_mappings", arguments: _args, }); } export function validators( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::validators", arguments: _args, }); } export function validatorsMut( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::sui_system_state_inner::validators_mut", arguments: _args, }); } } export namespace view { export async function activeValidatorAddresses( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.activeValidatorAddresses(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string[]]>( simulateRes, ["Vector
"], ); } export async function activeValidatorVotingPowers( client: SuiGrpcClient, args: [string], ): Promise]>> { const tx = new Transaction(); builder.activeValidatorVotingPowers(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [_0x2.vec_map.VecMap] >(simulateRes, ["0x2::vec_map::VecMap"]); } export async function advanceEpoch( client: SuiGrpcClient, args: [ string, bigint, bigint, _0x2.balance.Balance<_0x2.sui.SUI>, _0x2.balance.Balance<_0x2.sui.SUI>, bigint, bigint, bigint, bigint, bigint, bigint, ], ): Promise]>> { const tx = new Transaction(); builder.advanceEpoch(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [_0x2.balance.Balance<_0x2.sui.SUI>] >(simulateRes, ["0x2::balance::Balance<0x2::sui::SUI>"]); } export async function convertToFungibleStakedSui( client: SuiGrpcClient, args: [string, staking_pool.StakedSui], ): Promise> { const tx = new Transaction(); builder.convertToFungibleStakedSui(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [staking_pool.FungibleStakedSui] >(simulateRes, ["0x3::staking_pool::FungibleStakedSui"]); } export async function create( client: SuiGrpcClient, args: [ string[], _0x2.balance.Balance<_0x2.sui.SUI>, bigint, bigint, sui_system_state_inner.SystemParameters, stake_subsidy.StakeSubsidy, ], ): Promise< TypedSimulateResults<[sui_system_state_inner.SuiSystemStateInner]> > { const tx = new Transaction(); builder.create(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [sui_system_state_inner.SuiSystemStateInner] >(simulateRes, ["0x3::sui_system_state_inner::SuiSystemStateInner"]); } export async function createSystemParameters( client: SuiGrpcClient, args: [bigint, bigint, bigint, bigint, bigint, bigint, bigint], ): Promise< TypedSimulateResults<[sui_system_state_inner.SystemParameters]> > { const tx = new Transaction(); builder.createSystemParameters(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [sui_system_state_inner.SystemParameters] >(simulateRes, ["0x3::sui_system_state_inner::SystemParameters"]); } export async function epoch( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.epoch(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function epochStartTimestampMs( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.epochStartTimestampMs(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function extraFields( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.extraFields(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x2::bag::Bag"], ); } export async function extraFieldsMut( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.extraFieldsMut(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x2::bag::Bag"], ); } export async function genesisSystemStateVersion( client: SuiGrpcClient, args: [], ): Promise> { const tx = new Transaction(); builder.genesisSystemStateVersion(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function getReportersOf( client: SuiGrpcClient, args: [string, string], ): Promise]>> { const tx = new Transaction(); builder.getReportersOf(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [_0x2.vec_set.VecSet] >(simulateRes, ["0x2::vec_set::VecSet
"]); } export async function getStorageFundObjectRebates( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.getStorageFundObjectRebates(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function getStorageFundTotalBalance( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.getStorageFundTotalBalance(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function poolExchangeRates( client: SuiGrpcClient, args: [string, _0x2.object$.ID], ): Promise> { const tx = new Transaction(); builder.poolExchangeRates(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x2::table::Table"], ); } export async function protocolVersion( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.protocolVersion(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function redeemFungibleStakedSui( client: SuiGrpcClient, args: [string, staking_pool.FungibleStakedSui], ): Promise]>> { const tx = new Transaction(); builder.redeemFungibleStakedSui(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [_0x2.balance.Balance<_0x2.sui.SUI>] >(simulateRes, ["0x2::balance::Balance<0x2::sui::SUI>"]); } export async function reportValidator( client: SuiGrpcClient, args: [string, string, string], ): Promise> { const tx = new Transaction(); builder.reportValidator(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function requestAddStake( client: SuiGrpcClient, args: [string, _0x2.coin.Coin<_0x2.sui.SUI>, string], ): Promise> { const tx = new Transaction(); builder.requestAddStake(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [staking_pool.StakedSui] >(simulateRes, ["0x3::staking_pool::StakedSui"]); } export async function requestAddStakeMulCoin( client: SuiGrpcClient, args: [string, string[], _0x1.option.Option, string], ): Promise> { const tx = new Transaction(); builder.requestAddStakeMulCoin(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [staking_pool.StakedSui] >(simulateRes, ["0x3::staking_pool::StakedSui"]); } export async function requestAddValidator( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.requestAddValidator(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function requestAddValidatorCandidate( client: SuiGrpcClient, args: [ string, string[], string[], string[], string[], string[], string[], string[], string[], string[], string[], string[], string[], bigint, bigint, ], ): Promise> { const tx = new Transaction(); builder.requestAddValidatorCandidate(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function requestRemoveValidator( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.requestRemoveValidator(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function requestRemoveValidatorCandidate( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.requestRemoveValidatorCandidate(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function requestSetCommissionRate( client: SuiGrpcClient, args: [string, bigint], ): Promise> { const tx = new Transaction(); builder.requestSetCommissionRate(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function requestSetGasPrice( client: SuiGrpcClient, args: [string, string, bigint], ): Promise> { const tx = new Transaction(); builder.requestSetGasPrice(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function requestWithdrawStake( client: SuiGrpcClient, args: [string, staking_pool.StakedSui], ): Promise]>> { const tx = new Transaction(); builder.requestWithdrawStake(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [_0x2.balance.Balance<_0x2.sui.SUI>] >(simulateRes, ["0x2::balance::Balance<0x2::sui::SUI>"]); } export async function rotateOperationCap( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.rotateOperationCap(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function setCandidateValidatorCommissionRate( client: SuiGrpcClient, args: [string, bigint], ): Promise> { const tx = new Transaction(); builder.setCandidateValidatorCommissionRate(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function setCandidateValidatorGasPrice( client: SuiGrpcClient, args: [string, string, bigint], ): Promise> { const tx = new Transaction(); builder.setCandidateValidatorGasPrice(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function storeExecutionTimeEstimates( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.storeExecutionTimeEstimates(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function storeExecutionTimeEstimatesV2( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.storeExecutionTimeEstimatesV2(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function systemStateVersion( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.systemStateVersion(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function undoReportValidator( client: SuiGrpcClient, args: [string, string, string], ): Promise> { const tx = new Transaction(); builder.undoReportValidator(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateCandidateValidatorNetworkAddress( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateCandidateValidatorNetworkAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateCandidateValidatorNetworkPubkey( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateCandidateValidatorNetworkPubkey(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateCandidateValidatorP2pAddress( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateCandidateValidatorP2pAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateCandidateValidatorPrimaryAddress( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateCandidateValidatorPrimaryAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateCandidateValidatorProtocolPubkey( client: SuiGrpcClient, args: [string, string[], string[]], ): Promise> { const tx = new Transaction(); builder.updateCandidateValidatorProtocolPubkey(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateCandidateValidatorWorkerAddress( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateCandidateValidatorWorkerAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateCandidateValidatorWorkerPubkey( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateCandidateValidatorWorkerPubkey(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateValidatorDescription( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateValidatorDescription(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateValidatorImageUrl( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateValidatorImageUrl(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateValidatorName( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateValidatorName(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateValidatorNextEpochNetworkAddress( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateValidatorNextEpochNetworkAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateValidatorNextEpochNetworkPubkey( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateValidatorNextEpochNetworkPubkey(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateValidatorNextEpochP2pAddress( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateValidatorNextEpochP2pAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateValidatorNextEpochPrimaryAddress( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateValidatorNextEpochPrimaryAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateValidatorNextEpochProtocolPubkey( client: SuiGrpcClient, args: [string, string[], string[]], ): Promise> { const tx = new Transaction(); builder.updateValidatorNextEpochProtocolPubkey(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateValidatorNextEpochWorkerAddress( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateValidatorNextEpochWorkerAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateValidatorNextEpochWorkerPubkey( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateValidatorNextEpochWorkerPubkey(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateValidatorProjectUrl( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateValidatorProjectUrl(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function v1ToV2( client: SuiGrpcClient, args: [sui_system_state_inner.SuiSystemStateInner], ): Promise< TypedSimulateResults<[sui_system_state_inner.SuiSystemStateInnerV2]> > { const tx = new Transaction(); builder.v1ToV2(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [sui_system_state_inner.SuiSystemStateInnerV2] >(simulateRes, ["0x3::sui_system_state_inner::SuiSystemStateInnerV2"]); } export async function validatorAddressByPoolId( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.validatorAddressByPoolId(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["Address"], ); } export async function validatorStakeAmount( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.validatorStakeAmount(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function validatorStakingPoolId( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.validatorStakingPoolId(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [_0x2.object$.ID] >(simulateRes, ["0x2::object::ID"]); } export async function validatorStakingPoolMappings( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.validatorStakingPoolMappings(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x2::table::Table<0x2::object::ID, Address>"], ); } export async function validators( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.validators(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x3::validator_set::ValidatorSet"], ); } export async function validatorsMut( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.validatorsMut(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x3::validator_set::ValidatorSet"], ); } } } export class validator extends SuiBaseProcessor { constructor(options: SuiBindOptions) { super("validator", options); } static DEFAULT_OPTIONS: SuiBindOptions = { address: "0x3", network: SuiNetwork.MAIN_NET, }; static bind(options: Partial = {}): validator { return new validator({ ...validator.DEFAULT_OPTIONS, ...options }); } onEventConvertingToFungibleStakedSuiEvent( func: ( event: validator.ConvertingToFungibleStakedSuiEventInstance, ctx: SuiContext, ) => void, handlerOptions?: HandlerOptions< MoveFetchConfig, validator.ConvertingToFungibleStakedSuiEventInstance >, eventFilter?: Omit, ): validator { this.onMoveEvent( func, { ...(eventFilter ?? {}), type: "validator::ConvertingToFungibleStakedSuiEvent", }, handlerOptions, ); return this; } onEventRedeemingFungibleStakedSuiEvent( func: ( event: validator.RedeemingFungibleStakedSuiEventInstance, ctx: SuiContext, ) => void, handlerOptions?: HandlerOptions< MoveFetchConfig, validator.RedeemingFungibleStakedSuiEventInstance >, eventFilter?: Omit, ): validator { this.onMoveEvent( func, { ...(eventFilter ?? {}), type: "validator::RedeemingFungibleStakedSuiEvent", }, handlerOptions, ); return this; } onEventStakingRequestEvent( func: ( event: validator.StakingRequestEventInstance, ctx: SuiContext, ) => void, handlerOptions?: HandlerOptions< MoveFetchConfig, validator.StakingRequestEventInstance >, eventFilter?: Omit, ): validator { this.onMoveEvent( func, { ...(eventFilter ?? {}), type: "validator::StakingRequestEvent" }, handlerOptions, ); return this; } onEventUnstakingRequestEvent( func: ( event: validator.UnstakingRequestEventInstance, ctx: SuiContext, ) => void, handlerOptions?: HandlerOptions< MoveFetchConfig, validator.UnstakingRequestEventInstance >, eventFilter?: Omit, ): validator { this.onMoveEvent( func, { ...(eventFilter ?? {}), type: "validator::UnstakingRequestEvent" }, handlerOptions, ); return this; } } export namespace validator { export interface ConvertingToFungibleStakedSuiEvent { pool_id: _0x2.object$.ID; stake_activation_epoch: bigint; staked_sui_principal_amount: bigint; fungible_staked_sui_amount: bigint; } export namespace ConvertingToFungibleStakedSuiEvent { export const TYPE_QNAME = "0x3::validator::ConvertingToFungibleStakedSuiEvent"; const TYPE = new TypeDescriptor( ConvertingToFungibleStakedSuiEvent.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export type ConvertingToFungibleStakedSuiEventInstance = TypedEventInstance & { data_decoded: ConvertingToFungibleStakedSuiEvent; type_arguments: []; }; export interface RedeemingFungibleStakedSuiEvent { pool_id: _0x2.object$.ID; fungible_staked_sui_amount: bigint; sui_amount: bigint; } export namespace RedeemingFungibleStakedSuiEvent { export const TYPE_QNAME = "0x3::validator::RedeemingFungibleStakedSuiEvent"; const TYPE = new TypeDescriptor( RedeemingFungibleStakedSuiEvent.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export type RedeemingFungibleStakedSuiEventInstance = TypedEventInstance & { data_decoded: RedeemingFungibleStakedSuiEvent; type_arguments: []; }; export interface StakingRequestEvent { pool_id: _0x2.object$.ID; validator_address: string; staker_address: string; epoch: bigint; amount: bigint; } export namespace StakingRequestEvent { export const TYPE_QNAME = "0x3::validator::StakingRequestEvent"; const TYPE = new TypeDescriptor( StakingRequestEvent.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export type StakingRequestEventInstance = TypedEventInstance & { data_decoded: StakingRequestEvent; type_arguments: []; }; export interface UnstakingRequestEvent { pool_id: _0x2.object$.ID; validator_address: string; staker_address: string; stake_activation_epoch: bigint; unstaking_epoch: bigint; principal_amount: bigint; reward_amount: bigint; } export namespace UnstakingRequestEvent { export const TYPE_QNAME = "0x3::validator::UnstakingRequestEvent"; const TYPE = new TypeDescriptor( UnstakingRequestEvent.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export type UnstakingRequestEventInstance = TypedEventInstance & { data_decoded: UnstakingRequestEvent; type_arguments: []; }; export interface Validator { metadata: validator.ValidatorMetadata; voting_power: bigint; operation_cap_id: _0x2.object$.ID; gas_price: bigint; staking_pool: staking_pool.StakingPool; commission_rate: bigint; next_epoch_stake: bigint; next_epoch_gas_price: bigint; next_epoch_commission_rate: bigint; extra_fields: _0x2.bag.Bag; } export namespace Validator { export const TYPE_QNAME = "0x3::validator::Validator"; const TYPE = new TypeDescriptor(Validator.TYPE_QNAME); export function type(): TypeDescriptor { return TYPE.apply(); } } export interface ValidatorMetadata { sui_address: string; protocol_pubkey_bytes: number[]; network_pubkey_bytes: number[]; worker_pubkey_bytes: number[]; proof_of_possession: number[]; name: string; description: string; image_url: _0x2.url.Url; project_url: _0x2.url.Url; net_address: string; p2p_address: string; primary_address: string; worker_address: string; next_epoch_protocol_pubkey_bytes: _0x1.option.Option; next_epoch_proof_of_possession: _0x1.option.Option; next_epoch_network_pubkey_bytes: _0x1.option.Option; next_epoch_worker_pubkey_bytes: _0x1.option.Option; next_epoch_net_address: _0x1.option.Option; next_epoch_p2p_address: _0x1.option.Option; next_epoch_primary_address: _0x1.option.Option; next_epoch_worker_address: _0x1.option.Option; extra_fields: _0x2.bag.Bag; } export namespace ValidatorMetadata { export const TYPE_QNAME = "0x3::validator::ValidatorMetadata"; const TYPE = new TypeDescriptor( ValidatorMetadata.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export namespace builder { export function activate( tx: Transaction, args: [string | TransactionObjectArgument, bigint | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureU64(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::activate", arguments: _args, }); } export function adjustStakeAndGasPrice( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::adjust_stake_and_gas_price", arguments: _args, }); } export function commissionRate( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::commission_rate", arguments: _args, }); } export function convertToFungibleStakedSui( tx: Transaction, args: [ string | TransactionObjectArgument, staking_pool.StakedSui | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::convert_to_fungible_staked_sui", arguments: _args, }); } export function deactivate( tx: Transaction, args: [string | TransactionObjectArgument, bigint | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureU64(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::deactivate", arguments: _args, }); } export function depositStakeRewards( tx: Transaction, args: [ string | TransactionObjectArgument, _0x2.balance.Balance<_0x2.sui.SUI> | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::deposit_stake_rewards", arguments: _args, }); } export function description( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::description", arguments: _args, }); } export function effectuateStagedMetadata( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::effectuate_staged_metadata", arguments: _args, }); } export function gasPrice( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::gas_price", arguments: _args, }); } export function getStakingPoolRef( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::get_staking_pool_ref", arguments: _args, }); } export function imageUrl( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::image_url", arguments: _args, }); } export function isDuplicate( tx: Transaction, args: [ string | TransactionObjectArgument, string | TransactionObjectArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrObject(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::is_duplicate", arguments: _args, }); } export function isPreactive( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::is_preactive", arguments: _args, }); } export function metadata( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::metadata", arguments: _args, }); } export function name( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::name", arguments: _args, }); } export function networkAddress( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::network_address", arguments: _args, }); } export function networkPubkeyBytes( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::network_pubkey_bytes", arguments: _args, }); } export function new$( tx: Transaction, args: [ string | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, bigint | TransactionArgument, bigint | TransactionArgument, ], ): TransactionArgument & [ TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, ] { const _args: any[] = []; _args.push(transactionArgumentOrPureAddress(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); _args.push(transactionArgumentOrVec(args[2], tx)); _args.push(transactionArgumentOrVec(args[3], tx)); _args.push(transactionArgumentOrVec(args[4], tx)); _args.push(transactionArgumentOrVec(args[5], tx)); _args.push(transactionArgumentOrVec(args[6], tx)); _args.push(transactionArgumentOrVec(args[7], tx)); _args.push(transactionArgumentOrVec(args[8], tx)); _args.push(transactionArgumentOrVec(args[9], tx)); _args.push(transactionArgumentOrVec(args[10], tx)); _args.push(transactionArgumentOrVec(args[11], tx)); _args.push(transactionArgumentOrVec(args[12], tx)); _args.push(transactionArgumentOrPureU64(args[13], tx)); _args.push(transactionArgumentOrPureU64(args[14], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::new", arguments: _args, }); } export function newMetadata( tx: Transaction, args: [ string | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, string | TransactionArgument, string | TransactionArgument, _0x2.url.Url | TransactionArgument, _0x2.url.Url | TransactionArgument, string | TransactionArgument, string | TransactionArgument, string | TransactionArgument, string | TransactionArgument, _0x2.bag.Bag | TransactionArgument, ], ): TransactionArgument & [ TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, ] { const _args: any[] = []; _args.push(transactionArgumentOrPureAddress(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); _args.push(transactionArgumentOrVec(args[2], tx)); _args.push(transactionArgumentOrVec(args[3], tx)); _args.push(transactionArgumentOrVec(args[4], tx)); _args.push(transactionArgumentOrPure(args[5], tx)); _args.push(transactionArgumentOrPure(args[6], tx)); _args.push(transactionArgumentOrPure(args[7], tx)); _args.push(transactionArgumentOrPure(args[8], tx)); _args.push(transactionArgumentOrPure(args[9], tx)); _args.push(transactionArgumentOrPure(args[10], tx)); _args.push(transactionArgumentOrPure(args[11], tx)); _args.push(transactionArgumentOrPure(args[12], tx)); _args.push(transactionArgumentOrPure(args[13], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::new_metadata", arguments: _args, }); } export function newUnverifiedValidatorOperationCapAndTransfer( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::new_unverified_validator_operation_cap_and_transfer", arguments: _args, }); } export function nextEpochGasPrice( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::next_epoch_gas_price", arguments: _args, }); } export function nextEpochNetworkAddress( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::next_epoch_network_address", arguments: _args, }); } export function nextEpochNetworkPubkeyBytes( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::next_epoch_network_pubkey_bytes", arguments: _args, }); } export function nextEpochP2pAddress( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::next_epoch_p2p_address", arguments: _args, }); } export function nextEpochPrimaryAddress( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::next_epoch_primary_address", arguments: _args, }); } export function nextEpochProofOfPossession( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::next_epoch_proof_of_possession", arguments: _args, }); } export function nextEpochProtocolPubkeyBytes( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::next_epoch_protocol_pubkey_bytes", arguments: _args, }); } export function nextEpochWorkerAddress( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::next_epoch_worker_address", arguments: _args, }); } export function nextEpochWorkerPubkeyBytes( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::next_epoch_worker_pubkey_bytes", arguments: _args, }); } export function operationCapId( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::operation_cap_id", arguments: _args, }); } export function p2pAddress( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::p2p_address", arguments: _args, }); } export function pendingStakeAmount( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::pending_stake_amount", arguments: _args, }); } export function pendingStakeWithdrawAmount( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::pending_stake_withdraw_amount", arguments: _args, }); } export function poolTokenExchangeRateAtEpoch( tx: Transaction, args: [string | TransactionObjectArgument, bigint | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureU64(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::pool_token_exchange_rate_at_epoch", arguments: _args, }); } export function primaryAddress( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::primary_address", arguments: _args, }); } export function processPendingStakesAndWithdraws( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::process_pending_stakes_and_withdraws", arguments: _args, }); } export function projectUrl( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::project_url", arguments: _args, }); } export function proofOfPossession( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::proof_of_possession", arguments: _args, }); } export function protocolPubkeyBytes( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::protocol_pubkey_bytes", arguments: _args, }); } export function redeemFungibleStakedSui( tx: Transaction, args: [ string | TransactionObjectArgument, staking_pool.FungibleStakedSui | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::redeem_fungible_staked_sui", arguments: _args, }); } export function requestAddStake( tx: Transaction, args: [ string | TransactionObjectArgument, _0x2.balance.Balance<_0x2.sui.SUI> | TransactionArgument, string | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); _args.push(transactionArgumentOrPureAddress(args[2], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::request_add_stake", arguments: _args, }); } export function requestAddStakeAtGenesis( tx: Transaction, args: [ string | TransactionObjectArgument, _0x2.balance.Balance<_0x2.sui.SUI> | TransactionArgument, string | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); _args.push(transactionArgumentOrPureAddress(args[2], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::request_add_stake_at_genesis", arguments: _args, }); } export function requestSetCommissionRate( tx: Transaction, args: [string | TransactionObjectArgument, bigint | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureU64(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::request_set_commission_rate", arguments: _args, }); } export function requestSetGasPrice( tx: Transaction, args: [ string | TransactionObjectArgument, validator_cap.ValidatorOperationCap | TransactionArgument, bigint | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); _args.push(transactionArgumentOrPureU64(args[2], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::request_set_gas_price", arguments: _args, }); } export function requestWithdrawStake( tx: Transaction, args: [ string | TransactionObjectArgument, staking_pool.StakedSui | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::request_withdraw_stake", arguments: _args, }); } export function setCandidateCommissionRate( tx: Transaction, args: [string | TransactionObjectArgument, bigint | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureU64(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::set_candidate_commission_rate", arguments: _args, }); } export function setCandidateGasPrice( tx: Transaction, args: [ string | TransactionObjectArgument, validator_cap.ValidatorOperationCap | TransactionArgument, bigint | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); _args.push(transactionArgumentOrPureU64(args[2], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::set_candidate_gas_price", arguments: _args, }); } export function setVotingPower( tx: Transaction, args: [string | TransactionObjectArgument, bigint | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureU64(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::set_voting_power", arguments: _args, }); } export function stakeAmount( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::stake_amount", arguments: _args, }); } export function stakingPoolId( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::staking_pool_id", arguments: _args, }); } export function suiAddress( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::sui_address", arguments: _args, }); } export function totalStake( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::total_stake", arguments: _args, }); } export function totalStakeAmount( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::total_stake_amount", arguments: _args, }); } export function updateCandidateNetworkAddress( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::update_candidate_network_address", arguments: _args, }); } export function updateCandidateNetworkPubkey( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::update_candidate_network_pubkey", arguments: _args, }); } export function updateCandidateP2pAddress( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::update_candidate_p2p_address", arguments: _args, }); } export function updateCandidatePrimaryAddress( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::update_candidate_primary_address", arguments: _args, }); } export function updateCandidateProtocolPubkey( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); _args.push(transactionArgumentOrVec(args[2], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::update_candidate_protocol_pubkey", arguments: _args, }); } export function updateCandidateWorkerAddress( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::update_candidate_worker_address", arguments: _args, }); } export function updateCandidateWorkerPubkey( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::update_candidate_worker_pubkey", arguments: _args, }); } export function updateDescription( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::update_description", arguments: _args, }); } export function updateImageUrl( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::update_image_url", arguments: _args, }); } export function updateName( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::update_name", arguments: _args, }); } export function updateNextEpochNetworkAddress( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::update_next_epoch_network_address", arguments: _args, }); } export function updateNextEpochNetworkPubkey( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::update_next_epoch_network_pubkey", arguments: _args, }); } export function updateNextEpochP2pAddress( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::update_next_epoch_p2p_address", arguments: _args, }); } export function updateNextEpochPrimaryAddress( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::update_next_epoch_primary_address", arguments: _args, }); } export function updateNextEpochProtocolPubkey( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); _args.push(transactionArgumentOrVec(args[2], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::update_next_epoch_protocol_pubkey", arguments: _args, }); } export function updateNextEpochWorkerAddress( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::update_next_epoch_worker_address", arguments: _args, }); } export function updateNextEpochWorkerPubkey( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::update_next_epoch_worker_pubkey", arguments: _args, }); } export function updateProjectUrl( tx: Transaction, args: [ string | TransactionObjectArgument, (string | TransactionObjectArgument)[] | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrVec(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::update_project_url", arguments: _args, }); } export function validateMetadata( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::validate_metadata", arguments: _args, }); } export function validateMetadataBcs( tx: Transaction, args: [(string | TransactionObjectArgument)[] | TransactionArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrVec(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::validate_metadata_bcs", arguments: _args, }); } export function votingPower( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::voting_power", arguments: _args, }); } export function workerAddress( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::worker_address", arguments: _args, }); } export function workerPubkeyBytes( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator::worker_pubkey_bytes", arguments: _args, }); } } export namespace view { export async function activate( client: SuiGrpcClient, args: [string, bigint], ): Promise> { const tx = new Transaction(); builder.activate(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function adjustStakeAndGasPrice( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.adjustStakeAndGasPrice(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function commissionRate( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.commissionRate(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function convertToFungibleStakedSui( client: SuiGrpcClient, args: [string, staking_pool.StakedSui], ): Promise> { const tx = new Transaction(); builder.convertToFungibleStakedSui(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [staking_pool.FungibleStakedSui] >(simulateRes, ["0x3::staking_pool::FungibleStakedSui"]); } export async function deactivate( client: SuiGrpcClient, args: [string, bigint], ): Promise> { const tx = new Transaction(); builder.deactivate(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function depositStakeRewards( client: SuiGrpcClient, args: [string, _0x2.balance.Balance<_0x2.sui.SUI>], ): Promise> { const tx = new Transaction(); builder.depositStakeRewards(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function description( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.description(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x1::string::String"], ); } export async function effectuateStagedMetadata( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.effectuateStagedMetadata(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function gasPrice( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.gasPrice(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function getStakingPoolRef( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.getStakingPoolRef(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x3::staking_pool::StakingPool"], ); } export async function imageUrl( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.imageUrl(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x2::url::Url"], ); } export async function isDuplicate( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.isDuplicate(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[boolean]>( simulateRes, ["Bool"], ); } export async function isPreactive( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.isPreactive(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[boolean]>( simulateRes, ["Bool"], ); } export async function metadata( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.metadata(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x3::validator::ValidatorMetadata"], ); } export async function name( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.name(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x1::string::String"], ); } export async function networkAddress( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.networkAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x1::string::String"], ); } export async function networkPubkeyBytes( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.networkPubkeyBytes(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["Vector"], ); } export async function new$( client: SuiGrpcClient, args: [ string, string[], string[], string[], string[], string[], string[], string[], string[], string[], string[], string[], string[], bigint, bigint, ], ): Promise> { const tx = new Transaction(); builder.new$(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [validator.Validator] >(simulateRes, ["0x3::validator::Validator"]); } export async function newMetadata( client: SuiGrpcClient, args: [ string, string[], string[], string[], string[], string, string, _0x2.url.Url, _0x2.url.Url, string, string, string, string, _0x2.bag.Bag, ], ): Promise> { const tx = new Transaction(); builder.newMetadata(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [validator.ValidatorMetadata] >(simulateRes, ["0x3::validator::ValidatorMetadata"]); } export async function newUnverifiedValidatorOperationCapAndTransfer( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.newUnverifiedValidatorOperationCapAndTransfer(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function nextEpochGasPrice( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.nextEpochGasPrice(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function nextEpochNetworkAddress( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.nextEpochNetworkAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x1::option::Option<0x1::string::String>"], ); } export async function nextEpochNetworkPubkeyBytes( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.nextEpochNetworkPubkeyBytes(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x1::option::Option>"], ); } export async function nextEpochP2pAddress( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.nextEpochP2pAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x1::option::Option<0x1::string::String>"], ); } export async function nextEpochPrimaryAddress( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.nextEpochPrimaryAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x1::option::Option<0x1::string::String>"], ); } export async function nextEpochProofOfPossession( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.nextEpochProofOfPossession(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x1::option::Option>"], ); } export async function nextEpochProtocolPubkeyBytes( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.nextEpochProtocolPubkeyBytes(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x1::option::Option>"], ); } export async function nextEpochWorkerAddress( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.nextEpochWorkerAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x1::option::Option<0x1::string::String>"], ); } export async function nextEpochWorkerPubkeyBytes( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.nextEpochWorkerPubkeyBytes(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x1::option::Option>"], ); } export async function operationCapId( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.operationCapId(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x2::object::ID"], ); } export async function p2pAddress( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.p2pAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x1::string::String"], ); } export async function pendingStakeAmount( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.pendingStakeAmount(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function pendingStakeWithdrawAmount( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.pendingStakeWithdrawAmount(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function poolTokenExchangeRateAtEpoch( client: SuiGrpcClient, args: [string, bigint], ): Promise> { const tx = new Transaction(); builder.poolTokenExchangeRateAtEpoch(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [staking_pool.PoolTokenExchangeRate] >(simulateRes, ["0x3::staking_pool::PoolTokenExchangeRate"]); } export async function primaryAddress( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.primaryAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x1::string::String"], ); } export async function processPendingStakesAndWithdraws( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.processPendingStakesAndWithdraws(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function projectUrl( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.projectUrl(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x2::url::Url"], ); } export async function proofOfPossession( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.proofOfPossession(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["Vector"], ); } export async function protocolPubkeyBytes( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.protocolPubkeyBytes(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["Vector"], ); } export async function redeemFungibleStakedSui( client: SuiGrpcClient, args: [string, staking_pool.FungibleStakedSui], ): Promise]>> { const tx = new Transaction(); builder.redeemFungibleStakedSui(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [_0x2.balance.Balance<_0x2.sui.SUI>] >(simulateRes, ["0x2::balance::Balance<0x2::sui::SUI>"]); } export async function requestAddStake( client: SuiGrpcClient, args: [string, _0x2.balance.Balance<_0x2.sui.SUI>, string], ): Promise> { const tx = new Transaction(); builder.requestAddStake(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [staking_pool.StakedSui] >(simulateRes, ["0x3::staking_pool::StakedSui"]); } export async function requestAddStakeAtGenesis( client: SuiGrpcClient, args: [string, _0x2.balance.Balance<_0x2.sui.SUI>, string], ): Promise> { const tx = new Transaction(); builder.requestAddStakeAtGenesis(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function requestSetCommissionRate( client: SuiGrpcClient, args: [string, bigint], ): Promise> { const tx = new Transaction(); builder.requestSetCommissionRate(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function requestSetGasPrice( client: SuiGrpcClient, args: [string, validator_cap.ValidatorOperationCap, bigint], ): Promise> { const tx = new Transaction(); builder.requestSetGasPrice(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function requestWithdrawStake( client: SuiGrpcClient, args: [string, staking_pool.StakedSui], ): Promise]>> { const tx = new Transaction(); builder.requestWithdrawStake(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [_0x2.balance.Balance<_0x2.sui.SUI>] >(simulateRes, ["0x2::balance::Balance<0x2::sui::SUI>"]); } export async function setCandidateCommissionRate( client: SuiGrpcClient, args: [string, bigint], ): Promise> { const tx = new Transaction(); builder.setCandidateCommissionRate(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function setCandidateGasPrice( client: SuiGrpcClient, args: [string, validator_cap.ValidatorOperationCap, bigint], ): Promise> { const tx = new Transaction(); builder.setCandidateGasPrice(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function setVotingPower( client: SuiGrpcClient, args: [string, bigint], ): Promise> { const tx = new Transaction(); builder.setVotingPower(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function stakeAmount( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.stakeAmount(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function stakingPoolId( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.stakingPoolId(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [_0x2.object$.ID] >(simulateRes, ["0x2::object::ID"]); } export async function suiAddress( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.suiAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["Address"], ); } export async function totalStake( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.totalStake(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function totalStakeAmount( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.totalStakeAmount(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function updateCandidateNetworkAddress( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateCandidateNetworkAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateCandidateNetworkPubkey( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateCandidateNetworkPubkey(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateCandidateP2pAddress( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateCandidateP2pAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateCandidatePrimaryAddress( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateCandidatePrimaryAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateCandidateProtocolPubkey( client: SuiGrpcClient, args: [string, string[], string[]], ): Promise> { const tx = new Transaction(); builder.updateCandidateProtocolPubkey(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateCandidateWorkerAddress( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateCandidateWorkerAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateCandidateWorkerPubkey( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateCandidateWorkerPubkey(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateDescription( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateDescription(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateImageUrl( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateImageUrl(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateName( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateName(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateNextEpochNetworkAddress( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateNextEpochNetworkAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateNextEpochNetworkPubkey( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateNextEpochNetworkPubkey(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateNextEpochP2pAddress( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateNextEpochP2pAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateNextEpochPrimaryAddress( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateNextEpochPrimaryAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateNextEpochProtocolPubkey( client: SuiGrpcClient, args: [string, string[], string[]], ): Promise> { const tx = new Transaction(); builder.updateNextEpochProtocolPubkey(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateNextEpochWorkerAddress( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateNextEpochWorkerAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateNextEpochWorkerPubkey( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateNextEpochWorkerPubkey(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function updateProjectUrl( client: SuiGrpcClient, args: [string, string[]], ): Promise> { const tx = new Transaction(); builder.updateProjectUrl(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function validateMetadata( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.validateMetadata(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function validateMetadataBcs( client: SuiGrpcClient, args: [string[]], ): Promise> { const tx = new Transaction(); builder.validateMetadataBcs(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function votingPower( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.votingPower(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function workerAddress( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.workerAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x1::string::String"], ); } export async function workerPubkeyBytes( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.workerPubkeyBytes(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["Vector"], ); } } } export namespace validator_cap { export interface UnverifiedValidatorOperationCap { id: _0x2.object$.UID; authorizer_validator_address: string; } export namespace UnverifiedValidatorOperationCap { export const TYPE_QNAME = "0x3::validator_cap::UnverifiedValidatorOperationCap"; const TYPE = new TypeDescriptor( UnverifiedValidatorOperationCap.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export interface ValidatorOperationCap { authorizer_validator_address: string; } export namespace ValidatorOperationCap { export const TYPE_QNAME = "0x3::validator_cap::ValidatorOperationCap"; const TYPE = new TypeDescriptor( ValidatorOperationCap.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export namespace builder { export function intoVerified( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_cap::into_verified", arguments: _args, }); } export function newUnverifiedValidatorOperationCapAndTransfer( tx: Transaction, args: [string | TransactionArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrPureAddress(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_cap::new_unverified_validator_operation_cap_and_transfer", arguments: _args, }); } export function unverifiedOperationCapAddress( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_cap::unverified_operation_cap_address", arguments: _args, }); } export function verifiedOperationCapAddress( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_cap::verified_operation_cap_address", arguments: _args, }); } } export namespace view { export async function intoVerified( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.intoVerified(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [validator_cap.ValidatorOperationCap] >(simulateRes, ["0x3::validator_cap::ValidatorOperationCap"]); } export async function newUnverifiedValidatorOperationCapAndTransfer( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.newUnverifiedValidatorOperationCapAndTransfer(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [_0x2.object$.ID] >(simulateRes, ["0x2::object::ID"]); } export async function unverifiedOperationCapAddress( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.unverifiedOperationCapAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["Address"], ); } export async function verifiedOperationCapAddress( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.verifiedOperationCapAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["Address"], ); } } } export class validator_set extends SuiBaseProcessor { constructor(options: SuiBindOptions) { super("validator_set", options); } static DEFAULT_OPTIONS: SuiBindOptions = { address: "0x3", network: SuiNetwork.MAIN_NET, }; static bind(options: Partial = {}): validator_set { return new validator_set({ ...validator_set.DEFAULT_OPTIONS, ...options }); } onEventValidatorEpochInfoEvent( func: ( event: validator_set.ValidatorEpochInfoEventInstance, ctx: SuiContext, ) => void, handlerOptions?: HandlerOptions< MoveFetchConfig, validator_set.ValidatorEpochInfoEventInstance >, eventFilter?: Omit, ): validator_set { this.onMoveEvent( func, { ...(eventFilter ?? {}), type: "validator_set::ValidatorEpochInfoEvent", }, handlerOptions, ); return this; } onEventValidatorEpochInfoEventV2( func: ( event: validator_set.ValidatorEpochInfoEventV2Instance, ctx: SuiContext, ) => void, handlerOptions?: HandlerOptions< MoveFetchConfig, validator_set.ValidatorEpochInfoEventV2Instance >, eventFilter?: Omit, ): validator_set { this.onMoveEvent( func, { ...(eventFilter ?? {}), type: "validator_set::ValidatorEpochInfoEventV2", }, handlerOptions, ); return this; } onEventValidatorJoinEvent( func: ( event: validator_set.ValidatorJoinEventInstance, ctx: SuiContext, ) => void, handlerOptions?: HandlerOptions< MoveFetchConfig, validator_set.ValidatorJoinEventInstance >, eventFilter?: Omit, ): validator_set { this.onMoveEvent( func, { ...(eventFilter ?? {}), type: "validator_set::ValidatorJoinEvent" }, handlerOptions, ); return this; } onEventValidatorLeaveEvent( func: ( event: validator_set.ValidatorLeaveEventInstance, ctx: SuiContext, ) => void, handlerOptions?: HandlerOptions< MoveFetchConfig, validator_set.ValidatorLeaveEventInstance >, eventFilter?: Omit, ): validator_set { this.onMoveEvent( func, { ...(eventFilter ?? {}), type: "validator_set::ValidatorLeaveEvent" }, handlerOptions, ); return this; } onEventVotingPowerAdmissionStartEpochKey( func: ( event: validator_set.VotingPowerAdmissionStartEpochKeyInstance, ctx: SuiContext, ) => void, handlerOptions?: HandlerOptions< MoveFetchConfig, validator_set.VotingPowerAdmissionStartEpochKeyInstance >, eventFilter?: Omit, ): validator_set { this.onMoveEvent( func, { ...(eventFilter ?? {}), type: "validator_set::VotingPowerAdmissionStartEpochKey", }, handlerOptions, ); return this; } } export namespace validator_set { export interface ValidatorEpochInfoEvent { epoch: bigint; validator_address: string; reference_gas_survey_quote: bigint; stake: bigint; commission_rate: bigint; pool_staking_reward: bigint; storage_fund_staking_reward: bigint; pool_token_exchange_rate: staking_pool.PoolTokenExchangeRate; tallying_rule_reporters: string[]; tallying_rule_global_score: bigint; } export namespace ValidatorEpochInfoEvent { export const TYPE_QNAME = "0x3::validator_set::ValidatorEpochInfoEvent"; const TYPE = new TypeDescriptor( ValidatorEpochInfoEvent.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export type ValidatorEpochInfoEventInstance = TypedEventInstance & { data_decoded: ValidatorEpochInfoEvent; type_arguments: []; }; export interface ValidatorEpochInfoEventV2 { epoch: bigint; validator_address: string; reference_gas_survey_quote: bigint; stake: bigint; voting_power: bigint; commission_rate: bigint; pool_staking_reward: bigint; storage_fund_staking_reward: bigint; pool_token_exchange_rate: staking_pool.PoolTokenExchangeRate; tallying_rule_reporters: string[]; tallying_rule_global_score: bigint; } export namespace ValidatorEpochInfoEventV2 { export const TYPE_QNAME = "0x3::validator_set::ValidatorEpochInfoEventV2"; const TYPE = new TypeDescriptor( ValidatorEpochInfoEventV2.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export type ValidatorEpochInfoEventV2Instance = TypedEventInstance & { data_decoded: ValidatorEpochInfoEventV2; type_arguments: []; }; export interface ValidatorJoinEvent { epoch: bigint; validator_address: string; staking_pool_id: _0x2.object$.ID; } export namespace ValidatorJoinEvent { export const TYPE_QNAME = "0x3::validator_set::ValidatorJoinEvent"; const TYPE = new TypeDescriptor( ValidatorJoinEvent.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export type ValidatorJoinEventInstance = TypedEventInstance & { data_decoded: ValidatorJoinEvent; type_arguments: []; }; export interface ValidatorLeaveEvent { epoch: bigint; validator_address: string; staking_pool_id: _0x2.object$.ID; is_voluntary: boolean; } export namespace ValidatorLeaveEvent { export const TYPE_QNAME = "0x3::validator_set::ValidatorLeaveEvent"; const TYPE = new TypeDescriptor( ValidatorLeaveEvent.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export type ValidatorLeaveEventInstance = TypedEventInstance & { data_decoded: ValidatorLeaveEvent; type_arguments: []; }; export interface ValidatorSet { total_stake: bigint; active_validators: validator.Validator[]; pending_active_validators: _0x2.table_vec.TableVec; pending_removals: bigint[]; staking_pool_mappings: _0x2.table.Table<_0x2.object$.ID, string>; inactive_validators: _0x2.table.Table< _0x2.object$.ID, validator_wrapper.ValidatorWrapper >; validator_candidates: _0x2.table.Table< string, validator_wrapper.ValidatorWrapper >; at_risk_validators: _0x2.vec_map.VecMap; extra_fields: _0x2.bag.Bag; } export namespace ValidatorSet { export const TYPE_QNAME = "0x3::validator_set::ValidatorSet"; const TYPE = new TypeDescriptor(ValidatorSet.TYPE_QNAME); export function type(): TypeDescriptor { return TYPE.apply(); } } export interface VotingPowerAdmissionStartEpochKey { dummy_field: boolean; } export namespace VotingPowerAdmissionStartEpochKey { export const TYPE_QNAME = "0x3::validator_set::VotingPowerAdmissionStartEpochKey"; const TYPE = new TypeDescriptor( VotingPowerAdmissionStartEpochKey.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export type VotingPowerAdmissionStartEpochKeyInstance = TypedEventInstance & { data_decoded: VotingPowerAdmissionStartEpochKey; type_arguments: []; }; export namespace builder { export function activeValidator( tx: Transaction, args: [string | TransactionObjectArgument, string | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureAddress(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::active_validator", arguments: _args, }); } export function activeValidatorAddresses( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::active_validator_addresses", arguments: _args, }); } export function activeValidatorMut( tx: Transaction, args: [string | TransactionObjectArgument, string | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureAddress(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::active_validator_mut", arguments: _args, }); } export function activeValidators( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::active_validators", arguments: _args, }); } export function advanceEpoch( tx: Transaction, args: [ string | TransactionObjectArgument, string | TransactionObjectArgument, string | TransactionObjectArgument, string | TransactionObjectArgument, bigint | TransactionArgument, bigint | TransactionArgument, ], ): TransactionArgument & [ TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, TransactionArgument, ] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrObject(args[1], tx)); _args.push(transactionArgumentOrObject(args[2], tx)); _args.push(transactionArgumentOrObject(args[3], tx)); _args.push(transactionArgumentOrPureU64(args[4], tx)); _args.push(transactionArgumentOrPureU64(args[5], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::advance_epoch", arguments: _args, }); } export function anyValidator( tx: Transaction, args: [string | TransactionObjectArgument, string | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureAddress(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::any_validator", arguments: _args, }); } export function anyValidatorMut( tx: Transaction, args: [string | TransactionObjectArgument, string | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureAddress(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::any_validator_mut", arguments: _args, }); } export function assertNoPendingOrActiveDuplicates( tx: Transaction, args: [ string | TransactionObjectArgument, string | TransactionObjectArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrObject(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::assert_no_pending_or_active_duplicates", arguments: _args, }); } export function calculateTotalStakes( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::calculate_total_stakes", arguments: _args, }); } export function candidateValidator( tx: Transaction, args: [string | TransactionObjectArgument, string | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureAddress(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::candidate_validator", arguments: _args, }); } export function candidateValidatorMut( tx: Transaction, args: [string | TransactionObjectArgument, string | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureAddress(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::candidate_validator_mut", arguments: _args, }); } export function convertToFungibleStakedSui( tx: Transaction, args: [ string | TransactionObjectArgument, staking_pool.StakedSui | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::convert_to_fungible_staked_sui", arguments: _args, }); } export function deriveReferenceGasPrice( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::derive_reference_gas_price", arguments: _args, }); } export function getActiveOrPendingOrCandidateValidatorRef( tx: Transaction, args: [ string | TransactionObjectArgument, string | TransactionArgument, number | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureAddress(args[1], tx)); _args.push(transactionArgumentOrPureU8(args[2], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::get_active_or_pending_or_candidate_validator_ref", arguments: _args, }); } export function getActiveValidatorRef( tx: Transaction, args: [string | TransactionObjectArgument, string | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureAddress(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::get_active_validator_ref", arguments: _args, }); } export function getPendingValidatorRef( tx: Transaction, args: [string | TransactionObjectArgument, string | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureAddress(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::get_pending_validator_ref", arguments: _args, }); } export function isActiveValidator( tx: Transaction, args: [string | TransactionObjectArgument, string | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureAddress(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::is_active_validator", arguments: _args, }); } export function isActiveValidatorBySuiAddress( tx: Transaction, args: [string | TransactionObjectArgument, string | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureAddress(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::is_active_validator_by_sui_address", arguments: _args, }); } export function isAtRiskValidator( tx: Transaction, args: [string | TransactionObjectArgument, string | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureAddress(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::is_at_risk_validator", arguments: _args, }); } export function isInactiveValidator( tx: Transaction, args: [ string | TransactionObjectArgument, _0x2.object$.ID | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::is_inactive_validator", arguments: _args, }); } export function isValidatorCandidate( tx: Transaction, args: [string | TransactionObjectArgument, string | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureAddress(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::is_validator_candidate", arguments: _args, }); } export function new$( tx: Transaction, args: [(string | TransactionObjectArgument)[] | TransactionArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrVec(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::new", arguments: _args, }); } export function nextEpochValidatorCount( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::next_epoch_validator_count", arguments: _args, }); } export function pendingValidator( tx: Transaction, args: [string | TransactionObjectArgument, string | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureAddress(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::pending_validator", arguments: _args, }); } export function pendingValidatorMut( tx: Transaction, args: [string | TransactionObjectArgument, string | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureAddress(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::pending_validator_mut", arguments: _args, }); } export function poolExchangeRates( tx: Transaction, args: [ string | TransactionObjectArgument, _0x2.object$.ID | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::pool_exchange_rates", arguments: _args, }); } export function redeemFungibleStakedSui( tx: Transaction, args: [ string | TransactionObjectArgument, staking_pool.FungibleStakedSui | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::redeem_fungible_staked_sui", arguments: _args, }); } export function requestAddStake( tx: Transaction, args: [ string | TransactionObjectArgument, string | TransactionArgument, _0x2.balance.Balance<_0x2.sui.SUI> | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureAddress(args[1], tx)); _args.push(transactionArgumentOrPure(args[2], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::request_add_stake", arguments: _args, }); } export function requestAddValidator( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::request_add_validator", arguments: _args, }); } export function requestAddValidatorCandidate( tx: Transaction, args: [ string | TransactionObjectArgument, validator.Validator | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::request_add_validator_candidate", arguments: _args, }); } export function requestRemoveValidator( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::request_remove_validator", arguments: _args, }); } export function requestRemoveValidatorCandidate( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::request_remove_validator_candidate", arguments: _args, }); } export function requestWithdrawStake( tx: Transaction, args: [ string | TransactionObjectArgument, staking_pool.StakedSui | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::request_withdraw_stake", arguments: _args, }); } export function stakingPoolMappings( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::staking_pool_mappings", arguments: _args, }); } export function sumVotingPowerByAddresses( tx: Transaction, args: [ string | TransactionObjectArgument, string | TransactionObjectArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrObject(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::sum_voting_power_by_addresses", arguments: _args, }); } export function totalStake( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::total_stake", arguments: _args, }); } export function validatorAddressByPoolId( tx: Transaction, args: [ string | TransactionObjectArgument, string | TransactionObjectArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrObject(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::validator_address_by_pool_id", arguments: _args, }); } export function validatorByPoolId( tx: Transaction, args: [ string | TransactionObjectArgument, _0x2.object$.ID | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPure(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::validator_by_pool_id", arguments: _args, }); } export function validatorStakeAmount( tx: Transaction, args: [string | TransactionObjectArgument, string | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureAddress(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::validator_stake_amount", arguments: _args, }); } export function validatorStakingPoolId( tx: Transaction, args: [string | TransactionObjectArgument, string | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureAddress(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::validator_staking_pool_id", arguments: _args, }); } export function validatorTotalStakeAmount( tx: Transaction, args: [string | TransactionObjectArgument, string | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureAddress(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::validator_total_stake_amount", arguments: _args, }); } export function validatorVotingPower( tx: Transaction, args: [string | TransactionObjectArgument, string | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureAddress(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::validator_voting_power", arguments: _args, }); } export function verifyCap( tx: Transaction, args: [ string | TransactionObjectArgument, string | TransactionObjectArgument, number | TransactionArgument, ], ): TransactionArgument & [TransactionArgument, TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrObject(args[1], tx)); _args.push(transactionArgumentOrPureU8(args[2], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_set::verify_cap", arguments: _args, }); } } export namespace view { export async function activeValidator( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.activeValidator(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x3::validator::Validator"], ); } export async function activeValidatorAddresses( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.activeValidatorAddresses(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string[]]>( simulateRes, ["Vector
"], ); } export async function activeValidatorMut( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.activeValidatorMut(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x3::validator::Validator"], ); } export async function activeValidators( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.activeValidators(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["Vector<0x3::validator::Validator>"], ); } export async function advanceEpoch( client: SuiGrpcClient, args: [string, string, string, string, bigint, bigint], ): Promise> { const tx = new Transaction(); builder.advanceEpoch(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function anyValidator( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.anyValidator(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x3::validator::Validator"], ); } export async function anyValidatorMut( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.anyValidatorMut(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x3::validator::Validator"], ); } export async function assertNoPendingOrActiveDuplicates( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.assertNoPendingOrActiveDuplicates(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function calculateTotalStakes( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.calculateTotalStakes(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function candidateValidator( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.candidateValidator(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x3::validator::Validator"], ); } export async function candidateValidatorMut( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.candidateValidatorMut(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x3::validator::Validator"], ); } export async function convertToFungibleStakedSui( client: SuiGrpcClient, args: [string, staking_pool.StakedSui], ): Promise> { const tx = new Transaction(); builder.convertToFungibleStakedSui(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [staking_pool.FungibleStakedSui] >(simulateRes, ["0x3::staking_pool::FungibleStakedSui"]); } export async function deriveReferenceGasPrice( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.deriveReferenceGasPrice(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function getActiveOrPendingOrCandidateValidatorRef( client: SuiGrpcClient, args: [string, string, number], ): Promise> { const tx = new Transaction(); builder.getActiveOrPendingOrCandidateValidatorRef(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x3::validator::Validator"], ); } export async function getActiveValidatorRef( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.getActiveValidatorRef(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x3::validator::Validator"], ); } export async function getPendingValidatorRef( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.getPendingValidatorRef(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x3::validator::Validator"], ); } export async function isActiveValidator( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.isActiveValidator(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[boolean]>( simulateRes, ["Bool"], ); } export async function isActiveValidatorBySuiAddress( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.isActiveValidatorBySuiAddress(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[boolean]>( simulateRes, ["Bool"], ); } export async function isAtRiskValidator( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.isAtRiskValidator(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[boolean]>( simulateRes, ["Bool"], ); } export async function isInactiveValidator( client: SuiGrpcClient, args: [string, _0x2.object$.ID], ): Promise> { const tx = new Transaction(); builder.isInactiveValidator(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[boolean]>( simulateRes, ["Bool"], ); } export async function isValidatorCandidate( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.isValidatorCandidate(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[boolean]>( simulateRes, ["Bool"], ); } export async function new$( client: SuiGrpcClient, args: [string[]], ): Promise> { const tx = new Transaction(); builder.new$(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [validator_set.ValidatorSet] >(simulateRes, ["0x3::validator_set::ValidatorSet"]); } export async function nextEpochValidatorCount( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.nextEpochValidatorCount(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function pendingValidator( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.pendingValidator(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x3::validator::Validator"], ); } export async function pendingValidatorMut( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.pendingValidatorMut(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x3::validator::Validator"], ); } export async function poolExchangeRates( client: SuiGrpcClient, args: [string, _0x2.object$.ID], ): Promise> { const tx = new Transaction(); builder.poolExchangeRates(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x2::table::Table"], ); } export async function redeemFungibleStakedSui( client: SuiGrpcClient, args: [string, staking_pool.FungibleStakedSui], ): Promise]>> { const tx = new Transaction(); builder.redeemFungibleStakedSui(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [_0x2.balance.Balance<_0x2.sui.SUI>] >(simulateRes, ["0x2::balance::Balance<0x2::sui::SUI>"]); } export async function requestAddStake( client: SuiGrpcClient, args: [string, string, _0x2.balance.Balance<_0x2.sui.SUI>], ): Promise> { const tx = new Transaction(); builder.requestAddStake(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [staking_pool.StakedSui] >(simulateRes, ["0x3::staking_pool::StakedSui"]); } export async function requestAddValidator( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.requestAddValidator(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function requestAddValidatorCandidate( client: SuiGrpcClient, args: [string, validator.Validator], ): Promise> { const tx = new Transaction(); builder.requestAddValidatorCandidate(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function requestRemoveValidator( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.requestRemoveValidator(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function requestRemoveValidatorCandidate( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.requestRemoveValidatorCandidate(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function requestWithdrawStake( client: SuiGrpcClient, args: [string, staking_pool.StakedSui], ): Promise]>> { const tx = new Transaction(); builder.requestWithdrawStake(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [_0x2.balance.Balance<_0x2.sui.SUI>] >(simulateRes, ["0x2::balance::Balance<0x2::sui::SUI>"]); } export async function stakingPoolMappings( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.stakingPoolMappings(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x2::table::Table<0x2::object::ID, Address>"], ); } export async function sumVotingPowerByAddresses( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.sumVotingPowerByAddresses(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function totalStake( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.totalStake(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function validatorAddressByPoolId( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.validatorAddressByPoolId(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["Address"], ); } export async function validatorByPoolId( client: SuiGrpcClient, args: [string, _0x2.object$.ID], ): Promise> { const tx = new Transaction(); builder.validatorByPoolId(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x3::validator::Validator"], ); } export async function validatorStakeAmount( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.validatorStakeAmount(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function validatorStakingPoolId( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.validatorStakingPoolId(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [_0x2.object$.ID] >(simulateRes, ["0x2::object::ID"]); } export async function validatorTotalStakeAmount( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.validatorTotalStakeAmount(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function validatorVotingPower( client: SuiGrpcClient, args: [string, string], ): Promise> { const tx = new Transaction(); builder.validatorVotingPower(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function verifyCap( client: SuiGrpcClient, args: [string, string, number], ): Promise> { const tx = new Transaction(); builder.verifyCap(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [validator_cap.ValidatorOperationCap] >(simulateRes, ["0x3::validator_cap::ValidatorOperationCap"]); } } } export namespace validator_wrapper { export interface ValidatorWrapper { inner: _0x2.versioned.Versioned; } export namespace ValidatorWrapper { export const TYPE_QNAME = "0x3::validator_wrapper::ValidatorWrapper"; const TYPE = new TypeDescriptor( ValidatorWrapper.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export namespace builder { export function createV1( tx: Transaction, args: [validator.Validator | TransactionArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrPure(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_wrapper::create_v1", arguments: _args, }); } export function destroy( tx: Transaction, args: [validator_wrapper.ValidatorWrapper | TransactionArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrPure(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_wrapper::destroy", arguments: _args, }); } export function loadValidatorMaybeUpgrade( tx: Transaction, args: [string | TransactionObjectArgument], ): TransactionArgument & [TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::validator_wrapper::load_validator_maybe_upgrade", arguments: _args, }); } } export namespace view { export async function createV1( client: SuiGrpcClient, args: [validator.Validator], ): Promise> { const tx = new Transaction(); builder.createV1(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [validator_wrapper.ValidatorWrapper] >(simulateRes, ["0x3::validator_wrapper::ValidatorWrapper"]); } export async function destroy( client: SuiGrpcClient, args: [validator_wrapper.ValidatorWrapper], ): Promise> { const tx = new Transaction(); builder.destroy(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult< [validator.Validator] >(simulateRes, ["0x3::validator::Validator"]); } export async function loadValidatorMaybeUpgrade( client: SuiGrpcClient, args: [string], ): Promise> { const tx = new Transaction(); builder.loadValidatorMaybeUpgrade(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[string]>( simulateRes, ["0x3::validator::Validator"], ); } } } export namespace voting_power { export interface VotingPowerInfo { validator_index: bigint; voting_power: bigint; } export namespace VotingPowerInfo { export const TYPE_QNAME = "0x3::voting_power::VotingPowerInfo"; const TYPE = new TypeDescriptor( VotingPowerInfo.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export interface VotingPowerInfoV2 { validator_index: bigint; voting_power: bigint; stake: bigint; } export namespace VotingPowerInfoV2 { export const TYPE_QNAME = "0x3::voting_power::VotingPowerInfoV2"; const TYPE = new TypeDescriptor( VotingPowerInfoV2.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export namespace builder { export function deriveRawVotingPower( tx: Transaction, args: [bigint | TransactionArgument, bigint | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrPureU64(args[0], tx)); _args.push(transactionArgumentOrPureU64(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::voting_power::derive_raw_voting_power", arguments: _args, }); } export function quorumThreshold( tx: Transaction, args: [], ): TransactionArgument & [] { const _args: any[] = []; // @ts-ignore return tx.moveCall({ target: "0x3::voting_power::quorum_threshold", arguments: _args, }); } export function setVotingPower( tx: Transaction, args: [string | TransactionObjectArgument, bigint | TransactionArgument], ): TransactionArgument & [TransactionArgument, TransactionArgument] { const _args: any[] = []; _args.push(transactionArgumentOrObject(args[0], tx)); _args.push(transactionArgumentOrPureU64(args[1], tx)); // @ts-ignore return tx.moveCall({ target: "0x3::voting_power::set_voting_power", arguments: _args, }); } export function totalVotingPower( tx: Transaction, args: [], ): TransactionArgument & [] { const _args: any[] = []; // @ts-ignore return tx.moveCall({ target: "0x3::voting_power::total_voting_power", arguments: _args, }); } } export namespace view { export async function deriveRawVotingPower( client: SuiGrpcClient, args: [bigint, bigint], ): Promise> { const tx = new Transaction(); builder.deriveRawVotingPower(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function quorumThreshold( client: SuiGrpcClient, args: [], ): Promise> { const tx = new Transaction(); builder.quorumThreshold(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } export async function setVotingPower( client: SuiGrpcClient, args: [string, bigint], ): Promise> { const tx = new Transaction(); builder.setVotingPower(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[]>( simulateRes, [], ); } export async function totalVotingPower( client: SuiGrpcClient, args: [], ): Promise> { const tx = new Transaction(); builder.totalVotingPower(tx, args); // checksEnabled: false matches the old devInspectTransactionBlock // semantics — allow simulating view calls without validating object // ownership or signer, which view callers obviously can't satisfy. const simulateRes = await client.simulateTransaction({ transaction: tx, sender: ZERO_ADDRESS, include: { commandResults: true }, checksEnabled: false, } as any); return (await getMoveCoder(client)).decodeSimulateResult<[bigint]>( simulateRes, ["U64"], ); } } } const MODULES = JSON.parse( '[{"address":"0x3","module":{"datatypes":[{"abilities":[1,2],"typeParameters":[],"fields":[{"name":"protocol_version","position":0,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"chain_start_timestamp_ms","position":1,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"epoch_duration_ms","position":2,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"stake_subsidy_start_epoch","position":3,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"stake_subsidy_initial_distribution_amount","position":4,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"stake_subsidy_period_length","position":5,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"stake_subsidy_decrease_rate","position":6,"type":{"typeParameterInstantiation":[],"type":4}},{"name":"max_validator_count","position":7,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"min_validator_joining_stake","position":8,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"validator_low_stake_threshold","position":9,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"validator_very_low_stake_threshold","position":10,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"validator_low_stake_grace_period","position":11,"type":{"typeParameterInstantiation":[],"type":6}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::genesis::GenesisChainParameters","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"genesis","name":"GenesisChainParameters","kind":1},{"abilities":[1,2],"typeParameters":[],"fields":[{"name":"name","position":0,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"name":"description","position":1,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"name":"image_url","position":2,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"name":"project_url","position":3,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"name":"sui_address","position":4,"type":{"typeParameterInstantiation":[],"type":1}},{"name":"gas_price","position":5,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"commission_rate","position":6,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"protocol_public_key","position":7,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"name":"proof_of_possession","position":8,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"name":"network_public_key","position":9,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"name":"worker_public_key","position":10,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"name":"network_address","position":11,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"name":"p2p_address","position":12,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"name":"primary_address","position":13,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"name":"worker_address","position":14,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::genesis::GenesisValidatorMetadata","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"genesis","name":"GenesisValidatorMetadata","kind":1},{"abilities":[],"typeParameters":[],"fields":[{"name":"recipient_address","position":0,"type":{"typeParameterInstantiation":[],"type":1}},{"name":"amount_mist","position":1,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"staked_with_validator","position":2,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::option::Option"}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::genesis::TokenAllocation","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"genesis","name":"TokenAllocation","kind":1},{"abilities":[],"typeParameters":[],"fields":[{"name":"stake_subsidy_fund_mist","position":0,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"allocations","position":1,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::genesis::TokenAllocation"}],"type":9}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::genesis::TokenDistributionSchedule","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"genesis","name":"TokenDistributionSchedule","kind":1}],"functions":[{"typeParameters":[],"parameters":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::genesis::TokenAllocation"}],"type":9}},{"reference":2,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}],"type":9}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"allocate_tokens","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::UID"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::genesis::GenesisChainParameters"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::genesis::GenesisValidatorMetadata"}],"type":9}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::genesis::TokenDistributionSchedule"}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"create","visibility":1,"isEntry":false}],"name":"genesis"}},{"address":"0x3","module":{"datatypes":[{"abilities":[3],"typeParameters":[],"fields":[{"name":"balance","position":0,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"name":"distribution_counter","position":1,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"current_distribution_amount","position":2,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"stake_subsidy_period_length","position":3,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"stake_subsidy_decrease_rate","position":4,"type":{"typeParameterInstantiation":[],"type":4}},{"name":"extra_fields","position":5,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::bag::Bag"}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::stake_subsidy::StakeSubsidy","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"stake_subsidy","name":"StakeSubsidy","kind":1}],"functions":[{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::stake_subsidy::StakeSubsidy"}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}}],"name":"advance_epoch","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":4}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::stake_subsidy::StakeSubsidy"}}],"name":"create","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::stake_subsidy::StakeSubsidy"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"current_epoch_subsidy_amount","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::stake_subsidy::StakeSubsidy"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"get_distribution_counter","visibility":3,"isEntry":false}],"name":"stake_subsidy"}},{"address":"0x3","module":{"datatypes":[{"abilities":[3,4],"typeParameters":[],"fields":[{"name":"id","position":0,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::UID"}},{"name":"pool_id","position":1,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"}},{"name":"value","position":2,"type":{"typeParameterInstantiation":[],"type":6}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::FungibleStakedSui","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"staking_pool","name":"FungibleStakedSui","kind":1},{"abilities":[3,4],"typeParameters":[],"fields":[{"name":"id","position":0,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::UID"}},{"name":"total_supply","position":1,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"principal","position":2,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::FungibleStakedSuiData","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"staking_pool","name":"FungibleStakedSuiData","kind":1},{"abilities":[1,2,3],"typeParameters":[],"fields":[{"name":"dummy_field","position":0,"type":{"typeParameterInstantiation":[],"type":2}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::FungibleStakedSuiDataKey","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"staking_pool","name":"FungibleStakedSuiDataKey","kind":1},{"abilities":[1,2,3],"typeParameters":[],"fields":[{"name":"sui_amount","position":0,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"pool_token_amount","position":1,"type":{"typeParameterInstantiation":[],"type":6}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::PoolTokenExchangeRate","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"staking_pool","name":"PoolTokenExchangeRate","kind":1},{"abilities":[3,4],"typeParameters":[],"fields":[{"name":"id","position":0,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::UID"}},{"name":"pool_id","position":1,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"}},{"name":"stake_activation_epoch","position":2,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"principal","position":3,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"staking_pool","name":"StakedSui","kind":1},{"abilities":[3,4],"typeParameters":[],"fields":[{"name":"id","position":0,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::UID"}},{"name":"activation_epoch","position":1,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::option::Option"}},{"name":"deactivation_epoch","position":2,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::option::Option"}},{"name":"sui_balance","position":3,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"rewards_pool","position":4,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"name":"pool_token_balance","position":5,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"exchange_rates","position":6,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6},{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::PoolTokenExchangeRate"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::table::Table"}},{"name":"pending_stake","position":7,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"pending_total_sui_withdraw","position":8,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"pending_pool_token_withdraw","position":9,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"extra_fields","position":10,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::bag::Bag"}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"staking_pool","name":"StakingPool","kind":1},{"abilities":[1,2,3],"typeParameters":[],"fields":[{"name":"dummy_field","position":0,"type":{"typeParameterInstantiation":[],"type":2}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::UnderflowSuiBalance","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"staking_pool","name":"UnderflowSuiBalance","kind":1}],"functions":[{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool"}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[],"name":"activate_staking_pool","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool"}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::option::Option"}}],"name":"activation_epoch","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::PoolTokenExchangeRate"}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"calculate_fungible_staked_sui_withdraw_amount","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"calculate_rewards","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool"}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[],"name":"check_balance_invariants","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::FungibleStakedSui"}}],"name":"convert_to_fungible_staked_sui","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool"}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[],"name":"deactivate_staking_pool","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}}],"returns":[],"name":"deposit_rewards","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6},{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::PoolTokenExchangeRate"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::table::Table"}}],"name":"exchange_rates","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::FungibleStakedSui"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"}}],"name":"fungible_staked_sui_pool_id","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::FungibleStakedSui"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"fungible_staked_sui_value","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::PoolTokenExchangeRate"}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"get_sui_amount","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::PoolTokenExchangeRate"}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"get_token_amount","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::PoolTokenExchangeRate"}}],"name":"initial_exchange_rate","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":2}}],"name":"is_equal_staking_metadata","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":2}}],"name":"is_inactive","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":2}}],"name":"is_preactive","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool"}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":2}}],"name":"is_preactive_at_epoch","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::FungibleStakedSui"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::FungibleStakedSui"}}],"returns":[],"name":"join_fungible_staked_sui","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}}],"returns":[],"name":"join_staked_sui","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool"}}],"name":"new","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"pending_stake_amount","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"pending_stake_withdraw_amount","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"}}],"name":"pool_id","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::PoolTokenExchangeRate"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"pool_token_amount","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool"}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::PoolTokenExchangeRate"}}],"name":"pool_token_exchange_rate_at_epoch","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool"}}],"returns":[],"name":"process_pending_stake","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool"}}],"returns":[],"name":"process_pending_stake_withdraw","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"process_pending_stakes_and_withdraws","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::FungibleStakedSui"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}}],"name":"redeem_fungible_staked_sui","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"body":{"typeParameterInstantiation":[],"type":6}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}}],"name":"request_add_stake","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}}],"name":"request_withdraw_stake","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}},{"body":{"typeParameterInstantiation":[],"type":6}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}}],"name":"split","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::FungibleStakedSui"}},{"body":{"typeParameterInstantiation":[],"type":6}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::FungibleStakedSui"}}],"name":"split_fungible_staked_sui","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}},{"body":{"typeParameterInstantiation":[],"type":6}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"split_staked_sui","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"stake_activation_epoch","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"staked_sui_amount","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::PoolTokenExchangeRate"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"sui_amount","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"sui_balance","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}}],"name":"unwrap_staked_sui","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}}],"name":"withdraw_from_principal","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool"}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}}],"name":"withdraw_rewards","visibility":1,"isEntry":false}],"name":"staking_pool"}},{"address":"0x3","module":{"datatypes":[{"abilities":[3],"typeParameters":[],"fields":[{"name":"total_object_storage_rebates","position":0,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"name":"non_refundable_balance","position":1,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::storage_fund::StorageFund","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"storage_fund","name":"StorageFund","kind":1}],"functions":[{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::storage_fund::StorageFund"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}}],"name":"advance_epoch","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::storage_fund::StorageFund"}}],"name":"new","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::storage_fund::StorageFund"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"total_balance","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::storage_fund::StorageFund"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"total_object_storage_rebates","visibility":2,"isEntry":false}],"name":"storage_fund"}},{"address":"0x3","module":{"datatypes":[{"abilities":[1,2,3],"typeParameters":[],"fields":[{"name":"dummy_field","position":0,"type":{"typeParameterInstantiation":[],"type":2}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::AccumulatorStorageCostKey","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"sui_system","name":"AccumulatorStorageCostKey","kind":1},{"abilities":[4],"typeParameters":[],"fields":[{"name":"id","position":0,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::UID"}},{"name":"version","position":1,"type":{"typeParameterInstantiation":[],"type":6}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"sui_system","name":"SuiSystemState","kind":1}],"functions":[{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1}],"type":9}}],"name":"active_validator_addresses","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1}],"type":9}}],"name":"active_validator_addresses_ref","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"active_validator_stake_amount","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1},{"typeParameterInstantiation":[],"type":6}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_map::VecMap"}}],"name":"active_validator_voting_powers","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}}],"name":"advance_epoch","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"calculate_rewards","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::FungibleStakedSui"}}],"name":"convert_to_fungible_staked_sui","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::UID"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SystemParameters"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::stake_subsidy::StakeSubsidy"}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"create","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"get_accumulator_storage_fund_amount","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}}],"returns":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}}],"name":"load_inner_maybe_upgrade","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}}],"name":"load_system_state","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}}],"returns":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}}],"name":"load_system_state_mut","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}}],"name":"load_system_state_ref","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6},{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::PoolTokenExchangeRate"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::table::Table"}}],"name":"pool_exchange_rates","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::FungibleStakedSui"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}}],"name":"redeem_fungible_staked_sui","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_cap::UnverifiedValidatorOperationCap"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[],"name":"report_validator","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::coin::Coin"}},{"body":{"typeParameterInstantiation":[],"type":1}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"request_add_stake","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::coin::Coin"}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::option::Option"}},{"body":{"typeParameterInstantiation":[],"type":1}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"request_add_stake_mul_coin","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::coin::Coin"}},{"body":{"typeParameterInstantiation":[],"type":1}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}}],"name":"request_add_stake_non_entry","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"request_add_validator","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"request_add_validator_candidate","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"request_remove_validator","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"request_remove_validator_candidate","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[],"type":6}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"request_set_commission_rate","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_cap::UnverifiedValidatorOperationCap"}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[],"name":"request_set_gas_price","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"request_withdraw_stake","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}}],"name":"request_withdraw_stake_non_entry","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"rotate_operation_cap","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[],"type":6}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"set_candidate_validator_commission_rate","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_cap::UnverifiedValidatorOperationCap"}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[],"name":"set_candidate_validator_gas_price","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}}],"returns":[],"name":"store_execution_time_estimates","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}],"type":9}}],"returns":[],"name":"store_execution_time_estimates_v2","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_cap::UnverifiedValidatorOperationCap"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[],"name":"undo_report_validator","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_candidate_validator_network_address","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_candidate_validator_network_pubkey","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_candidate_validator_p2p_address","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_candidate_validator_primary_address","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_candidate_validator_protocol_pubkey","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_candidate_validator_worker_address","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_candidate_validator_worker_pubkey","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_validator_description","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_validator_image_url","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_validator_name","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_validator_next_epoch_network_address","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_validator_next_epoch_network_pubkey","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_validator_next_epoch_p2p_address","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_validator_next_epoch_primary_address","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_validator_next_epoch_protocol_pubkey","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_validator_next_epoch_worker_address","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_validator_next_epoch_worker_pubkey","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_validator_project_url","visibility":2,"isEntry":true},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":1}}],"name":"validator_address_by_pool_id","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1},{"typeParameterInstantiation":[],"type":6}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_map::VecMap"}}],"name":"validator_voting_powers","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system::SuiSystemState"}},{"body":{"typeParameterInstantiation":[],"type":6}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"write_accumulator_storage_cost","visibility":1,"isEntry":false}],"name":"sui_system"}},{"address":"0x3","module":{"datatypes":[{"abilities":[1,2,3],"typeParameters":[],"fields":[{"name":"chunk_index","position":0,"type":{"typeParameterInstantiation":[],"type":6}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::ExecutionTimeObservationChunkKey","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"sui_system_state_inner","name":"ExecutionTimeObservationChunkKey","kind":1},{"abilities":[3],"typeParameters":[],"fields":[{"name":"epoch","position":0,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"protocol_version","position":1,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"system_state_version","position":2,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"validators","position":3,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"name":"storage_fund","position":4,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::storage_fund::StorageFund"}},{"name":"parameters","position":5,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SystemParameters"}},{"name":"reference_gas_price","position":6,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"validator_report_records","position":7,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1},{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_set::VecSet"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_map::VecMap"}},{"name":"stake_subsidy","position":8,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::stake_subsidy::StakeSubsidy"}},{"name":"safe_mode","position":9,"type":{"typeParameterInstantiation":[],"type":2}},{"name":"safe_mode_storage_rewards","position":10,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"name":"safe_mode_computation_rewards","position":11,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"name":"safe_mode_storage_rebates","position":12,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"safe_mode_non_refundable_storage_fee","position":13,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"epoch_start_timestamp_ms","position":14,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"extra_fields","position":15,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::bag::Bag"}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInner","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"sui_system_state_inner","name":"SuiSystemStateInner","kind":1},{"abilities":[3],"typeParameters":[],"fields":[{"name":"epoch","position":0,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"protocol_version","position":1,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"system_state_version","position":2,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"validators","position":3,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"name":"storage_fund","position":4,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::storage_fund::StorageFund"}},{"name":"parameters","position":5,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SystemParametersV2"}},{"name":"reference_gas_price","position":6,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"validator_report_records","position":7,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1},{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_set::VecSet"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_map::VecMap"}},{"name":"stake_subsidy","position":8,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::stake_subsidy::StakeSubsidy"}},{"name":"safe_mode","position":9,"type":{"typeParameterInstantiation":[],"type":2}},{"name":"safe_mode_storage_rewards","position":10,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"name":"safe_mode_computation_rewards","position":11,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"name":"safe_mode_storage_rebates","position":12,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"safe_mode_non_refundable_storage_fee","position":13,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"epoch_start_timestamp_ms","position":14,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"extra_fields","position":15,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::bag::Bag"}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"sui_system_state_inner","name":"SuiSystemStateInnerV2","kind":1},{"abilities":[1,2],"typeParameters":[],"fields":[{"name":"epoch","position":0,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"protocol_version","position":1,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"reference_gas_price","position":2,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"total_stake","position":3,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"storage_fund_reinvestment","position":4,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"storage_charge","position":5,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"storage_rebate","position":6,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"storage_fund_balance","position":7,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"stake_subsidy_amount","position":8,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"total_gas_fees","position":9,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"total_stake_rewards_distributed","position":10,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"leftover_storage_fund_inflow","position":11,"type":{"typeParameterInstantiation":[],"type":6}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SystemEpochInfoEvent","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"sui_system_state_inner","name":"SystemEpochInfoEvent","kind":1},{"abilities":[3],"typeParameters":[],"fields":[{"name":"epoch_duration_ms","position":0,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"stake_subsidy_start_epoch","position":1,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"max_validator_count","position":2,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"min_validator_joining_stake","position":3,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"validator_low_stake_threshold","position":4,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"validator_very_low_stake_threshold","position":5,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"validator_low_stake_grace_period","position":6,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"extra_fields","position":7,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::bag::Bag"}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SystemParameters","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"sui_system_state_inner","name":"SystemParameters","kind":1},{"abilities":[3],"typeParameters":[],"fields":[{"name":"epoch_duration_ms","position":0,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"stake_subsidy_start_epoch","position":1,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"min_validator_count","position":2,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"max_validator_count","position":3,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"min_validator_joining_stake","position":4,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"validator_low_stake_threshold","position":5,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"validator_very_low_stake_threshold","position":6,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"validator_low_stake_grace_period","position":7,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"extra_fields","position":8,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::bag::Bag"}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SystemParametersV2","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"sui_system_state_inner","name":"SystemParametersV2","kind":1}],"functions":[{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1}],"type":9}}],"name":"active_validator_addresses","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1},{"typeParameterInstantiation":[],"type":6}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_map::VecMap"}}],"name":"active_validator_voting_powers","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}}],"name":"advance_epoch","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::FungibleStakedSui"}}],"name":"convert_to_fungible_staked_sui","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SystemParameters"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::stake_subsidy::StakeSubsidy"}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInner"}}],"name":"create","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SystemParameters"}}],"name":"create_system_parameters","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"epoch","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"epoch_start_timestamp_ms","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::bag::Bag"}}],"name":"extra_fields","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}}],"returns":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::bag::Bag"}}],"name":"extra_fields_mut","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::coin::Coin"}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::option::Option"}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}}],"name":"extract_coin_balance","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"genesis_system_state_version","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_set::VecSet"}}],"name":"get_reporters_of","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"get_storage_fund_object_rebates","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"get_storage_fund_total_balance","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6},{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::PoolTokenExchangeRate"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::table::Table"}}],"name":"pool_exchange_rates","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"protocol_version","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::FungibleStakedSui"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}}],"name":"redeem_fungible_staked_sui","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_cap::UnverifiedValidatorOperationCap"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[],"name":"report_validator","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_cap::ValidatorOperationCap"}},{"body":{"typeParameterInstantiation":[],"type":1}},{"reference":2,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1},{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_set::VecSet"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_map::VecMap"}}],"returns":[],"name":"report_validator_impl","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::coin::Coin"}},{"body":{"typeParameterInstantiation":[],"type":1}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}}],"name":"request_add_stake","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::coin::Coin"}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::option::Option"}},{"body":{"typeParameterInstantiation":[],"type":1}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}}],"name":"request_add_stake_mul_coin","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"request_add_validator","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"request_add_validator_candidate","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"request_remove_validator","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"request_remove_validator_candidate","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[],"type":6}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"request_set_commission_rate","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_cap::UnverifiedValidatorOperationCap"}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[],"name":"request_set_gas_price","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}}],"name":"request_withdraw_stake","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"rotate_operation_cap","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[],"type":6}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"set_candidate_validator_commission_rate","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_cap::UnverifiedValidatorOperationCap"}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[],"name":"set_candidate_validator_gas_price","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}}],"returns":[],"name":"store_execution_time_estimates","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}],"type":9}}],"returns":[],"name":"store_execution_time_estimates_v2","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"system_state_version","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_cap::UnverifiedValidatorOperationCap"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[],"name":"undo_report_validator","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_cap::ValidatorOperationCap"}},{"body":{"typeParameterInstantiation":[],"type":1}},{"reference":2,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1},{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_set::VecSet"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_map::VecMap"}}],"returns":[],"name":"undo_report_validator_impl","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_candidate_validator_network_address","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_candidate_validator_network_pubkey","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_candidate_validator_p2p_address","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_candidate_validator_primary_address","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_candidate_validator_protocol_pubkey","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_candidate_validator_worker_address","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_candidate_validator_worker_pubkey","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_validator_description","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_validator_image_url","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_validator_name","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_validator_next_epoch_network_address","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_validator_next_epoch_network_pubkey","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_validator_next_epoch_p2p_address","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_validator_next_epoch_primary_address","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_validator_next_epoch_protocol_pubkey","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_validator_next_epoch_worker_address","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_validator_next_epoch_worker_pubkey","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"update_validator_project_url","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInner"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}}],"name":"v1_to_v2","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":1}}],"name":"validator_address_by_pool_id","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"validator_stake_amount","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"}}],"name":"validator_staking_pool_id","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"},{"typeParameterInstantiation":[],"type":1}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::table::Table"}}],"name":"validator_staking_pool_mappings","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}}],"name":"validators","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::sui_system_state_inner::SuiSystemStateInnerV2"}}],"returns":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}}],"name":"validators_mut","visibility":3,"isEntry":false}],"name":"sui_system_state_inner"}},{"address":"0x3","module":{"datatypes":[{"abilities":[1,2],"typeParameters":[],"fields":[{"name":"pool_id","position":0,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"}},{"name":"stake_activation_epoch","position":1,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"staked_sui_principal_amount","position":2,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"fungible_staked_sui_amount","position":3,"type":{"typeParameterInstantiation":[],"type":6}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::ConvertingToFungibleStakedSuiEvent","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"validator","name":"ConvertingToFungibleStakedSuiEvent","kind":1},{"abilities":[1,2],"typeParameters":[],"fields":[{"name":"pool_id","position":0,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"}},{"name":"fungible_staked_sui_amount","position":1,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"sui_amount","position":2,"type":{"typeParameterInstantiation":[],"type":6}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::RedeemingFungibleStakedSuiEvent","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"validator","name":"RedeemingFungibleStakedSuiEvent","kind":1},{"abilities":[1,2],"typeParameters":[],"fields":[{"name":"pool_id","position":0,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"}},{"name":"validator_address","position":1,"type":{"typeParameterInstantiation":[],"type":1}},{"name":"staker_address","position":2,"type":{"typeParameterInstantiation":[],"type":1}},{"name":"epoch","position":3,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"amount","position":4,"type":{"typeParameterInstantiation":[],"type":6}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::StakingRequestEvent","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"validator","name":"StakingRequestEvent","kind":1},{"abilities":[1,2],"typeParameters":[],"fields":[{"name":"pool_id","position":0,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"}},{"name":"validator_address","position":1,"type":{"typeParameterInstantiation":[],"type":1}},{"name":"staker_address","position":2,"type":{"typeParameterInstantiation":[],"type":1}},{"name":"stake_activation_epoch","position":3,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"unstaking_epoch","position":4,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"principal_amount","position":5,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"reward_amount","position":6,"type":{"typeParameterInstantiation":[],"type":6}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::UnstakingRequestEvent","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"validator","name":"UnstakingRequestEvent","kind":1},{"abilities":[3],"typeParameters":[],"fields":[{"name":"metadata","position":0,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::ValidatorMetadata"}},{"name":"voting_power","position":1,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"operation_cap_id","position":2,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"}},{"name":"gas_price","position":3,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"staking_pool","position":4,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool"}},{"name":"commission_rate","position":5,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"next_epoch_stake","position":6,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"next_epoch_gas_price","position":7,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"next_epoch_commission_rate","position":8,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"extra_fields","position":9,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::bag::Bag"}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"validator","name":"Validator","kind":1},{"abilities":[3],"typeParameters":[],"fields":[{"name":"sui_address","position":0,"type":{"typeParameterInstantiation":[],"type":1}},{"name":"protocol_pubkey_bytes","position":1,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"name":"network_pubkey_bytes","position":2,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"name":"worker_pubkey_bytes","position":3,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"name":"proof_of_possession","position":4,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"name":"name","position":5,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::string::String"}},{"name":"description","position":6,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::string::String"}},{"name":"image_url","position":7,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::url::Url"}},{"name":"project_url","position":8,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::url::Url"}},{"name":"net_address","position":9,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::string::String"}},{"name":"p2p_address","position":10,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::string::String"}},{"name":"primary_address","position":11,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::string::String"}},{"name":"worker_address","position":12,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::string::String"}},{"name":"next_epoch_protocol_pubkey_bytes","position":13,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::option::Option"}},{"name":"next_epoch_proof_of_possession","position":14,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::option::Option"}},{"name":"next_epoch_network_pubkey_bytes","position":15,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::option::Option"}},{"name":"next_epoch_worker_pubkey_bytes","position":16,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::option::Option"}},{"name":"next_epoch_net_address","position":17,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::string::String"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::option::Option"}},{"name":"next_epoch_p2p_address","position":18,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::string::String"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::option::Option"}},{"name":"next_epoch_primary_address","position":19,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::string::String"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::option::Option"}},{"name":"next_epoch_worker_address","position":20,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::string::String"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::option::Option"}},{"name":"extra_fields","position":21,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::bag::Bag"}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::ValidatorMetadata","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"validator","name":"ValidatorMetadata","kind":1}],"functions":[{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[],"name":"activate","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[],"name":"adjust_stake_and_gas_price","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"commission_rate","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::FungibleStakedSui"}}],"name":"convert_to_fungible_staked_sui","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[],"name":"deactivate","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}}],"returns":[],"name":"deposit_stake_rewards","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::string::String"}}],"name":"description","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[],"name":"effectuate_staged_metadata","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"gas_price","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakingPool"}}],"name":"get_staking_pool_ref","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::url::Url"}}],"name":"image_url","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":2}}],"name":"is_duplicate","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":2}}],"name":"is_preactive","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::ValidatorMetadata"}}],"name":"metadata","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::string::String"}}],"name":"name","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::string::String"}}],"name":"network_address","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}}],"name":"network_pubkey_bytes","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"body":{"typeParameterInstantiation":[],"type":1}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"name":"new","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::ValidatorMetadata"}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"name":"new_from_metadata","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"body":{"typeParameterInstantiation":[],"type":1}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::string::String"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::string::String"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::url::Url"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::url::Url"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::string::String"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::string::String"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::string::String"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::string::String"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::bag::Bag"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::ValidatorMetadata"}}],"name":"new_metadata","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"new_unverified_validator_operation_cap_and_transfer","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"next_epoch_gas_price","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::string::String"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::option::Option"}}],"name":"next_epoch_network_address","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::option::Option"}}],"name":"next_epoch_network_pubkey_bytes","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::string::String"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::option::Option"}}],"name":"next_epoch_p2p_address","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::string::String"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::option::Option"}}],"name":"next_epoch_primary_address","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::option::Option"}}],"name":"next_epoch_proof_of_possession","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::option::Option"}}],"name":"next_epoch_protocol_pubkey_bytes","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::string::String"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::option::Option"}}],"name":"next_epoch_worker_address","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::option::Option"}}],"name":"next_epoch_worker_pubkey_bytes","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"}}],"name":"operation_cap_id","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::string::String"}}],"name":"p2p_address","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"pending_stake_amount","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"pending_stake_withdraw_amount","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::PoolTokenExchangeRate"}}],"name":"pool_token_exchange_rate_at_epoch","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::string::String"}}],"name":"primary_address","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"process_pending_stakes_and_withdraws","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::url::Url"}}],"name":"project_url","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}}],"name":"proof_of_possession","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}}],"name":"protocol_pubkey_bytes","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::FungibleStakedSui"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}}],"name":"redeem_fungible_staked_sui","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"body":{"typeParameterInstantiation":[],"type":1}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}}],"name":"request_add_stake","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"body":{"typeParameterInstantiation":[],"type":1}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"request_add_stake_at_genesis","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[],"name":"request_set_commission_rate","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_cap::ValidatorOperationCap"}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[],"name":"request_set_gas_price","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}}],"name":"request_withdraw_stake","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[],"name":"set_candidate_commission_rate","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_cap::ValidatorOperationCap"}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[],"name":"set_candidate_gas_price","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[],"name":"set_voting_power","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"stake_amount","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"}}],"name":"staking_pool_id","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":1}}],"name":"sui_address","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"total_stake","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"total_stake_amount","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}}],"returns":[],"name":"update_candidate_network_address","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}}],"returns":[],"name":"update_candidate_network_pubkey","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}}],"returns":[],"name":"update_candidate_p2p_address","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}}],"returns":[],"name":"update_candidate_primary_address","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}}],"returns":[],"name":"update_candidate_protocol_pubkey","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}}],"returns":[],"name":"update_candidate_worker_address","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}}],"returns":[],"name":"update_candidate_worker_pubkey","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}}],"returns":[],"name":"update_description","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}}],"returns":[],"name":"update_image_url","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}}],"returns":[],"name":"update_name","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}}],"returns":[],"name":"update_next_epoch_network_address","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}}],"returns":[],"name":"update_next_epoch_network_pubkey","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}}],"returns":[],"name":"update_next_epoch_p2p_address","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}}],"returns":[],"name":"update_next_epoch_primary_address","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}}],"returns":[],"name":"update_next_epoch_protocol_pubkey","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}}],"returns":[],"name":"update_next_epoch_worker_address","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}}],"returns":[],"name":"update_next_epoch_worker_pubkey","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}}],"returns":[],"name":"update_project_url","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::ValidatorMetadata"}}],"returns":[],"name":"validate_metadata","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}}],"returns":[],"name":"validate_metadata_bcs","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"voting_power","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::string::String"}}],"name":"worker_address","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":3}],"type":9}}],"name":"worker_pubkey_bytes","visibility":2,"isEntry":false}],"name":"validator"}},{"address":"0x3","module":{"datatypes":[{"abilities":[3,4],"typeParameters":[],"fields":[{"name":"id","position":0,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::UID"}},{"name":"authorizer_validator_address","position":1,"type":{"typeParameterInstantiation":[],"type":1}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_cap::UnverifiedValidatorOperationCap","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"validator_cap","name":"UnverifiedValidatorOperationCap","kind":1},{"abilities":[2],"typeParameters":[],"fields":[{"name":"authorizer_validator_address","position":0,"type":{"typeParameterInstantiation":[],"type":1}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_cap::ValidatorOperationCap","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"validator_cap","name":"ValidatorOperationCap","kind":1}],"functions":[{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_cap::UnverifiedValidatorOperationCap"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_cap::ValidatorOperationCap"}}],"name":"into_verified","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"body":{"typeParameterInstantiation":[],"type":1}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"}}],"name":"new_unverified_validator_operation_cap_and_transfer","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_cap::UnverifiedValidatorOperationCap"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":1}}],"name":"unverified_operation_cap_address","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_cap::ValidatorOperationCap"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":1}}],"name":"verified_operation_cap_address","visibility":3,"isEntry":false}],"name":"validator_cap"}},{"address":"0x3","module":{"datatypes":[{"abilities":[1,2],"typeParameters":[],"fields":[{"name":"epoch","position":0,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"validator_address","position":1,"type":{"typeParameterInstantiation":[],"type":1}},{"name":"reference_gas_survey_quote","position":2,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"stake","position":3,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"commission_rate","position":4,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"pool_staking_reward","position":5,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"storage_fund_staking_reward","position":6,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"pool_token_exchange_rate","position":7,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::PoolTokenExchangeRate"}},{"name":"tallying_rule_reporters","position":8,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1}],"type":9}},{"name":"tallying_rule_global_score","position":9,"type":{"typeParameterInstantiation":[],"type":6}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorEpochInfoEvent","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"validator_set","name":"ValidatorEpochInfoEvent","kind":1},{"abilities":[1,2],"typeParameters":[],"fields":[{"name":"epoch","position":0,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"validator_address","position":1,"type":{"typeParameterInstantiation":[],"type":1}},{"name":"reference_gas_survey_quote","position":2,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"stake","position":3,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"voting_power","position":4,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"commission_rate","position":5,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"pool_staking_reward","position":6,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"storage_fund_staking_reward","position":7,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"pool_token_exchange_rate","position":8,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::PoolTokenExchangeRate"}},{"name":"tallying_rule_reporters","position":9,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1}],"type":9}},{"name":"tallying_rule_global_score","position":10,"type":{"typeParameterInstantiation":[],"type":6}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorEpochInfoEventV2","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"validator_set","name":"ValidatorEpochInfoEventV2","kind":1},{"abilities":[1,2],"typeParameters":[],"fields":[{"name":"epoch","position":0,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"validator_address","position":1,"type":{"typeParameterInstantiation":[],"type":1}},{"name":"staking_pool_id","position":2,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorJoinEvent","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"validator_set","name":"ValidatorJoinEvent","kind":1},{"abilities":[1,2],"typeParameters":[],"fields":[{"name":"epoch","position":0,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"validator_address","position":1,"type":{"typeParameterInstantiation":[],"type":1}},{"name":"staking_pool_id","position":2,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"}},{"name":"is_voluntary","position":3,"type":{"typeParameterInstantiation":[],"type":2}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorLeaveEvent","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"validator_set","name":"ValidatorLeaveEvent","kind":1},{"abilities":[3],"typeParameters":[],"fields":[{"name":"total_stake","position":0,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"active_validators","position":1,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}],"type":9}},{"name":"pending_active_validators","position":2,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::table_vec::TableVec"}},{"name":"pending_removals","position":3,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6}],"type":9}},{"name":"staking_pool_mappings","position":4,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"},{"typeParameterInstantiation":[],"type":1}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::table::Table"}},{"name":"inactive_validators","position":5,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"},{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_wrapper::ValidatorWrapper"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::table::Table"}},{"name":"validator_candidates","position":6,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1},{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_wrapper::ValidatorWrapper"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::table::Table"}},{"name":"at_risk_validators","position":7,"type":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1},{"typeParameterInstantiation":[],"type":6}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_map::VecMap"}},{"name":"extra_fields","position":8,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::bag::Bag"}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"validator_set","name":"ValidatorSet","kind":1},{"abilities":[1,2,3],"typeParameters":[],"fields":[{"name":"dummy_field","position":0,"type":{"typeParameterInstantiation":[],"type":2}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::VotingPowerAdmissionStartEpochKey","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"validator_set","name":"VotingPowerAdmissionStartEpochKey","kind":1}],"functions":[{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"name":"active_validator","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1}],"type":9}}],"name":"active_validator_addresses","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"name":"active_validator_mut","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}],"type":9}}],"name":"active_validators","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"reference":2,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"reference":2,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"reference":2,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1},{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_set::VecSet"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_map::VecMap"}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"advance_epoch","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"name":"any_validator","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"name":"any_validator_mut","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[],"name":"assert_no_pending_or_active_duplicates","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}],"type":9}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"calculate_total_stakes","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":6}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":2}}],"name":"can_join","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"name":"candidate_validator","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"name":"candidate_validator_mut","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1},{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_set::VecSet"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_map::VecMap"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[],"name":"clean_report_records_leaving_validator","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}],"type":9}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6}],"type":9}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6},{"typeParameterInstantiation":[],"type":6}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_map::VecMap"}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6},{"typeParameterInstantiation":[],"type":6}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_map::VecMap"}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6}],"type":9}}],"name":"compute_adjusted_reward_distribution","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6}],"type":9}},{"body":{"typeParameterInstantiation":[],"type":6}},{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6}],"type":9}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6},{"typeParameterInstantiation":[],"type":6}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_map::VecMap"}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6},{"typeParameterInstantiation":[],"type":6}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_map::VecMap"}}],"name":"compute_reward_adjustments","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1},{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_set::VecSet"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_map::VecMap"}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1}],"type":9}}],"name":"compute_slashed_validators","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}],"type":9}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6}],"type":9}}],"name":"compute_unadjusted_reward_distribution","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::FungibleStakedSui"}}],"name":"convert_to_fungible_staked_sui","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"derive_reference_gas_price","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6}],"type":9}},{"reference":2,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"reference":2,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"distribute_reward","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"body":{"typeParameterInstantiation":[],"type":6}},{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1},{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_set::VecSet"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_map::VecMap"}},{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1}],"type":9}}],"returns":[],"name":"emit_validator_epoch_events","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}],"type":9}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::option::Option"}}],"name":"find_validator","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::table_vec::TableVec"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000001::option::Option"}}],"name":"find_validator_from_table_vec","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":1}},{"body":{"typeParameterInstantiation":[],"type":3}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"name":"get_active_or_pending_or_candidate_validator_ref","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"name":"get_active_validator_ref","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"name":"get_candidate_or_active_validator_mut","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"name":"get_pending_validator_ref","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1}],"type":9}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6}],"type":9}}],"name":"get_validator_indices","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}],"type":9}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"name":"get_validator_ref","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"get_voting_power_thresholds","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":2}}],"name":"is_active_validator","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":2}}],"name":"is_active_validator_by_sui_address","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":2}}],"name":"is_at_risk_validator","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":2}}],"name":"is_duplicate_with_active_validator","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":2}}],"name":"is_duplicate_with_pending_validator","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":2}}],"name":"is_inactive_validator","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":2}}],"name":"is_validator_candidate","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}],"type":9}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}}],"name":"new","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"next_epoch_validator_count","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"name":"pending_validator","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"name":"pending_validator_mut","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":6},{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::PoolTokenExchangeRate"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::table::Table"}}],"name":"pool_exchange_rates","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"reference":2,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1},{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_set::VecSet"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_map::VecMap"}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"process_pending_removals","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"reference":2,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1},{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_set::VecSet"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_map::VecMap"}},{"body":{"typeParameterInstantiation":[],"type":2}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"process_validator_departure","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::FungibleStakedSui"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}}],"name":"redeem_fungible_staked_sui","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":1}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}}],"name":"request_add_stake","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"request_add_validator","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"request_add_validator_candidate","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"request_remove_validator","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[],"name":"request_remove_validator_candidate","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::staking_pool::StakedSui"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::balance::Balance"}}],"name":"request_withdraw_stake","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"},{"typeParameterInstantiation":[],"type":1}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::table::Table"}}],"name":"staking_pool_mappings","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}],"type":9}},{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1}],"type":9}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"sum_voting_power_by_addresses","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"total_stake","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":6}},{"reference":2,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1},{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":1}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_set::VecSet"}],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::vec_map::VecMap"}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"update_validator_positions_and_calculate_total_stake","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":1}}],"name":"validator_address_by_pool_id","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"}}],"returns":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"name":"validator_by_pool_id","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"validator_stake_amount","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::object::ID"}}],"name":"validator_staking_pool_id","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"validator_total_stake_amount","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"body":{"typeParameterInstantiation":[],"type":1}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"validator_voting_power","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_set::ValidatorSet"}},{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_cap::UnverifiedValidatorOperationCap"}},{"body":{"typeParameterInstantiation":[],"type":3}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_cap::ValidatorOperationCap"}}],"name":"verify_cap","visibility":3,"isEntry":false}],"name":"validator_set"}},{"address":"0x3","module":{"datatypes":[{"abilities":[3],"typeParameters":[],"fields":[{"name":"inner","position":0,"type":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::versioned::Versioned"}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_wrapper::ValidatorWrapper","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"validator_wrapper","name":"ValidatorWrapper","kind":1}],"functions":[{"typeParameters":[],"parameters":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}},{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000002::tx_context::TxContext"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_wrapper::ValidatorWrapper"}}],"name":"create_v1","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_wrapper::ValidatorWrapper"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"name":"destroy","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_wrapper::ValidatorWrapper"}}],"returns":[{"reference":2,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}}],"name":"load_validator_maybe_upgrade","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_wrapper::ValidatorWrapper"}}],"returns":[],"name":"upgrade_to_latest","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator_wrapper::ValidatorWrapper"}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"version","visibility":1,"isEntry":false}],"name":"validator_wrapper"}},{"address":"0x3","module":{"datatypes":[{"abilities":[2],"typeParameters":[],"fields":[{"name":"validator_index","position":0,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"voting_power","position":1,"type":{"typeParameterInstantiation":[],"type":6}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::voting_power::VotingPowerInfo","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"voting_power","name":"VotingPowerInfo","kind":1},{"abilities":[2],"typeParameters":[],"fields":[{"name":"validator_index","position":0,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"voting_power","position":1,"type":{"typeParameterInstantiation":[],"type":6}},{"name":"stake","position":2,"type":{"typeParameterInstantiation":[],"type":6}}],"variants":[],"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::voting_power::VotingPowerInfoV2","definingId":"0x0000000000000000000000000000000000000000000000000000000000000003","module":"voting_power","name":"VotingPowerInfoV2","kind":1}],"functions":[{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::voting_power::VotingPowerInfoV2"}],"type":9}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[],"name":"adjust_voting_power","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}],"type":9}}],"returns":[],"name":"check_invariants","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"derive_raw_voting_power","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":1,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}],"type":9}},{"body":{"typeParameterInstantiation":[],"type":6}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::voting_power::VotingPowerInfoV2"}],"type":9}},{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"init_voting_power_info","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::voting_power::VotingPowerInfoV2"}],"type":9}},{"body":{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::voting_power::VotingPowerInfoV2"}}],"returns":[],"name":"insert","visibility":1,"isEntry":false},{"typeParameters":[],"parameters":[],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"quorum_threshold","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}],"type":9}},{"body":{"typeParameterInstantiation":[],"type":6}}],"returns":[],"name":"set_voting_power","visibility":3,"isEntry":false},{"typeParameters":[],"parameters":[],"returns":[{"body":{"typeParameterInstantiation":[],"type":6}}],"name":"total_voting_power","visibility":2,"isEntry":false},{"typeParameters":[],"parameters":[{"reference":2,"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::validator::Validator"}],"type":9}},{"body":{"typeParameterInstantiation":[{"typeParameterInstantiation":[],"type":10,"typeName":"0x0000000000000000000000000000000000000000000000000000000000000003::voting_power::VotingPowerInfoV2"}],"type":9}}],"returns":[],"name":"update_voting_power","visibility":1,"isEntry":false}],"name":"voting_power"}}]', ); export function loadAllTypes(coder: MoveCoder) { _0x1.loadAllTypes(coder); _0x2.loadAllTypes(coder); for (const m of Object.values(MODULES)) { coder.load(m as any, "0x3"); } } loadAllTypes(defaultMoveCoder(SuiNetwork.MAIN_NET)); loadAllTypes(defaultMoveCoder(SuiNetwork.TEST_NET));