-
Notifications
You must be signed in to change notification settings - Fork 1
/
schema.graphql
97 lines (86 loc) · 1.73 KB
/
schema.graphql
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
# GOVERNANCE
type GovernanceStat @entity {
id: ID!
totalProposalsCount: BigInt!
}
type Proposal @entity {
id: ID!
proposalId: BigInt!
proposer: Bytes!
startBlock: BigInt!
endBlock: BigInt!
description: String!
againstVotes: BigInt!
forVotes: BigInt!
abstainVotes: BigInt!
values: [BigInt!]!
signatures: [String!]!
calldatas: [Bytes!]!
targets: [String!]!
blockNumber: BigInt!
blockTimestamp: BigInt!
transaction: Bytes!
}
# STAKING
type ProtocolStat @entity {
id: ID!
totalStakeFTHM: BigInt!
totalVotes: BigInt!
totalStakeEvents: BigInt!
totalUnstakeEvents: BigInt!
stakingAPR: BigInt!
oneDayRewards: BigInt!
}
type Staker @entity {
id: String!
address: Bytes!
totalStaked: BigInt!
accruedRewards: BigInt!
accruedVotes: BigInt!
claimedAmount: BigInt!
stakes: [StakedEvent!]! @derivedFrom(field: "staker")
lockPositions: [LockPosition!]! @derivedFrom(field: "staker")
lockPositionIds: [String!]!
lockPositionCount: BigInt!
cooldown: BigInt!
}
type StakedEvent @entity {
id: ID!
account: Bytes!
amount: BigInt!
streamShares: BigInt!
nVoteToken: BigInt!
lockId: BigInt!
staker: Staker!
blockNumber: BigInt!
blockTimestamp: BigInt!
transaction: Bytes!
}
type UnstakedEvent @entity {
id: ID!
account: Bytes!
amount: BigInt!
lockId: BigInt!
blockNumber: BigInt!
blockTimestamp: BigInt!
transaction: Bytes!
}
type LockPosition @entity {
id: ID!
account: Bytes
streamShares: BigInt!
nVoteToken: BigInt!
amount: BigInt!
lockId: BigInt!
staker: Staker
end: BigInt!
blockNumber: BigInt!
blockTimestamp: BigInt!
transaction: Bytes!
}
type Stream @entity {
id: ID!
time: [BigInt!]!
reward: [BigInt!]!
cooldownPeriod: BigInt!
}