UNPKG

@bandz/protocol-js

Version:

Bandz protocol data aggregation tool

29 lines (28 loc) 2.6 kB
import { IAaveGovernanceV2 } from '../../contract-types/IAaveGovernanceV2'; import AaveGovernanceV2Interface from '../../interfaces/v2/AaveGovernanceV2'; import { Configuration, SmartBCHTransactionTypeExtended, GovernanceConfig, tSmartBCHAddress } from '../../types'; import { GovCancelType, GovCreateType, GovExecuteType, GovGetProposalsType, GovGetProposalType, GovGetVotingAtBlockType, GovGetVotingSupplyType, GovQueueType, GovSignVotingType, GovSubmitVoteSignType, GovSubmitVoteType, GovGetTokensVotingPower as GovGetPower, GovGetVoteOnProposal } from '../../types/GovernanceV2MethodTypes'; import { Proposal, Power, Vote } from '../../types/GovernanceV2ReturnTypes'; import BaseService from '../BaseService'; export default class AaveGovernanceV2Service extends BaseService<IAaveGovernanceV2> implements AaveGovernanceV2Interface { readonly bandzGovernanceV2Address: string; readonly bandzGovernanceV2HelperAddress: string; readonly executors: tSmartBCHAddress[]; readonly governanceConfig: GovernanceConfig | undefined; constructor(config: Configuration, governanceConfig: GovernanceConfig | undefined); create({ user, targets, values, signatures, calldatas, withDelegateCalls, ipfsHash, executor, }: GovCreateType): Promise<SmartBCHTransactionTypeExtended[]>; cancel({ user, proposalId }: GovCancelType): Promise<SmartBCHTransactionTypeExtended[]>; queue({ user, proposalId }: GovQueueType): Promise<SmartBCHTransactionTypeExtended[]>; execute({ user, proposalId }: GovExecuteType): Promise<SmartBCHTransactionTypeExtended[]>; submitVote({ user, proposalId, support }: GovSubmitVoteType): Promise<SmartBCHTransactionTypeExtended[]>; signVoting({ support, proposalId }: GovSignVotingType): Promise<string>; submitVoteBySignature({ user, proposalId, support, signature }: GovSubmitVoteSignType): Promise<SmartBCHTransactionTypeExtended[]>; getProposals({ skip, limit, }: GovGetProposalsType): Promise<Proposal[]>; getProposal({ proposalId, }: GovGetProposalType): Promise<Proposal>; getPropositionPowerAt({ user, block, strategy, }: GovGetVotingAtBlockType): Promise<string>; getVotingPowerAt({ user, block, strategy, }: GovGetVotingAtBlockType): Promise<string>; getTotalPropositionSupplyAt({ block, strategy, }: GovGetVotingSupplyType): Promise<string>; getTotalVotingSupplyAt({ block, strategy, }: GovGetVotingSupplyType): Promise<string>; getTokensPower({ user, tokens }: GovGetPower): Promise<Power[]>; getVoteOnProposal({ proposalId, user, }: GovGetVoteOnProposal): Promise<Vote>; }