multiversx_sdk.governance package

Submodules

multiversx_sdk.governance.governance_controller module

class multiversx_sdk.governance.governance_controller.GovernanceController(chain_id: str, network_provider: INetworkProvider, address_hrp: str | None = None)[source]

Bases: BaseController

await_completed_close_proposal(tx_hash: str | bytes) list[CloseProposalOutcome][source]
await_completed_new_proposal(tx_hash: str | bytes) list[NewProposalOutcome][source]
await_completed_vote(tx_hash: str | bytes) list[VoteOutcome][source]
create_transaction_for_changing_config(sender: IAccount, nonce: int, proposal_fee: int, lost_proposal_fee: int, min_quorum: int, min_veto_threshold: int, min_pass_threshold: int, gas_limit: int | None = None, gas_price: int | None = None, guardian: Address | None = None, relayer: Address | None = None) Transaction[source]
create_transaction_for_claiming_accumulated_fees(sender: IAccount, nonce: int, gas_limit: int | None = None, gas_price: int | None = None, guardian: Address | None = None, relayer: Address | None = None) Transaction[source]
create_transaction_for_clearing_ended_proposals(sender: IAccount, nonce: int, proposers: list[Address], gas_limit: int | None = None, gas_price: int | None = None, guardian: Address | None = None, relayer: Address | None = None) Transaction[source]
create_transaction_for_closing_proposal(sender: IAccount, nonce: int, proposal_nonce: int, gas_limit: int | None = None, gas_price: int | None = None, guardian: Address | None = None, relayer: Address | None = None) Transaction[source]
create_transaction_for_new_proposal(sender: IAccount, nonce: int, commit_hash: str, start_vote_epoch: int, end_vote_epoch: int, native_token_amount: int, gas_limit: int | None = None, gas_price: int | None = None, guardian: Address | None = None, relayer: Address | None = None) Transaction[source]
create_transaction_for_voting(sender: IAccount, nonce: int, proposal_nonce: int, vote: VoteType, gas_limit: int | None = None, gas_price: int | None = None, guardian: Address | None = None, relayer: Address | None = None) Transaction[source]
get_config() GovernanceConfig[source]
get_delegated_vote_info(contract: Address, user: Address) DelegatedVoteInfo[source]
get_proposal(proposal_nonce: int) ProposalInfo[source]
get_voting_power(address: Address) int[source]
parse_close_proposal(transaction_on_network: TransactionOnNetwork) list[CloseProposalOutcome][source]
parse_new_proposal(transaction_on_network: TransactionOnNetwork) list[NewProposalOutcome][source]
parse_vote(transaction_on_network: TransactionOnNetwork) list[VoteOutcome][source]
class multiversx_sdk.governance.governance_controller.INetworkProvider(*args, **kwargs)[source]

Bases: Protocol

await_transaction_completed(transaction_hash: str | bytes, options: AwaitingOptions | None = None) TransactionOnNetwork[source]
query_contract(query: SmartContractQuery) SmartContractQueryResponse[source]

multiversx_sdk.governance.governance_transactions_factory module

class multiversx_sdk.governance.governance_transactions_factory.GovernanceTransactionsFactory(config: TransactionsFactoryConfig)[source]

Bases: object

create_transaction_for_changing_config(sender: Address, proposal_fee: int, lost_proposal_fee: int, min_quorum: int, min_veto_threshold: int, min_pass_threshold: int) Transaction[source]
create_transaction_for_claiming_accumulated_fees(sender: Address) Transaction[source]
create_transaction_for_clearing_ended_proposals(sender: Address, proposers: list[Address]) Transaction[source]
create_transaction_for_closing_proposal(sender: Address, proposal_nonce: int) Transaction[source]
create_transaction_for_new_proposal(sender: Address, commit_hash: str, start_vote_epoch: int, end_vote_epoch: int, native_token_amount: int) Transaction[source]
create_transaction_for_voting(sender: Address, proposal_nonce: int, vote: VoteType) Transaction[source]

multiversx_sdk.governance.governance_transactions_outcome_parser module

class multiversx_sdk.governance.governance_transactions_outcome_parser.GovernanceTransactionsOutcomeParser(address_hrp: str | None = None)[source]

Bases: object

parse_close_proposal(transaction_on_network: TransactionOnNetwork) list[CloseProposalOutcome][source]
parse_delegate_vote(transaction_on_network: TransactionOnNetwork) list[DelegateVoteOutcome][source]
parse_new_proposal(transaction_on_network: TransactionOnNetwork) list[NewProposalOutcome][source]
parse_vote(transaction_on_network: TransactionOnNetwork) list[VoteOutcome][source]

