-
Notifications
You must be signed in to change notification settings - Fork 12
/
events.go
70 lines (63 loc) · 2.22 KB
/
events.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
package staking
import (
"github.com/ethereum/go-ethereum/accounts/abi"
"github.com/functionx/fx-core/v4/x/evm/types"
)
var (
ApproveSharesEvent = abi.NewEvent(
ApproveSharesEventName,
ApproveSharesEventName,
false,
abi.Arguments{
abi.Argument{Name: "owner", Type: types.TypeAddress, Indexed: true},
abi.Argument{Name: "spender", Type: types.TypeAddress, Indexed: true},
abi.Argument{Name: "validator", Type: types.TypeString, Indexed: false},
abi.Argument{Name: "shares", Type: types.TypeUint256, Indexed: false},
},
)
DelegateEvent = abi.NewEvent(
DelegateEventName,
DelegateEventName,
false,
abi.Arguments{
abi.Argument{Name: "delegator", Type: types.TypeAddress, Indexed: true},
abi.Argument{Name: "validator", Type: types.TypeString, Indexed: false},
abi.Argument{Name: "amount", Type: types.TypeUint256, Indexed: false},
abi.Argument{Name: "shares", Type: types.TypeUint256, Indexed: false},
},
)
TransferSharesEvent = abi.NewEvent(
TransferSharesEventName,
TransferSharesEventName,
false,
abi.Arguments{
abi.Argument{Name: "from", Type: types.TypeAddress, Indexed: true},
abi.Argument{Name: "to", Type: types.TypeAddress, Indexed: true},
abi.Argument{Name: "validator", Type: types.TypeString, Indexed: false},
abi.Argument{Name: "shares", Type: types.TypeUint256, Indexed: false},
abi.Argument{Name: "token", Type: types.TypeUint256, Indexed: false},
},
)
UndelegateEvent = abi.NewEvent(
UndelegateEventName,
UndelegateEventName,
false,
abi.Arguments{
abi.Argument{Name: "sender", Type: types.TypeAddress, Indexed: true},
abi.Argument{Name: "validator", Type: types.TypeString, Indexed: false},
abi.Argument{Name: "shares", Type: types.TypeUint256, Indexed: false},
abi.Argument{Name: "amount", Type: types.TypeUint256, Indexed: false},
abi.Argument{Name: "completionTime", Type: types.TypeUint256, Indexed: false},
},
)
WithdrawEvent = abi.NewEvent(
WithdrawEventName,
WithdrawEventName,
false,
abi.Arguments{
abi.Argument{Name: "sender", Type: types.TypeAddress, Indexed: true},
abi.Argument{Name: "validator", Type: types.TypeString, Indexed: false},
abi.Argument{Name: "reward", Type: types.TypeUint256, Indexed: false},
},
)
)