Documentation
¶
Index ¶
Constants ¶
View Source
const ( EXECUTOR_ROLE_STR = "EXECUTOR_ROLE" //nolint:gosec // Public role identifier constant, not a credential. BYPASSER_ROLE_STR = "BYPASSER_ROLE" CANCELLER_ROLE_STR = "CANCELLER_ROLE" PROPOSER_ROLE_STR = "PROPOSER_ROLE" ADMIN_ROLE_STR = "ADMIN_ROLE" )
Variables ¶
View Source
var ( ADMIN_ROLE = Role{ ID: utils.MustHash(ADMIN_ROLE_STR), Name: ADMIN_ROLE_STR, } PROPOSER_ROLE = Role{ ID: utils.MustHash(PROPOSER_ROLE_STR), Name: PROPOSER_ROLE_STR, } BYPASSER_ROLE = Role{ ID: utils.MustHash(BYPASSER_ROLE_STR), Name: BYPASSER_ROLE_STR, } CANCELLER_ROLE = Role{ ID: utils.MustHash(CANCELLER_ROLE_STR), Name: CANCELLER_ROLE_STR, } EXECUTOR_ROLE = Role{ ID: utils.MustHash(EXECUTOR_ROLE_STR), Name: EXECUTOR_ROLE_STR, } )
https://github.com/smartcontractkit/ccip-owner-contracts/blob/9d81692b324ce7ea2ef8a75e683889edbc7e2dd0/src/RBACTimelock.sol#L71 Just to avoid invoking the Go binding to get these.
Functions ¶
This section is empty.
Types ¶
type CallProxyView ¶
type CallProxyView struct {
cldcommon.ContractMetaData
}
func GenerateCallProxyView ¶
func GenerateCallProxyView(cp owner_helpers.CallProxy) (CallProxyView, error)
type MCMSView ¶
type MCMSView struct {
cldcommon.ContractMetaData
// Note config is json marshallable.
Config mcmstypes.Config `json:"config"`
}
func GenerateMCMSView ¶
func GenerateMCMSView(mcms owner_helpers.ManyChainMultiSig) (MCMSView, error)
type MCMSWithTimelockView ¶
type MCMSWithTimelockView struct {
Bypasser MCMSView `json:"bypasser"`
Canceller MCMSView `json:"canceller"`
Proposer MCMSView `json:"proposer"`
Timelock TimelockView `json:"timelock"`
CallProxy CallProxyView `json:"callProxy"`
}
func GenerateMCMSWithTimelockView ¶
func GenerateMCMSWithTimelockView( bypasser owner_helpers.ManyChainMultiSig, canceller owner_helpers.ManyChainMultiSig, proposer owner_helpers.ManyChainMultiSig, timelock owner_helpers.RBACTimelock, callProxy owner_helpers.CallProxy, ) (MCMSWithTimelockView, error)
type MCMSWithTimelockViewSolana ¶
type MCMSWithTimelockViewSolana struct {
Bypasser MCMViewSolana `json:"bypasser"`
Canceller MCMViewSolana `json:"canceller"`
Proposer MCMViewSolana `json:"proposer"`
Timelock TimelockViewSolana `json:"timelock"`
}
func GenerateMCMSWithTimelockViewSolana ¶
func GenerateMCMSWithTimelockViewSolana( ctx context.Context, inspector *mcmssolanasdk.Inspector, timelockInspector *mcmssolanasdk.TimelockInspector, mcmProgram solana.PublicKey, proposerMcmSeed [32]byte, cancellerMcmSeed [32]byte, bypasserMcmSeed [32]byte, timelockProgram solana.PublicKey, timelockSeed [32]byte, ) (MCMSWithTimelockViewSolana, error)
type MCMViewSolana ¶
type MCMViewSolana struct {
ProgramID solana.PublicKey `json:"programID"`
Seed string `json:"seed"`
Owner solana.PublicKey `json:"owner"`
Config mcmstypes.Config `json:"config"`
}
func GenerateMCMViewSolana ¶
func GenerateMCMViewSolana( ctx context.Context, inspector *mcmssolanasdk.Inspector, programID solana.PublicKey, seed [32]byte, ) (MCMViewSolana, error)
type TimelockView ¶
type TimelockView struct {
cldcommon.ContractMetaData
MembersByRole map[string][]common.Address `json:"membersByRole"`
}
func GenerateTimelockView ¶
func GenerateTimelockView(tl owner_helpers.RBACTimelock) (TimelockView, error)
type TimelockViewSolana ¶
type TimelockViewSolana struct {
ProgramID solana.PublicKey `json:"programID"`
Seed string `json:"seed"`
Owner solana.PublicKey `json:"owner"`
Proposers []string `json:"proposers"`
Executors []string `json:"executors"`
Cancellers []string `json:"cancellers"`
Bypassers []string `json:"bypassers"`
}
func GenerateTimelockViewSolana ¶
func GenerateTimelockViewSolana( ctx context.Context, inspector *mcmssolanasdk.TimelockInspector, programID solana.PublicKey, seed [32]byte, ) (TimelockViewSolana, error)
Click to show internal directories.
Click to hide internal directories.