@qubic.org/contracts 0.2.7 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +41 -0
- package/README.md +15 -18
- package/dist/__generated__/computorcontrolledfund.d.ts +1 -1
- package/dist/__generated__/computorcontrolledfund.d.ts.map +1 -1
- package/dist/__generated__/computorcontrolledfund.js +8 -8
- package/dist/__generated__/computorcontrolledfund.js.map +1 -1
- package/dist/__generated__/escrow.d.ts +1 -1
- package/dist/__generated__/escrow.d.ts.map +1 -1
- package/dist/__generated__/escrow.js +3 -3
- package/dist/__generated__/escrow.js.map +1 -1
- package/dist/__generated__/generalquorumproposal.d.ts +1 -1
- package/dist/__generated__/generalquorumproposal.d.ts.map +1 -1
- package/dist/__generated__/generalquorumproposal.js +6 -6
- package/dist/__generated__/generalquorumproposal.js.map +1 -1
- package/dist/__generated__/ggwp.d.ts +265 -0
- package/dist/__generated__/ggwp.d.ts.map +1 -0
- package/dist/__generated__/ggwp.js +825 -0
- package/dist/__generated__/ggwp.js.map +1 -0
- package/dist/__generated__/index.d.ts +1 -0
- package/dist/__generated__/index.d.ts.map +1 -1
- package/dist/__generated__/index.js +1 -0
- package/dist/__generated__/index.js.map +1 -1
- package/dist/__generated__/msvault.d.ts +1 -1
- package/dist/__generated__/msvault.d.ts.map +1 -1
- package/dist/__generated__/msvault.js +19 -19
- package/dist/__generated__/msvault.js.map +1 -1
- package/dist/__generated__/multisignvault.d.ts +25 -25
- package/dist/__generated__/multisignvault.d.ts.map +1 -1
- package/dist/__generated__/multisignvault.js +25 -25
- package/dist/__generated__/multisignvault.js.map +1 -1
- package/dist/__generated__/nostromo.d.ts +1 -1
- package/dist/__generated__/nostromo.d.ts.map +1 -1
- package/dist/__generated__/nostromo.js +15 -15
- package/dist/__generated__/nostromo.js.map +1 -1
- package/dist/__generated__/pulse.d.ts +1 -1
- package/dist/__generated__/pulse.d.ts.map +1 -1
- package/dist/__generated__/pulse.js +26 -26
- package/dist/__generated__/pulse.js.map +1 -1
- package/dist/__generated__/qbay.d.ts +1 -1
- package/dist/__generated__/qbay.d.ts.map +1 -1
- package/dist/__generated__/qbay.js +23 -23
- package/dist/__generated__/qbay.js.map +1 -1
- package/dist/__generated__/qbond.d.ts +1 -1
- package/dist/__generated__/qbond.d.ts.map +1 -1
- package/dist/__generated__/qbond.js +14 -14
- package/dist/__generated__/qbond.js.map +1 -1
- package/dist/__generated__/qdraw.d.ts +1 -1
- package/dist/__generated__/qdraw.d.ts.map +1 -1
- package/dist/__generated__/qdraw.js.map +1 -1
- package/dist/__generated__/qduel.d.ts +1 -1
- package/dist/__generated__/qduel.d.ts.map +1 -1
- package/dist/__generated__/qduel.js +11 -11
- package/dist/__generated__/qduel.js.map +1 -1
- package/dist/__generated__/qearn.d.ts +1 -1
- package/dist/__generated__/qearn.d.ts.map +1 -1
- package/dist/__generated__/qearn.js +10 -10
- package/dist/__generated__/qearn.js.map +1 -1
- package/dist/__generated__/qip.d.ts +18 -1
- package/dist/__generated__/qip.d.ts.map +1 -1
- package/dist/__generated__/qip.js +64 -3
- package/dist/__generated__/qip.js.map +1 -1
- package/dist/__generated__/qraffle.d.ts +1 -1
- package/dist/__generated__/qraffle.d.ts.map +1 -1
- package/dist/__generated__/qraffle.js +12 -12
- package/dist/__generated__/qraffle.js.map +1 -1
- package/dist/__generated__/qreservepool.d.ts +1 -1
- package/dist/__generated__/qreservepool.d.ts.map +1 -1
- package/dist/__generated__/qreservepool.js +5 -5
- package/dist/__generated__/qreservepool.js.map +1 -1
- package/dist/__generated__/qrwa.d.ts +1 -1
- package/dist/__generated__/qrwa.d.ts.map +1 -1
- package/dist/__generated__/qrwa.js +18 -18
- package/dist/__generated__/qrwa.js.map +1 -1
- package/dist/__generated__/qswap.d.ts +3 -1
- package/dist/__generated__/qswap.d.ts.map +1 -1
- package/dist/__generated__/qswap.js +30 -18
- package/dist/__generated__/qswap.js.map +1 -1
- package/dist/__generated__/qthirtyfour.d.ts +1 -1
- package/dist/__generated__/qthirtyfour.d.ts.map +1 -1
- package/dist/__generated__/qthirtyfour.js +19 -19
- package/dist/__generated__/qthirtyfour.js.map +1 -1
- package/dist/__generated__/qubicicoportal.d.ts +4 -4
- package/dist/__generated__/qubicicoportal.d.ts.map +1 -1
- package/dist/__generated__/qubicicoportal.js +4 -4
- package/dist/__generated__/qubicicoportal.js.map +1 -1
- package/dist/__generated__/quottery.d.ts +1 -1
- package/dist/__generated__/quottery.d.ts.map +1 -1
- package/dist/__generated__/quottery.js +14 -14
- package/dist/__generated__/quottery.js.map +1 -1
- package/dist/__generated__/qusino.d.ts +1 -1
- package/dist/__generated__/qusino.d.ts.map +1 -1
- package/dist/__generated__/qusino.js +13 -13
- package/dist/__generated__/qusino.js.map +1 -1
- package/dist/__generated__/qutil.d.ts +1 -1
- package/dist/__generated__/qutil.d.ts.map +1 -1
- package/dist/__generated__/qutil.js +22 -22
- package/dist/__generated__/qutil.js.map +1 -1
- package/dist/__generated__/qvault.d.ts +14 -2
- package/dist/__generated__/qvault.d.ts.map +1 -1
- package/dist/__generated__/qvault.js +70 -32
- package/dist/__generated__/qvault.js.map +1 -1
- package/dist/__generated__/qx.d.ts +1 -1
- package/dist/__generated__/qx.d.ts.map +1 -1
- package/dist/__generated__/qx.js +12 -12
- package/dist/__generated__/qx.js.map +1 -1
- package/dist/__generated__/random.d.ts +24 -1
- package/dist/__generated__/random.d.ts.map +1 -1
- package/dist/__generated__/random.js +68 -0
- package/dist/__generated__/random.js.map +1 -1
- package/dist/__generated__/randomlottery.d.ts +1 -1
- package/dist/__generated__/randomlottery.d.ts.map +1 -1
- package/dist/__generated__/randomlottery.js +12 -12
- package/dist/__generated__/randomlottery.js.map +1 -1
- package/dist/__generated__/vottunbridge.d.ts +1 -1
- package/dist/__generated__/vottunbridge.d.ts.map +1 -1
- package/dist/__generated__/vottunbridge.js +13 -13
- package/dist/__generated__/vottunbridge.js.map +1 -1
- package/dist/call-contract.d.ts.map +1 -1
- package/dist/call-contract.js +6 -1
- package/dist/call-contract.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +8 -7
- package/src/__generated__/computorcontrolledfund.ts +1066 -0
- package/src/__generated__/escrow.ts +529 -0
- package/src/__generated__/generalquorumproposal.ts +691 -0
- package/src/__generated__/ggwp.ts +1241 -0
- package/src/__generated__/index.ts +28 -0
- package/src/__generated__/msvault.ts +1716 -0
- package/src/__generated__/multisignvault.ts +1511 -0
- package/src/__generated__/mylastmatch.ts +12 -0
- package/src/__generated__/nostromo.ts +1551 -0
- package/src/__generated__/pulse.ts +1512 -0
- package/src/__generated__/qbay.ts +2097 -0
- package/src/__generated__/qbond.ts +1016 -0
- package/src/__generated__/qdraw.ts +188 -0
- package/src/__generated__/qduel.ts +827 -0
- package/src/__generated__/qearn.ts +696 -0
- package/src/__generated__/qip.ts +501 -0
- package/src/__generated__/qraffle.ts +1162 -0
- package/src/__generated__/qreservepool.ts +281 -0
- package/src/__generated__/qrwa.ts +1491 -0
- package/src/__generated__/qswap.ts +1336 -0
- package/src/__generated__/qthirtyfour.ts +1131 -0
- package/src/__generated__/qubicicoportal.ts +386 -0
- package/src/__generated__/quottery.ts +1519 -0
- package/src/__generated__/qusino.ts +799 -0
- package/src/__generated__/qutil.ts +1506 -0
- package/src/__generated__/qvault.ts +2911 -0
- package/src/__generated__/qx.ts +861 -0
- package/src/__generated__/random.ts +145 -0
- package/src/__generated__/randomlottery.ts +653 -0
- package/src/__generated__/supplywatcher.ts +12 -0
- package/src/__generated__/vottunbridge.ts +1162 -0
- package/src/__tests__/contracts.test.ts +933 -0
- package/src/call-contract.ts +87 -0
- package/src/index.ts +9 -0
- package/dist/result.d.ts +0 -12
- package/dist/result.d.ts.map +0 -1
- package/dist/result.js +0 -7
- package/dist/result.js.map +0 -1
|
@@ -0,0 +1,529 @@
|
|
|
1
|
+
// @generated — do not edit by hand. Run `bun run generate` to regenerate.
|
|
2
|
+
import type { BinaryField, FieldValue, NamedStruct } from '@qubic.org/registry'
|
|
3
|
+
import { buildPayload, decodePayload } from '@qubic.org/registry'
|
|
4
|
+
import type { QubicRpcError } from '@qubic.org/rpc'
|
|
5
|
+
import type { Result } from '@qubic.org/types'
|
|
6
|
+
import { type ContractCall, type ContractCallOptions, type SmartContractCaller, callContractFunction } from '../call-contract.js'
|
|
7
|
+
|
|
8
|
+
export const ESCROW_CONTRACT_INDEX = 27
|
|
9
|
+
|
|
10
|
+
export interface EscrowAssetWithAmountStruct {
|
|
11
|
+
issuer: string
|
|
12
|
+
name: bigint
|
|
13
|
+
amount: bigint
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export interface EscrowAssetStruct {
|
|
17
|
+
issuer: string
|
|
18
|
+
assetName: bigint
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export interface EscrowDealStruct {
|
|
22
|
+
index: bigint
|
|
23
|
+
acceptorId: string
|
|
24
|
+
offeredQU: bigint
|
|
25
|
+
offeredAssetsNumber: bigint
|
|
26
|
+
offeredAssets: number[]
|
|
27
|
+
requestedQU: bigint
|
|
28
|
+
requestedAssetsNumber: bigint
|
|
29
|
+
requestedAssets: number[]
|
|
30
|
+
creationEpoch: number
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
const STRUCTS: Record<string, NamedStruct> = {
|
|
34
|
+
'AssetWithAmount': {
|
|
35
|
+
name: 'AssetWithAmount',
|
|
36
|
+
byteLength: 48,
|
|
37
|
+
fields: [
|
|
38
|
+
{
|
|
39
|
+
name: 'issuer',
|
|
40
|
+
type: 'id',
|
|
41
|
+
offset: 0,
|
|
42
|
+
byteLength: 32,
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
name: 'name',
|
|
46
|
+
type: 'uint64',
|
|
47
|
+
offset: 32,
|
|
48
|
+
byteLength: 8,
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
name: 'amount',
|
|
52
|
+
type: 'uint64',
|
|
53
|
+
offset: 40,
|
|
54
|
+
byteLength: 8,
|
|
55
|
+
},
|
|
56
|
+
],
|
|
57
|
+
},
|
|
58
|
+
'Asset': {
|
|
59
|
+
name: 'Asset',
|
|
60
|
+
byteLength: 40,
|
|
61
|
+
fields: [
|
|
62
|
+
{
|
|
63
|
+
name: 'issuer',
|
|
64
|
+
type: 'id',
|
|
65
|
+
offset: 0,
|
|
66
|
+
byteLength: 32,
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
name: 'assetName',
|
|
70
|
+
type: 'uint64',
|
|
71
|
+
offset: 32,
|
|
72
|
+
byteLength: 8,
|
|
73
|
+
},
|
|
74
|
+
],
|
|
75
|
+
},
|
|
76
|
+
'Deal': {
|
|
77
|
+
name: 'Deal',
|
|
78
|
+
byteLength: 458,
|
|
79
|
+
fields: [
|
|
80
|
+
{
|
|
81
|
+
name: 'index',
|
|
82
|
+
type: 'sint64',
|
|
83
|
+
offset: 0,
|
|
84
|
+
byteLength: 8,
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
name: 'acceptorId',
|
|
88
|
+
type: 'id',
|
|
89
|
+
offset: 8,
|
|
90
|
+
byteLength: 32,
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
name: 'offeredQU',
|
|
94
|
+
type: 'uint64',
|
|
95
|
+
offset: 40,
|
|
96
|
+
byteLength: 8,
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
name: 'offeredAssetsNumber',
|
|
100
|
+
type: 'uint64',
|
|
101
|
+
offset: 48,
|
|
102
|
+
byteLength: 8,
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
name: 'offeredAssets',
|
|
106
|
+
type: 'array',
|
|
107
|
+
offset: 56,
|
|
108
|
+
byteLength: 192,
|
|
109
|
+
arrayLength: 4,
|
|
110
|
+
arrayItemByteLength: 48,
|
|
111
|
+
arrayItemStructRef: 'AssetWithAmount',
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
name: 'requestedQU',
|
|
115
|
+
type: 'uint64',
|
|
116
|
+
offset: 248,
|
|
117
|
+
byteLength: 8,
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
name: 'requestedAssetsNumber',
|
|
121
|
+
type: 'uint64',
|
|
122
|
+
offset: 256,
|
|
123
|
+
byteLength: 8,
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
name: 'requestedAssets',
|
|
127
|
+
type: 'array',
|
|
128
|
+
offset: 264,
|
|
129
|
+
byteLength: 192,
|
|
130
|
+
arrayLength: 4,
|
|
131
|
+
arrayItemByteLength: 48,
|
|
132
|
+
arrayItemStructRef: 'AssetWithAmount',
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
name: 'creationEpoch',
|
|
136
|
+
type: 'uint16',
|
|
137
|
+
offset: 456,
|
|
138
|
+
byteLength: 2,
|
|
139
|
+
},
|
|
140
|
+
],
|
|
141
|
+
},
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
export const ESCROW_CREATE_DEAL_INPUT_TYPE = 1
|
|
145
|
+
|
|
146
|
+
export interface EscrowCreateDealInput {
|
|
147
|
+
acceptorId: string
|
|
148
|
+
offeredQU: bigint
|
|
149
|
+
offeredAssetsNumber: bigint
|
|
150
|
+
offeredAssets: number[]
|
|
151
|
+
requestedQU: bigint
|
|
152
|
+
requestedAssetsNumber: bigint
|
|
153
|
+
requestedAssets: number[]
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
const ESCROW_CREATE_DEAL_INPUT_FIELDS: BinaryField[] = [
|
|
157
|
+
{
|
|
158
|
+
name: 'acceptorId',
|
|
159
|
+
type: 'id',
|
|
160
|
+
offset: 0,
|
|
161
|
+
byteLength: 32,
|
|
162
|
+
},
|
|
163
|
+
{
|
|
164
|
+
name: 'offeredQU',
|
|
165
|
+
type: 'uint64',
|
|
166
|
+
offset: 32,
|
|
167
|
+
byteLength: 8,
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
name: 'offeredAssetsNumber',
|
|
171
|
+
type: 'uint64',
|
|
172
|
+
offset: 40,
|
|
173
|
+
byteLength: 8,
|
|
174
|
+
},
|
|
175
|
+
{
|
|
176
|
+
name: 'offeredAssets',
|
|
177
|
+
type: 'array',
|
|
178
|
+
offset: 48,
|
|
179
|
+
byteLength: 192,
|
|
180
|
+
arrayLength: 4,
|
|
181
|
+
arrayItemByteLength: 48,
|
|
182
|
+
arrayItemStructRef: 'AssetWithAmount',
|
|
183
|
+
},
|
|
184
|
+
{
|
|
185
|
+
name: 'requestedQU',
|
|
186
|
+
type: 'uint64',
|
|
187
|
+
offset: 240,
|
|
188
|
+
byteLength: 8,
|
|
189
|
+
},
|
|
190
|
+
{
|
|
191
|
+
name: 'requestedAssetsNumber',
|
|
192
|
+
type: 'uint64',
|
|
193
|
+
offset: 248,
|
|
194
|
+
byteLength: 8,
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
name: 'requestedAssets',
|
|
198
|
+
type: 'array',
|
|
199
|
+
offset: 256,
|
|
200
|
+
byteLength: 192,
|
|
201
|
+
arrayLength: 4,
|
|
202
|
+
arrayItemByteLength: 48,
|
|
203
|
+
arrayItemStructRef: 'AssetWithAmount',
|
|
204
|
+
},
|
|
205
|
+
]
|
|
206
|
+
|
|
207
|
+
export function buildEscrowCreateDealInput(
|
|
208
|
+
input: EscrowCreateDealInput,
|
|
209
|
+
identityToPublicKey: (identity: string) => Uint8Array,
|
|
210
|
+
): ContractCall {
|
|
211
|
+
return { contractIndex: ESCROW_CONTRACT_INDEX, inputType: ESCROW_CREATE_DEAL_INPUT_TYPE, payload: buildPayload(ESCROW_CREATE_DEAL_INPUT_FIELDS, STRUCTS, input as unknown as Record<string, FieldValue | Uint8Array>, identityToPublicKey) }
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
export const ESCROW_ACCEPT_DEAL_INPUT_TYPE = 2
|
|
215
|
+
|
|
216
|
+
export interface EscrowAcceptDealInput {
|
|
217
|
+
index: bigint
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
const ESCROW_ACCEPT_DEAL_INPUT_FIELDS: BinaryField[] = [
|
|
221
|
+
{
|
|
222
|
+
name: 'index',
|
|
223
|
+
type: 'sint64',
|
|
224
|
+
offset: 0,
|
|
225
|
+
byteLength: 8,
|
|
226
|
+
},
|
|
227
|
+
]
|
|
228
|
+
|
|
229
|
+
export function buildEscrowAcceptDealInput(
|
|
230
|
+
input: EscrowAcceptDealInput,
|
|
231
|
+
): ContractCall {
|
|
232
|
+
return { contractIndex: ESCROW_CONTRACT_INDEX, inputType: ESCROW_ACCEPT_DEAL_INPUT_TYPE, payload: buildPayload(ESCROW_ACCEPT_DEAL_INPUT_FIELDS, STRUCTS, input as unknown as Record<string, FieldValue | Uint8Array>, (_: string) => new Uint8Array(32)) }
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
export const ESCROW_MAKE_DEAL_PUBLIC_INPUT_TYPE = 3
|
|
236
|
+
|
|
237
|
+
export interface EscrowMakeDealPublicInput {
|
|
238
|
+
index: bigint
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
const ESCROW_MAKE_DEAL_PUBLIC_INPUT_FIELDS: BinaryField[] = [
|
|
242
|
+
{
|
|
243
|
+
name: 'index',
|
|
244
|
+
type: 'sint64',
|
|
245
|
+
offset: 0,
|
|
246
|
+
byteLength: 8,
|
|
247
|
+
},
|
|
248
|
+
]
|
|
249
|
+
|
|
250
|
+
export function buildEscrowMakeDealPublicInput(
|
|
251
|
+
input: EscrowMakeDealPublicInput,
|
|
252
|
+
): ContractCall {
|
|
253
|
+
return { contractIndex: ESCROW_CONTRACT_INDEX, inputType: ESCROW_MAKE_DEAL_PUBLIC_INPUT_TYPE, payload: buildPayload(ESCROW_MAKE_DEAL_PUBLIC_INPUT_FIELDS, STRUCTS, input as unknown as Record<string, FieldValue | Uint8Array>, (_: string) => new Uint8Array(32)) }
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
export const ESCROW_CANCEL_DEAL_INPUT_TYPE = 4
|
|
257
|
+
|
|
258
|
+
export interface EscrowCancelDealInput {
|
|
259
|
+
index: bigint
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
const ESCROW_CANCEL_DEAL_INPUT_FIELDS: BinaryField[] = [
|
|
263
|
+
{
|
|
264
|
+
name: 'index',
|
|
265
|
+
type: 'sint64',
|
|
266
|
+
offset: 0,
|
|
267
|
+
byteLength: 8,
|
|
268
|
+
},
|
|
269
|
+
]
|
|
270
|
+
|
|
271
|
+
export function buildEscrowCancelDealInput(
|
|
272
|
+
input: EscrowCancelDealInput,
|
|
273
|
+
): ContractCall {
|
|
274
|
+
return { contractIndex: ESCROW_CONTRACT_INDEX, inputType: ESCROW_CANCEL_DEAL_INPUT_TYPE, payload: buildPayload(ESCROW_CANCEL_DEAL_INPUT_FIELDS, STRUCTS, input as unknown as Record<string, FieldValue | Uint8Array>, (_: string) => new Uint8Array(32)) }
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
export const ESCROW_TRANSFER_SHARE_MANAGEMENT_RIGHTS_INPUT_TYPE = 5
|
|
278
|
+
|
|
279
|
+
export interface EscrowTransferShareManagementRightsInput {
|
|
280
|
+
asset: EscrowAssetStruct
|
|
281
|
+
amount: bigint
|
|
282
|
+
newContractIndex: number
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
const ESCROW_TRANSFER_SHARE_MANAGEMENT_RIGHTS_INPUT_FIELDS: BinaryField[] = [
|
|
286
|
+
{
|
|
287
|
+
name: 'asset',
|
|
288
|
+
type: 'struct',
|
|
289
|
+
offset: 0,
|
|
290
|
+
byteLength: 40,
|
|
291
|
+
structRef: 'Asset',
|
|
292
|
+
},
|
|
293
|
+
{
|
|
294
|
+
name: 'amount',
|
|
295
|
+
type: 'sint64',
|
|
296
|
+
offset: 40,
|
|
297
|
+
byteLength: 8,
|
|
298
|
+
},
|
|
299
|
+
{
|
|
300
|
+
name: 'newContractIndex',
|
|
301
|
+
type: 'uint32',
|
|
302
|
+
offset: 48,
|
|
303
|
+
byteLength: 4,
|
|
304
|
+
},
|
|
305
|
+
]
|
|
306
|
+
|
|
307
|
+
export function buildEscrowTransferShareManagementRightsInput(
|
|
308
|
+
input: EscrowTransferShareManagementRightsInput,
|
|
309
|
+
): ContractCall {
|
|
310
|
+
return { contractIndex: ESCROW_CONTRACT_INDEX, inputType: ESCROW_TRANSFER_SHARE_MANAGEMENT_RIGHTS_INPUT_TYPE, payload: buildPayload(ESCROW_TRANSFER_SHARE_MANAGEMENT_RIGHTS_INPUT_FIELDS, STRUCTS, input as unknown as Record<string, FieldValue | Uint8Array>, (_: string) => new Uint8Array(32)) }
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
export interface EscrowTransferShareManagementRightsOutput {
|
|
314
|
+
transferredShares: bigint
|
|
315
|
+
}
|
|
316
|
+
|
|
317
|
+
const ESCROW_TRANSFER_SHARE_MANAGEMENT_RIGHTS_OUTPUT_FIELDS: BinaryField[] = [
|
|
318
|
+
{
|
|
319
|
+
name: 'transferredShares',
|
|
320
|
+
type: 'sint64',
|
|
321
|
+
offset: 0,
|
|
322
|
+
byteLength: 8,
|
|
323
|
+
},
|
|
324
|
+
]
|
|
325
|
+
|
|
326
|
+
export function decodeEscrowTransferShareManagementRightsOutput(
|
|
327
|
+
data: Uint8Array,
|
|
328
|
+
): EscrowTransferShareManagementRightsOutput {
|
|
329
|
+
return decodePayload(data, ESCROW_TRANSFER_SHARE_MANAGEMENT_RIGHTS_OUTPUT_FIELDS, STRUCTS, (_: Uint8Array) => { throw new Error('unreachable') }) as unknown as EscrowTransferShareManagementRightsOutput
|
|
330
|
+
}
|
|
331
|
+
|
|
332
|
+
export const ESCROW_GET_DEALS_INPUT_TYPE = 1
|
|
333
|
+
export const ESCROW_GET_DEALS_INPUT_SIZE = 48
|
|
334
|
+
|
|
335
|
+
export interface EscrowGetDealsInput {
|
|
336
|
+
owner: string
|
|
337
|
+
proposedDealsOffset: bigint
|
|
338
|
+
publicDealsOffset: bigint
|
|
339
|
+
}
|
|
340
|
+
|
|
341
|
+
const ESCROW_GET_DEALS_INPUT_FIELDS: BinaryField[] = [
|
|
342
|
+
{
|
|
343
|
+
name: 'owner',
|
|
344
|
+
type: 'id',
|
|
345
|
+
offset: 0,
|
|
346
|
+
byteLength: 32,
|
|
347
|
+
},
|
|
348
|
+
{
|
|
349
|
+
name: 'proposedDealsOffset',
|
|
350
|
+
type: 'sint64',
|
|
351
|
+
offset: 32,
|
|
352
|
+
byteLength: 8,
|
|
353
|
+
},
|
|
354
|
+
{
|
|
355
|
+
name: 'publicDealsOffset',
|
|
356
|
+
type: 'sint64',
|
|
357
|
+
offset: 40,
|
|
358
|
+
byteLength: 8,
|
|
359
|
+
},
|
|
360
|
+
]
|
|
361
|
+
|
|
362
|
+
export function buildEscrowGetDealsInput(
|
|
363
|
+
input: EscrowGetDealsInput,
|
|
364
|
+
identityToPublicKey: (identity: string) => Uint8Array,
|
|
365
|
+
): Uint8Array {
|
|
366
|
+
return buildPayload(ESCROW_GET_DEALS_INPUT_FIELDS, STRUCTS, input as unknown as Record<string, FieldValue | Uint8Array>, identityToPublicKey)
|
|
367
|
+
}
|
|
368
|
+
|
|
369
|
+
export interface EscrowGetDealsOutput {
|
|
370
|
+
ownedDealsAmount: bigint
|
|
371
|
+
proposedDealsAmount: bigint
|
|
372
|
+
publicDealsAmount: bigint
|
|
373
|
+
ownedDeals: number[]
|
|
374
|
+
proposedDeals: number[]
|
|
375
|
+
publicDeals: number[]
|
|
376
|
+
}
|
|
377
|
+
|
|
378
|
+
const ESCROW_GET_DEALS_OUTPUT_FIELDS: BinaryField[] = [
|
|
379
|
+
{
|
|
380
|
+
name: 'ownedDealsAmount',
|
|
381
|
+
type: 'uint64',
|
|
382
|
+
offset: 0,
|
|
383
|
+
byteLength: 8,
|
|
384
|
+
},
|
|
385
|
+
{
|
|
386
|
+
name: 'proposedDealsAmount',
|
|
387
|
+
type: 'uint64',
|
|
388
|
+
offset: 8,
|
|
389
|
+
byteLength: 8,
|
|
390
|
+
},
|
|
391
|
+
{
|
|
392
|
+
name: 'publicDealsAmount',
|
|
393
|
+
type: 'uint64',
|
|
394
|
+
offset: 16,
|
|
395
|
+
byteLength: 8,
|
|
396
|
+
},
|
|
397
|
+
{
|
|
398
|
+
name: 'ownedDeals',
|
|
399
|
+
type: 'array',
|
|
400
|
+
offset: 24,
|
|
401
|
+
byteLength: 3664,
|
|
402
|
+
arrayLength: 8,
|
|
403
|
+
arrayItemByteLength: 458,
|
|
404
|
+
arrayItemStructRef: 'Deal',
|
|
405
|
+
},
|
|
406
|
+
{
|
|
407
|
+
name: 'proposedDeals',
|
|
408
|
+
type: 'array',
|
|
409
|
+
offset: 3688,
|
|
410
|
+
byteLength: 14656,
|
|
411
|
+
arrayLength: 32,
|
|
412
|
+
arrayItemByteLength: 458,
|
|
413
|
+
arrayItemStructRef: 'Deal',
|
|
414
|
+
},
|
|
415
|
+
{
|
|
416
|
+
name: 'publicDeals',
|
|
417
|
+
type: 'array',
|
|
418
|
+
offset: 18344,
|
|
419
|
+
byteLength: 29312,
|
|
420
|
+
arrayLength: 64,
|
|
421
|
+
arrayItemByteLength: 458,
|
|
422
|
+
arrayItemStructRef: 'Deal',
|
|
423
|
+
},
|
|
424
|
+
]
|
|
425
|
+
|
|
426
|
+
export function decodeEscrowGetDealsOutput(
|
|
427
|
+
data: Uint8Array,
|
|
428
|
+
): EscrowGetDealsOutput {
|
|
429
|
+
return decodePayload(data, ESCROW_GET_DEALS_OUTPUT_FIELDS, STRUCTS, (_: Uint8Array) => { throw new Error('unreachable') }) as unknown as EscrowGetDealsOutput
|
|
430
|
+
}
|
|
431
|
+
|
|
432
|
+
export async function escrowGetDeals(
|
|
433
|
+
live: SmartContractCaller,
|
|
434
|
+
input: EscrowGetDealsInput,
|
|
435
|
+
options?: ContractCallOptions,
|
|
436
|
+
): Promise<Result<EscrowGetDealsOutput, QubicRpcError>> {
|
|
437
|
+
return callContractFunction({
|
|
438
|
+
live,
|
|
439
|
+
contractIndex: ESCROW_CONTRACT_INDEX,
|
|
440
|
+
inputType: ESCROW_GET_DEALS_INPUT_TYPE,
|
|
441
|
+
inputSize: ESCROW_GET_DEALS_INPUT_SIZE,
|
|
442
|
+
inputFields: ESCROW_GET_DEALS_INPUT_FIELDS,
|
|
443
|
+
outputFields: ESCROW_GET_DEALS_OUTPUT_FIELDS,
|
|
444
|
+
structs: STRUCTS,
|
|
445
|
+
input: (input as unknown as Record<string, unknown>),
|
|
446
|
+
...options,
|
|
447
|
+
})
|
|
448
|
+
}
|
|
449
|
+
|
|
450
|
+
export const ESCROW_GET_FREE_ASSET_AMOUNT_INPUT_TYPE = 2
|
|
451
|
+
export const ESCROW_GET_FREE_ASSET_AMOUNT_INPUT_SIZE = 72
|
|
452
|
+
|
|
453
|
+
export interface EscrowGetFreeAssetAmountInput {
|
|
454
|
+
owner: string
|
|
455
|
+
asset: EscrowAssetStruct
|
|
456
|
+
}
|
|
457
|
+
|
|
458
|
+
const ESCROW_GET_FREE_ASSET_AMOUNT_INPUT_FIELDS: BinaryField[] = [
|
|
459
|
+
{
|
|
460
|
+
name: 'owner',
|
|
461
|
+
type: 'id',
|
|
462
|
+
offset: 0,
|
|
463
|
+
byteLength: 32,
|
|
464
|
+
},
|
|
465
|
+
{
|
|
466
|
+
name: 'asset',
|
|
467
|
+
type: 'struct',
|
|
468
|
+
offset: 32,
|
|
469
|
+
byteLength: 40,
|
|
470
|
+
structRef: 'Asset',
|
|
471
|
+
},
|
|
472
|
+
]
|
|
473
|
+
|
|
474
|
+
export function buildEscrowGetFreeAssetAmountInput(
|
|
475
|
+
input: EscrowGetFreeAssetAmountInput,
|
|
476
|
+
identityToPublicKey: (identity: string) => Uint8Array,
|
|
477
|
+
): Uint8Array {
|
|
478
|
+
return buildPayload(ESCROW_GET_FREE_ASSET_AMOUNT_INPUT_FIELDS, STRUCTS, input as unknown as Record<string, FieldValue | Uint8Array>, identityToPublicKey)
|
|
479
|
+
}
|
|
480
|
+
|
|
481
|
+
export interface EscrowGetFreeAssetAmountOutput {
|
|
482
|
+
freeAmount: bigint
|
|
483
|
+
}
|
|
484
|
+
|
|
485
|
+
const ESCROW_GET_FREE_ASSET_AMOUNT_OUTPUT_FIELDS: BinaryField[] = [
|
|
486
|
+
{
|
|
487
|
+
name: 'freeAmount',
|
|
488
|
+
type: 'sint64',
|
|
489
|
+
offset: 0,
|
|
490
|
+
byteLength: 8,
|
|
491
|
+
},
|
|
492
|
+
]
|
|
493
|
+
|
|
494
|
+
export function decodeEscrowGetFreeAssetAmountOutput(
|
|
495
|
+
data: Uint8Array,
|
|
496
|
+
): EscrowGetFreeAssetAmountOutput {
|
|
497
|
+
return decodePayload(data, ESCROW_GET_FREE_ASSET_AMOUNT_OUTPUT_FIELDS, STRUCTS, (_: Uint8Array) => { throw new Error('unreachable') }) as unknown as EscrowGetFreeAssetAmountOutput
|
|
498
|
+
}
|
|
499
|
+
|
|
500
|
+
export async function escrowGetFreeAssetAmount(
|
|
501
|
+
live: SmartContractCaller,
|
|
502
|
+
input: EscrowGetFreeAssetAmountInput,
|
|
503
|
+
options?: ContractCallOptions,
|
|
504
|
+
): Promise<Result<EscrowGetFreeAssetAmountOutput, QubicRpcError>> {
|
|
505
|
+
return callContractFunction({
|
|
506
|
+
live,
|
|
507
|
+
contractIndex: ESCROW_CONTRACT_INDEX,
|
|
508
|
+
inputType: ESCROW_GET_FREE_ASSET_AMOUNT_INPUT_TYPE,
|
|
509
|
+
inputSize: ESCROW_GET_FREE_ASSET_AMOUNT_INPUT_SIZE,
|
|
510
|
+
inputFields: ESCROW_GET_FREE_ASSET_AMOUNT_INPUT_FIELDS,
|
|
511
|
+
outputFields: ESCROW_GET_FREE_ASSET_AMOUNT_OUTPUT_FIELDS,
|
|
512
|
+
structs: STRUCTS,
|
|
513
|
+
input: (input as unknown as Record<string, unknown>),
|
|
514
|
+
...options,
|
|
515
|
+
})
|
|
516
|
+
}
|
|
517
|
+
|
|
518
|
+
export const escrow = {
|
|
519
|
+
contractIndex: ESCROW_CONTRACT_INDEX,
|
|
520
|
+
GetDeals: escrowGetDeals,
|
|
521
|
+
GetFreeAssetAmount: escrowGetFreeAssetAmount,
|
|
522
|
+
buildCreateDealInput: buildEscrowCreateDealInput,
|
|
523
|
+
buildAcceptDealInput: buildEscrowAcceptDealInput,
|
|
524
|
+
buildMakeDealPublicInput: buildEscrowMakeDealPublicInput,
|
|
525
|
+
buildCancelDealInput: buildEscrowCancelDealInput,
|
|
526
|
+
buildTransferShareManagementRightsInput: buildEscrowTransferShareManagementRightsInput,
|
|
527
|
+
decodeTransferShareManagementRightsOutput: decodeEscrowTransferShareManagementRightsOutput,
|
|
528
|
+
}
|
|
529
|
+
|