multiversx_sdk.governance.resources module

class multiversx_sdk.governance.resources.CloseProposalOutcome(commit_hash: str, passed: bool)[source]

Bases: object

commit_hash: str
passed: bool
class multiversx_sdk.governance.resources.DelegateVoteOutcome(proposal_nonce: int, vote: str, voter: multiversx_sdk.core.address.Address, user_stake: int, voting_power: int)[source]

Bases: object

proposal_nonce: int
user_stake: int
vote: str
voter: Address
voting_power: int
class multiversx_sdk.governance.resources.DelegatedVoteInfo(used_stake: int, used_power: int, total_stake: int, total_power: int)[source]

Bases: object

total_power: int
total_stake: int
used_power: int
used_stake: int
class multiversx_sdk.governance.resources.GovernanceConfig(proposal_fee: int, min_quorum: float, min_pass_threshold: float, min_veto_threshold: float, last_proposal_nonce: int)[source]

Bases: object

last_proposal_nonce: int
min_pass_threshold: float
min_quorum: float
min_veto_threshold: float
proposal_fee: int
class multiversx_sdk.governance.resources.NewProposalOutcome(proposal_nonce: int, commit_hash: str, start_vote_epoch: int, end_vote_epoch: int)[source]

Bases: object

commit_hash: str
end_vote_epoch: int
proposal_nonce: int
start_vote_epoch: int
class multiversx_sdk.governance.resources.ProposalInfo(cost: int, commit_hash: str, nonce: int, issuer: multiversx_sdk.core.address.Address, start_vote_epoch: int, end_vote_epoch: int, quorum_stake: int, num_yes_votes: int, num_no_votes: int, num_veto_votes: int, num_abstain_votes: int, is_closed: bool, is_passed: bool)[source]

Bases: object

commit_hash: str
cost: int
end_vote_epoch: int
is_closed: bool
is_passed: bool
issuer: Address
nonce: int
num_abstain_votes: int
num_no_votes: int
num_veto_votes: int
num_yes_votes: int
quorum_stake: int
start_vote_epoch: int
class multiversx_sdk.governance.resources.VoteOutcome(proposal_nonce: int, vote: str, total_stake: int, total_voting_power: int)[source]

Bases: object

proposal_nonce: int
total_stake: int
total_voting_power: int
vote: str
class multiversx_sdk.governance.resources.VoteType(*values)[source]

Bases: Enum

ABSTAIN = 'abstain'
NO = 'no'
VETO = 'veto'
YES = 'yes'

Module contents

class multiversx_sdk.governance.CloseProposalOutcome(commit_hash: str, passed: bool)[source]

Bases: object

commit_hash: str
passed: bool
class multiversx_sdk.governance.DelegateVoteOutcome(proposal_nonce: int, vote: str, voter: multiversx_sdk.core.address.Address, user_stake: int, voting_power: int)[source]

Bases: object

proposal_nonce: int
user_stake: int
vote: str
voter: Address
voting_power: int
class multiversx_sdk.governance.DelegatedVoteInfo(used_stake: int, used_power: int, total_stake: int, total_power: int)[source]

Bases: object

total_power: int
total_stake: int
used_power: int
used_stake: int
class multiversx_sdk.governance.GovernanceConfig(proposal_fee: int, min_quorum: float, min_pass_threshold: float, min_veto_threshold: float, last_proposal_nonce: int)[source]

Bases: object

last_proposal_nonce: int
min_pass_threshold: float
min_quorum: float
min_veto_threshold: float
proposal_fee: int
class multiversx_sdk.governance.GovernanceController(chain_id: str, network_provider: INetworkProvider, address_hrp: str | None = None)[source]

Bases: BaseController

