mirror of
https://github.com/grassrootseconomics/cic-custodial.git
synced 2024-11-22 14:16:47 +01:00
48 lines
1.4 KiB
Go
48 lines
1.4 KiB
Go
package custodial
|
|
|
|
import (
|
|
"crypto/ecdsa"
|
|
"math/big"
|
|
"time"
|
|
|
|
"github.com/bsm/redislock"
|
|
"github.com/celo-org/celo-blockchain/common"
|
|
"github.com/go-redis/redis/v8"
|
|
"github.com/grassrootseconomics/celoutils"
|
|
"github.com/grassrootseconomics/cic-custodial/internal/keystore"
|
|
"github.com/grassrootseconomics/cic-custodial/internal/nonce"
|
|
"github.com/grassrootseconomics/cic-custodial/internal/pub"
|
|
"github.com/grassrootseconomics/cic-custodial/internal/store"
|
|
"github.com/grassrootseconomics/cic-custodial/internal/tasker"
|
|
"github.com/grassrootseconomics/w3-celo-patch"
|
|
)
|
|
|
|
type (
|
|
SystemContainer struct {
|
|
Abis map[string]*w3.Func
|
|
AccountIndexContract common.Address
|
|
GasFaucetContract common.Address
|
|
GasRefillThreshold *big.Int
|
|
GasRefillValue *big.Int
|
|
GiftableGasValue *big.Int
|
|
GiftableToken common.Address
|
|
GiftableTokenValue *big.Int
|
|
LockTimeout time.Duration
|
|
PrivateKey *ecdsa.PrivateKey
|
|
PublicKey string
|
|
TokenDecimals int
|
|
TokenTransferGasLimit uint64
|
|
}
|
|
Custodial struct {
|
|
CeloProvider *celoutils.Provider
|
|
Keystore keystore.Keystore
|
|
LockProvider *redislock.Client
|
|
Noncestore nonce.Noncestore
|
|
PgStore store.Store
|
|
Pub *pub.Pub
|
|
RedisClient *redis.Client
|
|
SystemContainer *SystemContainer
|
|
TaskerClient *tasker.TaskerClient
|
|
}
|
|
)
|