# Class: DAONodeTrustedProposals
Rocket Pool DAO Trusted Node Proposals
# Constructors
# constructor
• new DAONodeTrustedProposals(web3
, contracts
)
Create a new DAONodeTrustedProposals instance.
# Parameters
Name | Type | Description |
---|---|---|
web3 | default | A valid Web3 instance |
contracts | Contracts | A Rocket Pool contract manager instance |
# Defined in
rocketpool/dao/node/trusted/proposals.ts:18
# Accessors
# rocketDAONodeTrustedProposals
• Private
get
rocketDAONodeTrustedProposals(): Promise
<Contract
>
Private accessor use to retrieve the related contract
# Returns
Promise
<Contract
>
a Promise<Contract> with a web3.eth.contract instance of the rocketDAONodeTrustedProposals contract
# Defined in
rocketpool/dao/node/trusted/proposals.ts:24
# Methods
# propose
▸ propose(message
, payload
, options?
, onConfirmation?
): Promise
<TransactionReceipt
>
Create a DAO proposal with calldata
example
using Typescript
const proposerDAOMember = "0x24fBeD7Ecd625D3f0FD19a6c9113DEd436172294";
const toBeKickedDAOMember = "0x6f10Fd508321D27D8F19CBCC2F2f3d5527B637eC";
const fineAmount = "5000000000000000000000";
const message = "hey guys, this member hasn't logged on for weeks, lets boot them with a 33% fine!";
const proposalCalldata = web3.eth.abi.encodeFunctionCall(
{
name: "proposalKick",
type: "function",
inputs: [
{ type: "address", name: "_nodeAddress" },
{ type: "uint256", name: "_rplFine" },
],
},
[toBeKickedDAOMember, registeredNodeTrusted2BondAmountFine.toString()]
);
const options = {
from: proposerDAOMember,
gas: 1000000
}
const txReceipt = rp.dao.node.trusted.proposals.propose(message, payload, options).then((txReceipt: TransactionReceipt) => { txReceipt };
# Parameters
Name | Type | Description |
---|---|---|
message | string | A string representing the message |
payload | string | A string representing the calldata payload |
options? | SendOptions | An optional object of web3.eth.Contract SendOptions |
onConfirmation? | ConfirmationHandler | An optional confirmation handler object |
# Returns
Promise
<TransactionReceipt
>
a Promise<TransactionReceipt> that resolves to a TransactionReceipt object representing the receipt of the transaction
# Defined in
rocketpool/dao/node/trusted/proposals.ts:61
# vote
▸ vote(proposalID
, vote
, options?
, onConfirmation?
): Promise
<TransactionReceipt
>
Vote on an existing proposal
example
using Typescript
const proposalID = 1;
const vote = true;
const daoMember = "0x24fBeD7Ecd625D3f0FD19a6c9113DEd436172294";
const options = {
from: daoMember,
gas: 1000000
}
const txReceipt = rp.dao.node.trusted.proposals.vote(proposalID, vote, options).then((txReceipt: TransactionReceipt) => { txReceipt };
# Parameters
Name | Type | Description |
---|---|---|
proposalID | number | A number representing the proposalID |
vote | boolean | A boolean representing the vote |
options? | SendOptions | An optional object of web3.eth.Contract SendOptions |
onConfirmation? | ConfirmationHandler | An optional confirmation handler object |
# Returns
Promise
<TransactionReceipt
>
a Promise<TransactionReceipt> that resolves to a TransactionReceipt object representing the receipt of the transaction
# Defined in
rocketpool/dao/node/trusted/proposals.ts:88
# execute
▸ execute(proposalID
, options?
, onConfirmation?
): Promise
<TransactionReceipt
>
Execute on an existing proposal
example
using Typescript
const proposalID = 1;
const daoMember = "0x24fBeD7Ecd625D3f0FD19a6c9113DEd436172294";
const options = {
from: daoMember,
gas: 1000000
}
const txReceipt = rp.dao.node.trusted.proposals.execute(proposalID, vote, options).then((txReceipt: TransactionReceipt) => { txReceipt };
# Parameters
Name | Type | Description |
---|---|---|
proposalID | number | A number representing the proposalID |
options? | SendOptions | An optional object of web3.eth.Contract SendOptions |
onConfirmation? | ConfirmationHandler | An optional confirmation handler object |
# Returns
Promise
<TransactionReceipt
>
a Promise<TransactionReceipt> that resolves to a TransactionReceipt object representing the receipt of the transaction
# Defined in
rocketpool/dao/node/trusted/proposals.ts:113
# cancel
▸ cancel(proposalID
, options?
, onConfirmation?
): Promise
<TransactionReceipt
>
Cancel an existing proposal
example
using Typescript
const proposalID = 1;
const daoMember = "0x24fBeD7Ecd625D3f0FD19a6c9113DEd436172294";
const options = {
from: daoMember,
gas: 1000000
}
const txReceipt = rp.dao.node.trusted.proposals.cancel(proposalID, vote, options).then((txReceipt: TransactionReceipt) => { txReceipt };
# Parameters
Name | Type | Description |
---|---|---|
proposalID | number | A number representing the proposalID |
options? | SendOptions | An optional object of web3.eth.Contract SendOptions |
onConfirmation? | ConfirmationHandler | An optional confirmation handler object |
# Returns
Promise
<TransactionReceipt
>
a Promise<TransactionReceipt> that resolves to a TransactionReceipt object representing the receipt of the transaction
# Defined in
rocketpool/dao/node/trusted/proposals.ts:138