await_completed_close_proposal(tx_hash: str | bytes) list[CloseProposalOutcome][source]
await_completed_new_proposal(tx_hash: str | bytes) list[NewProposalOutcome][source]
await_completed_vote(tx_hash: str | bytes) list[VoteOutcome][source]
create_transaction_for_changing_config(sender: IAccount, nonce: int, proposal_fee: int, lost_proposal_fee: int, min_quorum: int, min_veto_threshold: int, min_pass_threshold: int, gas_limit: int | None = None, gas_price: int | None = None, guardian: Address | None = None, relayer: Address | None = None) Transaction[source]
create_transaction_for_claiming_accumulated_fees(sender: IAccount, nonce: int, gas_limit: int | None = None, gas_price: int | None = None, guardian: Address | None = None, relayer: Address | None = None) Transaction[source]
create_transaction_for_clearing_ended_proposals(sender: IAccount, nonce: int, proposers: list[Address], gas_limit: int | None = None, gas_price: int | None = None, guardian: Address | None = None, relayer: Address | None = None) Transaction[source]
create_transaction_for_closing_proposal(sender: IAccount, nonce: int, proposal_nonce: int, gas_limit: int | None = None, gas_price: int | None = None, guardian: Address | None = None, relayer: Address | None = None) Transaction[source]
create_transaction_for_new_proposal(sender: IAccount, nonce: int, commit_hash: str, start_vote_epoch: int, end_vote_epoch: int, native_token_amount: int, gas_limit: int | None = None, gas_price: int | None = None, guardian: Address | None = None, relayer: Address | None = None) Transaction[source]
create_transaction_for_voting(sender: IAccount, nonce: int, proposal_nonce: int, vote: VoteType, gas_limit: int | None = None, gas_price: int | None = None, guardian: Address | None = None, relayer: Address | None = None) Transaction[source]
get_config() GovernanceConfig[source]
get_delegated_vote_info(contract: Address, user: Address) DelegatedVoteInfo[source]
get_proposal(proposal_nonce: int) ProposalInfo[source]
get_voting_power(address: Address) int[source]
parse_close_proposal(transaction_on_network: TransactionOnNetwork) list[CloseProposalOutcome][source]
parse_new_proposal(transaction_on_network: TransactionOnNetwork) list[NewProposalOutcome][source]
parse_vote(transaction_on_network: TransactionOnNetwork) list[VoteOutcome][source]
class multiversx_sdk.governance.GovernanceTransactionsFactory(config: TransactionsFactoryConfig)[source]

Bases: object

create_transaction_for_changing_config(sender: Address, proposal_fee: int, lost_proposal_fee: int, min_quorum: int, min_veto_threshold: int, min_pass_threshold: int) Transaction[source]
create_transaction_for_claiming_accumulated_fees(sender: Address) Transaction[source]
create_transaction_for_clearing_ended_proposals(sender: Address, proposers: list[Address]) Transaction[source]
create_transaction_for_closing_proposal(sender: Address, proposal_nonce: int) Transaction[source]
create_transaction_for_new_proposal(sender: Address, commit_hash: str, start_vote_epoch: int, end_vote_epoch: int, native_token_amount: int) Transaction[source]
create_transaction_for_voting(sender: Address, proposal_nonce: int, vote: VoteType) Transaction[source]
class multiversx_sdk.governance.GovernanceTransactionsOutcomeParser(address_hrp: str | None = None)[source]

Bases: object

parse_close_proposal(transaction_on_network: TransactionOnNetwork) list[CloseProposalOutcome][source]
parse_delegate_vote(transaction_on_network: TransactionOnNetwork) list[DelegateVoteOutcome][source]
parse_new_proposal(transaction_on_network: TransactionOnNetwork) list[NewProposalOutcome][source]
parse_vote(transaction_on_network: TransactionOnNetwork) list[VoteOutcome][source]
class multiversx_sdk.governance.NewProposalOutcome(proposal_nonce: int, commit_hash: str, start_vote_epoch: int, end_vote_epoch: int)[source]

Bases: object

commit_hash: str
end_vote_epoch: int
proposal_nonce: int
start_vote_epoch: int
class multiversx_sdk.governance.ProposalInfo(cost: int, commit_hash: str, nonce: int, issuer: multiversx_sdk.core.address.Address, start_vote_epoch: int, end_vote_epoch: int, quorum_stake: int, num_yes_votes: int, num_no_votes: int, num_veto_votes: int, num_abstain_votes: int, is_closed: bool, is_passed: bool)[source]

Bases: object

commit_hash: str
cost: int
end_vote_epoch: int
is_closed: bool
is_passed: bool
issuer: Address
nonce: int
num_abstain_votes: int
num_no_votes: int
num_veto_votes: int
num_yes_votes: int
quorum_stake: int
start_vote_epoch: int
class multiversx_sdk.governance.VoteOutcome(proposal_nonce: int, vote: str, total_stake: int, total_voting_power: int)[source]

Bases: object

proposal_nonce: int
total_stake: int
total_voting_power: int
vote: str
class multiversx_sdk.governance.VoteType(*values)[source]

Bases: Enum

ABSTAIN = 'abstain'
NO = 'no'
VETO = 'veto'
YES = 'yes'