types

package
v0.1.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 1, 2025 License: MIT Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DeregisterKeeperRequest

type DeregisterKeeperRequest struct {
	KeeperID int64 `json:"keeper_id"`
}

type DeregisterKeeperResponse

type DeregisterKeeperResponse struct {
	DeregisteredTx string `json:"deregistered_tx"`
}

type Job

type Job struct {
	JobID             string
	ArgType           string
	Arguments         map[string]interface{}
	ChainID           string
	ContractAddress   string
	JobCostPrediction float64
	Stake             float64
	Status            string
	TargetFunction    string
	TimeFrame         int64
	TimeInterval      int64
	UserID            string
	CreatedAt         time.Time
	MaxRetries        int
	CurrentRetries    int
	LastExecuted      time.Time
	NextExecutionTime time.Time
	Error             string
}

type JobData

type JobData struct {
	JobID             int64     `json:"job_id"`
	JobType           int       `json:"jobType"`
	UserID            int64     `json:"user_id"`
	UserAddress       string    `json:"user_address"`
	ChainID           int       `json:"chain_id"`
	TimeFrame         int64     `json:"time_frame"`
	TimeInterval      int       `json:"time_interval"`
	ContractAddress   string    `json:"contract_address"`
	TargetFunction    string    `json:"target_function"`
	ArgType           int       `json:"arg_type"`
	Arguments         []string  `json:"arguments"`
	Status            bool      `json:"status"`
	JobCostPrediction int       `json:"job_cost_prediction"`
	ScriptFunction    string    `json:"script_function"`
	ScriptIpfsUrl     string    `json:"script_ipfs_url"`
	TimeCheck         time.Time `json:"time_check"`
	CreatedAt         time.Time `json:"created_at"`
	LastExecutedAt    time.Time `json:"last_executed_at"`
	UserBalance       float64   `json:"user_balance"`
}

type JobMessage

type JobMessage struct {
	Job       *Job   `json:"job"`
	Timestamp string `json:"timestamp"`
}

type KeeperData

type KeeperData struct {
	KeeperID          int64     `json:"keeper_id"`
	WithdrawalAddress string    `json:"withdrawal_address"`
	Stakes            []float64 `json:"stakes"`
	Strategies        []string  `json:"strategies"`
	Verified          bool      `json:"verified"`
	CurrentQuorumNo   int       `json:"current_quorum_no"`
	RegisteredTx      string    `json:"registered_tx"`
	Status            bool      `json:"status"`
	BlsSigningKeys    []string  `json:"bls_signing_keys"`
	ConnectionAddress string    `json:"connection_address"`
}

type NodeConfig

type NodeConfig struct {
	// Keeper settings
	KeeperName               string `yaml:"keeper_name"`
	KeeperAddress            string `yaml:"keeper_address"`
	EcdsaPrivateKeyStorePath string `yaml:"keeper_ecdsa_keystore_path"`
	EcdsaPassphrase          string `yaml:"keeper_ecdsa_passphrase"`
	BlsPrivateKeyStorePath   string `yaml:"keeper_bls_keystore_path"`
	BlsPassphrase            string `yaml:"keeper_bls_passphrase"`

	// Network settings
	EthRpcUrl string `yaml:"ethrpcurl"`
	EthWsUrl  string `yaml:"ethwsurl"`

	// Port Settings
	MetricsPort int `yaml:"metrics_port"`
	P2pPort     int `yaml:"p2p_port"`

	// Connection settings
	P2pPeerId         string `yaml:"keeper_p2p_peer_id"`
	ConnectionAddress string `yaml:"keeper_connection_address"`

	// Core settings
	AvsName string `yaml:"avs_name"`
	Version string `yaml:"version"`

	// Contract addresses
	AvsDirectoryAddress           string `yaml:"avs_directory_address"`
	DelegationManagerAddress      string `yaml:"delegation_manager_address"`
	StrategyManagerAddress        string `yaml:"strategy_manager_address"`
	RegistryCoordinatorAddress    string `yaml:"registry_coordinator_address"`
	ServiceManagerAddress         string `yaml:"service_manager_address"`
	OperatorStateRetrieverAddress string `yaml:"operator_state_retriever"`

	// Metrics settings
	EnableMetrics bool `yaml:"enable_metrics"`
}

