ExternalDeveloperHub
ExternalDeveloperHub__ChainIsNotSupported
ExternalDeveloperHub__IsNotOwner
ExternalDeveloperHub__ProtocolNotRegistered
ExternalDeveloperHub__ExternalDeveloperNotApproved
ExternalDeveloperHub__AddrTooBig
ExternalDeveloperHub__ProtocolAlreadyExists
ExternalDeveloperHub__DuplicateTransmitter
ExternalDeveloperHub__ZeroAmount
ExternalDeveloperHub__ZeroOwner
ExternalDeveloperHub__ZeroAddress
ExternalDeveloperHub__InvalidAddress
ExternalDeveloperHub__NoTransmittersAllowed
ExternalDeveloperHub__InsufficientFunds
ExternalDeveloperHub__InvalidConsensusTargetRate
ExternalDeveloperHub__ManualTransmittersLimitExceeded
ExternalDeveloperHub__MaxTransmittersLimitTooHigh
ADMIN
APPROVE
BET_MANAGER
ROUND_MANAGER
ApproveExternalDeveloper
BanExternalDeveloper
SetMaxTransmitterLimitByAdmin
SetMaxTransmitterLimit
SetMinProtocolBalance
SetProtocolFee
RegisterProtocol
SetProtocolOwner
SetDAOProtocolOwner
Deposit
SetManualTransmitters
SetConsensusTargetRate
SetMinDelegateAmount
SetMinPersonalAmount
AddAllowedProtocolAddress
RemoveAllowedProtocolAddress
AddAllowedProposerAddress
RemoveAllowedProposerAddress
AddExecutor
RemoveExecutor
ProtocolParams
ProtocolInfo
isInit
setContracts init marker
approvedExternalDevelopers
externalDevelopers that are KYB verified.
maxTransmittersLimitByAdmin
manual max transmitters limit
protocolInfo
activeParams
Active params for current round.
realtimeParams
Params that will be updated on next round turn.
protocols
protocol list
masterSmartContract
stakingManager
ngl
globalConfig
minProtocolBalance
Minimum balance in stake for specified protocol or it'll be paused
allowedChainIds
allowed chains
_protocolOwnerInternal
protocolOwner
allowedChainId
initialize
Initialize
Parameters
initAddr
address[2]
setContracts
Set contracts addresses
Parameters
initAddr
address[6]
_authorizeUpgrade
approveExternalDeveloper
Approve externalDeveloper after KYB process
Parameters
externalDeveloper
address
- ExternalDeveloper management address
banExternalDeveloper
Remove externalDeveloper from approved list
Parameters
externalDeveloper
address
- ExternalDeveloper management address
setMaxTransmitterLimitByAdmin
Change maximum allowed number of transmitters for protocol (enforced only on next param change by externalDeveloper)
Parameters
_protocolId
bytes32
- Protocol id
_maxTransmitters
uint256
- Maximum allowed transmitters for protocol
setMinProtocolBalance
Change minimum balance for protocol
Parameters
_protocolId
bytes32
- Protocol id
_minBalance
uint256
- Minimum balance
setProtocolFee
Change change protocol fee for specified protocol
Parameters
_protocolId
bytes32
- Protocol id
_fee
uint256
- New protocol fee
getActiveProtocols
Protocols that have minimum balance and not paused
requireParamsValid
Check if all protocol params are valid (should be called after each param setter)
Parameters
_protocolId
bytes32
- Protocol id
initGovProtocol
Gov protocol (added by Entangle) initialization
Parameters
_owner
address
_minDelegateAmount
uint256
- Minimum delegate amount for transmitters to participate in protocol
_minPersonalAmount
uint256
- Minimum personal stake amount for transmitters that can participate in protocol
_maxTransmitters
uint256
- Maximum number of transmitters that can participate in protocol
_protocolParams
struct ExternalDeveloperHub.ProtocolParams
- Protocol params
_transmitters
address[]
- List of manual transmitters
addGovProtocolAddress
set govProtocol address by admin (only once per deploy)
Parameters
_chainId
uint64
_govAddress
bytes
- Gov protocol address
_executors
bytes[]
- List of executors
registerProtocol
register new protocol (by externalDeveloper)
Parameters
_protocolId
bytes32
- Protocol id
_owner
address
- Protocol owner address
_minDelegateAmount
uint256
- Minimum delegate amount for transmitters to participate in protocol
_minPersonalAmount
uint256
- Minimum personal stake amount for transmitters that can participate in protocol
_maxTransmitters
uint256
- Maximum number of transmitters that can participate in protocol
_protocolParams
struct ExternalDeveloperHub.ProtocolParams
- Protocol params
_transmitters
address[]
- List of manual transmitters
deduceChangeParamsFee
Deduce fee from externalDeveloper on each function that changes protocol params
setProtocolOwner
Transfer ownership to new externalDeveloper address
Parameters
_protocolId
bytes32
- Protocol id
newOwner
address
- New owner address
setMinPersonalAmount
Set minimum personal stake amount for transmitters that can participate in protocol
Parameters
_protocolId
bytes32
- Protocol id
_minPersonalAmount
uint256
- Minimum personal stake amount
setMinDelegateAmount
Set minimum delegate amount for transmitters to participate in protocol
Parameters
_protocolId
bytes32
- Protocol id
_minDelegateAmount
uint256
- Minimum delegate amount
setMaxTransmitterLimit
Set maximum number of transmitters that can participate in protocol
Parameters
_protocolId
bytes32
- Protocol id
_maxTransmitters
uint256
- Maximum number of transmitters
setProtocolParams
Set protocol bet and reward params
Parameters
_protocolId
bytes32
- Protocol id
_protocolParams
struct ExternalDeveloperHub.ProtocolParams
- Protocol params
deposit
Deposit NGL to protocol balance
Parameters
_protocolId
bytes32
- Protocol id
_amount
uint256
- Amount of NGL to deposit
setManualTransmitters
Set manual transmitter list
Parameters
_protocolId
bytes32
- Protocol id
_transmitters
address[]
- List of transmitter addresses
addAllowedProtocolAddress
Set protocol contract address
Parameters
_protocolId
bytes32
- Protocol id
_chainId
uint64
- Chain id
_protocolAddress
bytes
- Protocol address
removeAllowedProtocolAddress
Remove protocol contract address
Parameters
_protocolId
bytes32
- Protocol id
_chainId
uint64
- Chain id
_protocolAddress
bytes
- Protocol address
addAllowedProposerAddress
Set address that can propose new operations on EndPoint
Parameters
_protocolId
bytes32
- Protocol id
_chainId
uint64
_proposerAddress
bytes
- Address that can propose new operations
removeAllowedProposerAddress
Remove address that can propose new operations on EndPoint
Parameters
_protocolId
bytes32
- Protocol id
_chainId
uint64
- Chain id
_proposerAddress
bytes
- Address that can propose new operations
addExecutor
Add executor address (which can call executeOperation on EndPoint with protocols operations)
Parameters
_protocolId
bytes32
- Protocol id
_chainId
uint64
- Chain id
_executor
bytes
- Executor address
removeExecutor
Remove executor address
Parameters
_protocolId
bytes32
- Protocol id
_chainId
uint64
- Chain id
_executor
bytes
- Executor address
minDelegateAmount
Minimum delegate amount for transmitters that can participate in protocol
Parameters
_protocolId
bytes32
- Protocol id
minPersonalAmount
Minimum personal stake amount for transmitters that can participate in protocol
Parameters
_protocolId
bytes32
- Protocol id
maxTransmitters
Maximum number of transmitters that can participate in protocol
Parameters
_protocolId
bytes32
- Protocol id
protocolFee
Protocol fee deduced from protocol balance on each operation
Parameters
_protocolId
bytes32
- Protocol id
getMinProtocolBalance
Get protocol min balance
Parameters
_protocolId
bytes32
- Protocol id
checkProtocolBalance
Check if protocol balance is above minimum of (global minProtocolBalance or protocol specific min balance)
Parameters
_protocolId
bytes32
Protocol id
Return Values
[0]
bool
bool True if protocol balance is above minimum
betAmount
Get required bet amount for protocol for given bet type
Parameters
_protocolId
bytes32
- Protocol id
betType
enum BetManager.BetType
- BetType (Message or Data)
rewardAmount
Get reward amount credited to each participating transmitter after operation is executed
Parameters
_protocolId
bytes32
- Protocol id
betType
enum BetManager.BetType
- BetType (Message or Data)
first
bool
- First bet
getProtocolOwner
Get protocol owner
Parameters
_protocolId
bytes32
- Protocol id
protocolBalance
Get current protocol balance
Parameters
protocolId
bytes32
- Protocol id
manualTransmitters
Get list of transmitters added by externalDeveloper
Parameters
protocolId
bytes32
- Protocol id
isManualTransmitter
Check if transmitter is static and added by externalDeveloper
Parameters
protocolId
bytes32
- Protocol id
transmitter
address
- Transmitter address
getProtocols
Get protocol list
turnRound
Update active params from realtime params for each protocol
deduceFee
Either deduce fee or pause protocol if no funds left
Parameters
_protocolId
bytes32
- Protocol id
_amount
uint256
- Amount of NGL to deduce
Last updated