IPoolFactory
Interface Description
License: MIT
interface IPoolFactory
This is the Factory contract for the gov pools. Anyone can create a pool for themselves to become a governance owner (GovPool)
enum VotePowerType {
LINEAR_VOTES,
POLYNOMIAL_VOTES,
CUSTOM_VOTES
}
The enum that holds information about calculating vote power
Parameters:
the vote power = number of tokens
the vote power calculated with polynomial formula
the vote type defined by a customer
SettingsDeployParams
General settings of the pool
Parameters:
struct IGovSettings.ProposalSettings[]
list of infos about settings for proposal types
additionalProposalExecutors
list of additional proposal executors
ValidatorsDeployParams
Parameters of validators
Parameters:
the name of a token used by validators
the symbol of a token used by validators
struct IGovValidators.ProposalSettings
struct with settings for proposals
list of the validator addresses
list of initial token balances of the validators
UserKeeperDeployParams
Parameters of the user keeper
Parameters:
address of the tokens used for voting
address of the NFT used for voting
the voting power of an NFT
VotePowerDeployParams
The voting power parameters
Parameters:
enum IPoolFactory.VotePowerType
type of algorythm to calculate votes number from token number
initialization data for standard contract types
address of custom contract (for custom voteType)
GovPoolDeployParams
The pool deploy parameters
Parameters:
struct IPoolFactory.SettingsDeployParams
general settings of the pool
struct IPoolFactory.ValidatorsDeployParams
struct IPoolFactory.UserKeeperDeployParams
parameters of the user keeper
struct IERC20Gov.ConstructorParams
struct IPoolFactory.VotePowerDeployParams
the address of the verifier
if true, only KYCed users will be allowed to interact with the pool
the description of the pool
GovPoolPredictedAddresses
The predicted pool addresses given tx.origin and GovPool name
Parameters:
the predicted govPool address
the predicted govTokenSale address
the predicted govToken address
the predicted distributionProposal address
the predicted expertNft address
the predicted nftMultiplier address
deployGovPool (0x0cc3c11c)
This function is used to deploy DAO Pool with TokenSale proposal
Parameters:
struct IPoolFactory.GovPoolDeployParams
the pool deploy parameters
predictGovAddresses (0x17278f74)
The view function that predicts the addresses where the gov pool proxy, the gov token sale proxy and the gov token will be stored
Parameters:
the user that deploys the gov pool (tx.origin)
the name of the pool which is part of the salt
Return values:
struct IPoolFactory.GovPoolPredictedAddresses