type PeerInfo

type PeerInfo struct {
	ID        string   `json:"id"`
	Addresses []string `json:"addresses"`
}

type QuorumData

type QuorumData struct {
	QuorumID               int64    `json:"quorum_id"`
	QuorumNo               int      `json:"quorum_no"`
	QuorumCreationBlock    int64    `json:"quorum_creation_block"`
	QuorumTerminationBlock int64    `json:"quorum_termination_block"`
	QuorumTxHash           string   `json:"quorum_tx_hash"`
	Keepers                []string `json:"keepers"`
	QuorumStakeTotal       int64    `json:"quorum_stake_total"`
	TaskIDs                []int64  `json:"task_ids"`
	QuorumStatus           bool     `json:"quorum_status"`
}

type QuorumDataResponse

type QuorumDataResponse struct {
	QuorumID         int64 `json:"quorum_id"`
	QuorumNo         int   `json:"quorum_no"`
	QuorumStatus     bool  `json:"quorum_status"`
	QuorumStakeTotal int64 `json:"quorum_stake_total"`
	QuorumStrength   int   `json:"quorum_strength"`
}

type RegisterKeeperRequest

type RegisterKeeperRequest struct {
	KeeperAddress              string                                             `json:"keeper_address"`
	PubkeyRegistrationParams   regcoord.IBLSApkRegistryPubkeyRegistrationParams   `json:"pubkey_registration_params"`
	SignatureWithSaltAndExpiry regcoord.ISignatureUtilsSignatureWithSaltAndExpiry `json:"signature_with_salt_and_expiry"`
}

type RegisterKeeperResponse

type RegisterKeeperResponse struct {
	KeeperID     int64  `json:"keeper_id"`
	RegisteredTx string `json:"registered_tx"`
	PeerID       string `json:"peer_id"`
}

type TaskData

type TaskData struct {
	TaskID              int64   `json:"task_id"`
	JobID               int64   `json:"job_id"`
	TaskNo              int     `json:"task_no"`
	QuorumID            int64   `json:"quorum_id"`
	QuorumNumber        int     `json:"quorum_number"`
	QuorumThreshold     float64 `json:"quorum_threshold"`
	TaskCreatedBlock    int64   `json:"task_created_block"`
	TaskCreatedTxHash   string  `json:"task_created_tx_hash"`
	TaskRespondedBlock  int64   `json:"task_responded_block"`
	TaskRespondedTxHash string  `json:"task_responded_tx_hash"`
	TaskHash            string  `json:"task_hash"`
	TaskResponseHash    string  `json:"task_response_hash"`
	QuorumKeeperHash    string  `json:"quorum_keeper_hash"`
	TaskFee             float64 `json:"task_fee"`
}

type TaskHistory

type TaskHistory struct {
	TaskID           int64    `json:"task_id"`
	QuorumID         int64    `json:"quorum_id"`
	Keepers          []string `json:"keepers"`
	Responses        []string `json:"responses"`
	ConsensusMethod  string   `json:"consensus_method"`
	ValidationStatus bool     `json:"validation_status"`
	TxHash           string   `json:"tx_hash"`
}

type UserData

type UserData struct {
	UserID         int64     `json:"user_id"`
	UserAddress    string    `json:"user_address"`
	JobIDs         []int64   `json:"job_ids"`
	StakeAmount    *big.Int  `json:"stake_amount"`
	AccountBalance float64   `json:"account_balance"`
	CreatedAt      time.Time `json:"created_at"`
	LastUpdatedAt  time.Time `json:"last_updated_at"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL
JackTT - Gopher 🇻🇳