-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathschema.graphql
89 lines (81 loc) · 1.62 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
type Account @entity {
"Account address"
id: ID!
wallet: String!
balance: BigInt!
historicalBalances: [HistoricalBalance!] @derivedFrom(field: "account")
}
type HistoricalBalance @entity {
id: ID!
account: Account!
balance: BigInt!
timestamp: BigInt!
}
# v1 only for now
type Collection @entity {
id: String!
# id used for indexing of collections; it has nothing to the with the actual collection
id_indexing: BigInt! @unique
name: String
max: BigInt!
issuer: String
symbol: String!
rmrkVersion: String
metadata: String
block: BigInt!
# data???
# properties: IProperties
}
# type IProperties @entity {
# key: String!
# value: IAttribute!
# }
#
# type IAttribute @entity {
# _mutation: Mutation
# type: String!
# value: Any!
# }
#
# type Mutation @entity {
# allowed: Boolean!
# with: With
# }
#
# enum OP_TYPES {
# TYPE1
# TYPE2
# }
#
# type With @entity {
# op_type: OP_TYPES!
# condition: String
# }
#
# TODO make Nftv2 and Collectionv2 because they have different formats
type Nft @entity {
# TODO recompile
id: String! @unique
# id used for indexing of nfts; it has nothing to the with the actual nft
id_indexing: BigInt! @unique
collection: String!
symbol: String
transferable: BigInt!
rmrkVersion: String
sn: String
metadata: String
block: BigInt!
}
# type Call @jsonField {
# call: String!
# value: String!
# caller: String!
# }
#
# type Rmrk @jsonField {
# caller: String!
# interaction_type: String!
# rmrkVersion: String!
# remark: String!
# extra_ex: [Call]
# }