@zing-protocol/zing-sdk 0.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.
Files changed (87) hide show
  1. package/README.md +12 -0
  2. package/package.json +37 -0
  3. package/src/_generated/index.js +6 -0
  4. package/src/_generated/utils/index.ts +181 -0
  5. package/src/_generated/zing_framework/coin_utils.ts +41 -0
  6. package/src/_generated/zing_framework/deps/sui/object.ts +16 -0
  7. package/src/_generated/zing_framework/derived_object_bag.ts +400 -0
  8. package/src/_generated/zing_framework/derived_table.ts +366 -0
  9. package/src/_generated/zing_governance/admin.ts +47 -0
  10. package/src/_generated/zing_governance/deps/sui/object.ts +16 -0
  11. package/src/_generated/zing_governance/treasury.ts +134 -0
  12. package/src/_generated/zing_identity/config.ts +191 -0
  13. package/src/_generated/zing_identity/deps/std/type_name.ts +25 -0
  14. package/src/_generated/zing_identity/deps/sui/object.ts +16 -0
  15. package/src/_generated/zing_identity/deps/sui/object_table.ts +26 -0
  16. package/src/_generated/zing_identity/deps/sui/table.ts +38 -0
  17. package/src/_generated/zing_identity/deps/sui/vec_set.ts +28 -0
  18. package/src/_generated/zing_identity/ecdsa.ts +166 -0
  19. package/src/_generated/zing_identity/identity.ts +661 -0
  20. package/src/_generated/zing_identity/reclaim.ts +803 -0
  21. package/src/_generated/zing_studio/app.ts +855 -0
  22. package/src/_generated/zing_studio/article.ts +598 -0
  23. package/src/_generated/zing_studio/config.ts +475 -0
  24. package/src/_generated/zing_studio/deps/std/type_name.ts +25 -0
  25. package/src/_generated/zing_studio/deps/sui/bag.ts +43 -0
  26. package/src/_generated/zing_studio/deps/sui/balance.ts +20 -0
  27. package/src/_generated/zing_studio/deps/sui/coin.ts +21 -0
  28. package/src/_generated/zing_studio/deps/sui/dynamic_field.ts +272 -0
  29. package/src/_generated/zing_studio/deps/sui/object.ts +16 -0
  30. package/src/_generated/zing_studio/deps/sui/table.ts +38 -0
  31. package/src/_generated/zing_studio/deps/sui/vec_map.ts +39 -0
  32. package/src/_generated/zing_studio/deps/sui/vec_set.ts +28 -0
  33. package/src/_generated/zing_studio/deps/walrus/blob.ts +22 -0
  34. package/src/_generated/zing_studio/deps/walrus/events.ts +124 -0
  35. package/src/_generated/zing_studio/deps/walrus/metadata.ts +137 -0
  36. package/src/_generated/zing_studio/deps/walrus/storage_resource.ts +17 -0
  37. package/src/_generated/zing_studio/deps/zing_framework/derived_object_bag.ts +17 -0
  38. package/src/_generated/zing_studio/deps/zing_framework/derived_table.ts +17 -0
  39. package/src/_generated/zing_studio/donation.ts +18 -0
  40. package/src/_generated/zing_studio/enclave.ts +466 -0
  41. package/src/_generated/zing_studio/nitro_attestation.ts +308 -0
  42. package/src/_generated/zing_studio/referral.ts +447 -0
  43. package/src/_generated/zing_studio/storage.ts +664 -0
  44. package/src/_generated/zing_studio/studio.ts +682 -0
  45. package/src/bcs.ts +139 -0
  46. package/src/client/index.ts +557 -0
  47. package/src/client/types.ts +28 -0
  48. package/src/components/index.ts +3 -0
  49. package/src/components/wallet-provider.tsx +53 -0
  50. package/src/components/walrus-provider.tsx +212 -0
  51. package/src/components/zing-provider.tsx +54 -0
  52. package/src/config/common.ts +82 -0
  53. package/src/config/index.ts +45 -0
  54. package/src/config/mainnet.ts +109 -0
  55. package/src/config/testnet.ts +111 -0
  56. package/src/config/types.ts +69 -0
  57. package/src/const.ts +32 -0
  58. package/src/getters.ts +523 -0
  59. package/src/hooks/index.ts +14 -0
  60. package/src/hooks/useGetStudio.ts +22 -0
  61. package/src/hooks/useGetTierPlan.ts +115 -0
  62. package/src/hooks/useReclaim.ts +165 -0
  63. package/src/hooks/useSignAndExecuteTransaction.ts +57 -0
  64. package/src/hooks/useSignPersonalMessage.ts +28 -0
  65. package/src/hooks/useZingInfiniteQueries.ts +92 -0
  66. package/src/hooks/useZingMutation.ts +66 -0
  67. package/src/hooks/useZingQueries.ts +107 -0
  68. package/src/hooks/useZingQuery.ts +88 -0
  69. package/src/index.ts +15 -0
  70. package/src/lib/utils/colorful-logger.ts +27 -0
  71. package/src/lib/utils/const.ts +25 -0
  72. package/src/lib/utils/helpers.ts +78 -0
  73. package/src/lib/utils/index.ts +5 -0
  74. package/src/lib/utils/init-app-with-shadow.ts +42 -0
  75. package/src/lib/utils/quilt.ts +317 -0
  76. package/src/lib/utils/reclaim.ts +148 -0
  77. package/src/lib/utils/types.ts +14 -0
  78. package/src/mutations/index.ts +3 -0
  79. package/src/mutations/seal.ts +78 -0
  80. package/src/mutations/signer.ts +241 -0
  81. package/src/mutations/walrus.ts +862 -0
  82. package/src/stores/index.ts +3 -0
  83. package/src/stores/walletStore.ts +360 -0
  84. package/src/stores/walrusStore.ts +118 -0
  85. package/src/stores/zkloginStore.ts +53 -0
  86. package/src/types.ts +120 -0
  87. package/tsconfig.json +12 -0
@@ -0,0 +1,17 @@
1
+ /**************************************************************
2
+ * THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *
3
+ **************************************************************/
4
+ import { MoveStruct } from "../../../utils/index.js";
5
+ import * as object from "../sui/object.js";
6
+ import { bcs } from "@mysten/sui/bcs";
7
+
8
+ const $moduleName = "zing_framework::derived_object_bag";
9
+ export const DerivedObjectBag = new MoveStruct({
10
+ name: `${$moduleName}::DerivedObjectBag`,
11
+ fields: {
12
+ /** the ID of this bag */
13
+ id: object.UID,
14
+ /** the number of key-value pairs in the bag */
15
+ size: bcs.u64(),
16
+ },
17
+ });
@@ -0,0 +1,17 @@
1
+ /**************************************************************
2
+ * THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *
3
+ **************************************************************/
4
+ import { MoveStruct } from "../../../utils/index.js";
5
+ import * as object from "../sui/object.js";
6
+ import { bcs } from "@mysten/sui/bcs";
7
+
8
+ const $moduleName = "zing_framework::derived_table";
9
+ export const DerivedTable = new MoveStruct({
10
+ name: `${$moduleName}::DerivedTable`,
11
+ fields: {
12
+ /** the ID of this table */
13
+ id: object.UID,
14
+ /** the number of key-value pairs in the table */
15
+ size: bcs.u64(),
16
+ },
17
+ });
@@ -0,0 +1,18 @@
1
+ /**************************************************************
2
+ * THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *
3
+ **************************************************************/
4
+ import * as bag from "./deps/sui/bag.js";
5
+ import * as object from "./deps/sui/object.js";
6
+ import * as table from "./deps/sui/table.js";
7
+ import { MoveStruct } from "../utils/index.js";
8
+
9
+ const $moduleName = "@local-pkg/zing_studio::donation";
10
+ export const Donation = new MoveStruct({
11
+ name: `${$moduleName}::Donation`,
12
+ fields: {
13
+ id: object.UID,
14
+ donations: table.Table,
15
+ accumulated_donations: table.Table,
16
+ balances: bag.Bag,
17
+ },
18
+ });
@@ -0,0 +1,466 @@
1
+ /**************************************************************
2
+ * THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *
3
+ **************************************************************/
4
+ import * as object from "./deps/sui/object.js";
5
+ import {
6
+ MoveTuple,
7
+ MoveStruct,
8
+ normalizeMoveArguments,
9
+ } from "../utils/index.js";
10
+ import { bcs } from "@mysten/sui/bcs";
11
+ import type { RawTransactionArgument } from "../utils/index.js";
12
+ import type { BcsType } from "@mysten/sui/bcs";
13
+ import type { Transaction } from "@mysten/sui/transactions";
14
+
15
+ const $moduleName = "@local-pkg/zing_studio::enclave";
16
+ export const Pcrs = new MoveTuple({
17
+ name: `${$moduleName}::Pcrs`,
18
+ fields: [bcs.vector(bcs.u8()), bcs.vector(bcs.u8()), bcs.vector(bcs.u8())],
19
+ });
20
+ export const EnclaveConfig = new MoveStruct({
21
+ name: `${$moduleName}::EnclaveConfig`,
22
+ fields: {
23
+ id: object.UID,
24
+ name: bcs.string(),
25
+ pcrs: Pcrs,
26
+ version: bcs.u64(),
27
+ },
28
+ });
29
+ export const Enclave = new MoveStruct({
30
+ name: `${$moduleName}::Enclave`,
31
+ fields: {
32
+ id: object.UID,
33
+ pk: bcs.vector(bcs.u8()),
34
+ config_version: bcs.u64(),
35
+ owner: bcs.Address,
36
+ },
37
+ });
38
+ export function IntentMessage<T extends BcsType<any>>(...typeParameters: [T]) {
39
+ return new MoveStruct({
40
+ name: `${$moduleName}::IntentMessage<${typeParameters[0].name as T["name"]}>`,
41
+ fields: {
42
+ intent: bcs.u8(),
43
+ timestamp_ms: bcs.u64(),
44
+ payload: typeParameters[0],
45
+ },
46
+ });
47
+ }
48
+ export interface CreateEnclaveConfigArguments {
49
+ Cap: RawTransactionArgument<string>;
50
+ name: RawTransactionArgument<string>;
51
+ pcr0: RawTransactionArgument<number[]>;
52
+ pcr1: RawTransactionArgument<number[]>;
53
+ pcr2: RawTransactionArgument<number[]>;
54
+ }
55
+ export interface CreateEnclaveConfigOptions {
56
+ package?: string;
57
+ arguments:
58
+ | CreateEnclaveConfigArguments
59
+ | [
60
+ Cap: RawTransactionArgument<string>,
61
+ name: RawTransactionArgument<string>,
62
+ pcr0: RawTransactionArgument<number[]>,
63
+ pcr1: RawTransactionArgument<number[]>,
64
+ pcr2: RawTransactionArgument<number[]>,
65
+ ];
66
+ }
67
+ export function createEnclaveConfig(options: CreateEnclaveConfigOptions) {
68
+ const packageAddress = options.package ?? "@local-pkg/zing_studio";
69
+ const argumentsTypes = [
70
+ `${packageAddress}::admin::AdminCap`,
71
+ "0x0000000000000000000000000000000000000000000000000000000000000001::string::String",
72
+ "vector<u8>",
73
+ "vector<u8>",
74
+ "vector<u8>",
75
+ ] satisfies string[];
76
+ const parameterNames = ["Cap", "name", "pcr0", "pcr1", "pcr2"];
77
+ return (tx: Transaction) =>
78
+ tx.moveCall({
79
+ package: packageAddress,
80
+ module: "enclave",
81
+ function: "create_enclave_config",
82
+ arguments: normalizeMoveArguments(
83
+ options.arguments,
84
+ argumentsTypes,
85
+ parameterNames,
86
+ ),
87
+ });
88
+ }
89
+ export interface RegisterEnclaveArguments {
90
+ enclaveConfig: RawTransactionArgument<string>;
91
+ document: RawTransactionArgument<string>;
92
+ }
93
+ export interface RegisterEnclaveOptions {
94
+ package?: string;
95
+ arguments:
96
+ | RegisterEnclaveArguments
97
+ | [
98
+ enclaveConfig: RawTransactionArgument<string>,
99
+ document: RawTransactionArgument<string>,
100
+ ];
101
+ }
102
+ export function registerEnclave(options: RegisterEnclaveOptions) {
103
+ const packageAddress = options.package ?? "@local-pkg/zing_studio";
104
+ const argumentsTypes = [
105
+ `${packageAddress}::enclave::EnclaveConfig`,
106
+ "0x0000000000000000000000000000000000000000000000000000000000000002::nitro_attestation::NitroAttestationDocument",
107
+ ] satisfies string[];
108
+ const parameterNames = ["enclaveConfig", "document"];
109
+ return (tx: Transaction) =>
110
+ tx.moveCall({
111
+ package: packageAddress,
112
+ module: "enclave",
113
+ function: "register_enclave",
114
+ arguments: normalizeMoveArguments(
115
+ options.arguments,
116
+ argumentsTypes,
117
+ parameterNames,
118
+ ),
119
+ });
120
+ }
121
+ export interface VerifySignatureArguments<P extends BcsType<any>> {
122
+ enclave: RawTransactionArgument<string>;
123
+ intentScope: RawTransactionArgument<number>;
124
+ timestampMs: RawTransactionArgument<number | bigint>;
125
+ payload: RawTransactionArgument<P>;
126
+ signature: RawTransactionArgument<number[]>;
127
+ }
128
+ export interface VerifySignatureOptions<P extends BcsType<any>> {
129
+ package?: string;
130
+ arguments:
131
+ | VerifySignatureArguments<P>
132
+ | [
133
+ enclave: RawTransactionArgument<string>,
134
+ intentScope: RawTransactionArgument<number>,
135
+ timestampMs: RawTransactionArgument<number | bigint>,
136
+ payload: RawTransactionArgument<P>,
137
+ signature: RawTransactionArgument<number[]>,
138
+ ];
139
+ typeArguments: [string];
140
+ }
141
+ export function verifySignature<P extends BcsType<any>>(
142
+ options: VerifySignatureOptions<P>,
143
+ ) {
144
+ const packageAddress = options.package ?? "@local-pkg/zing_studio";
145
+ const argumentsTypes = [
146
+ `${packageAddress}::enclave::Enclave`,
147
+ "u8",
148
+ "u64",
149
+ `${options.typeArguments[0]}`,
150
+ "vector<u8>",
151
+ ] satisfies string[];
152
+ const parameterNames = [
153
+ "enclave",
154
+ "intentScope",
155
+ "timestampMs",
156
+ "payload",
157
+ "signature",
158
+ ];
159
+ return (tx: Transaction) =>
160
+ tx.moveCall({
161
+ package: packageAddress,
162
+ module: "enclave",
163
+ function: "verify_signature",
164
+ arguments: normalizeMoveArguments(
165
+ options.arguments,
166
+ argumentsTypes,
167
+ parameterNames,
168
+ ),
169
+ typeArguments: options.typeArguments,
170
+ });
171
+ }
172
+ export interface UpdatePcrsWithDocumentArguments {
173
+ config: RawTransactionArgument<string>;
174
+ Cap: RawTransactionArgument<string>;
175
+ document: RawTransactionArgument<string>;
176
+ }
177
+ export interface UpdatePcrsWithDocumentOptions {
178
+ package?: string;
179
+ arguments:
180
+ | UpdatePcrsWithDocumentArguments
181
+ | [
182
+ config: RawTransactionArgument<string>,
183
+ Cap: RawTransactionArgument<string>,
184
+ document: RawTransactionArgument<string>,
185
+ ];
186
+ }
187
+ export function updatePcrsWithDocument(options: UpdatePcrsWithDocumentOptions) {
188
+ const packageAddress = options.package ?? "@local-pkg/zing_studio";
189
+ const argumentsTypes = [
190
+ `${packageAddress}::enclave::EnclaveConfig`,
191
+ `${packageAddress}::admin::AdminCap`,
192
+ "0x0000000000000000000000000000000000000000000000000000000000000002::nitro_attestation::NitroAttestationDocument",
193
+ ] satisfies string[];
194
+ const parameterNames = ["config", "Cap", "document"];
195
+ return (tx: Transaction) =>
196
+ tx.moveCall({
197
+ package: packageAddress,
198
+ module: "enclave",
199
+ function: "update_pcrs_with_document",
200
+ arguments: normalizeMoveArguments(
201
+ options.arguments,
202
+ argumentsTypes,
203
+ parameterNames,
204
+ ),
205
+ });
206
+ }
207
+ export interface UpdatePcrsArguments {
208
+ config: RawTransactionArgument<string>;
209
+ Cap: RawTransactionArgument<string>;
210
+ pcr0: RawTransactionArgument<number[]>;
211
+ pcr1: RawTransactionArgument<number[]>;
212
+ pcr2: RawTransactionArgument<number[]>;
213
+ }
214
+ export interface UpdatePcrsOptions {
215
+ package?: string;
216
+ arguments:
217
+ | UpdatePcrsArguments
218
+ | [
219
+ config: RawTransactionArgument<string>,
220
+ Cap: RawTransactionArgument<string>,
221
+ pcr0: RawTransactionArgument<number[]>,
222
+ pcr1: RawTransactionArgument<number[]>,
223
+ pcr2: RawTransactionArgument<number[]>,
224
+ ];
225
+ }
226
+ export function updatePcrs(options: UpdatePcrsOptions) {
227
+ const packageAddress = options.package ?? "@local-pkg/zing_studio";
228
+ const argumentsTypes = [
229
+ `${packageAddress}::enclave::EnclaveConfig`,
230
+ `${packageAddress}::admin::AdminCap`,
231
+ "vector<u8>",
232
+ "vector<u8>",
233
+ "vector<u8>",
234
+ ] satisfies string[];
235
+ const parameterNames = ["config", "Cap", "pcr0", "pcr1", "pcr2"];
236
+ return (tx: Transaction) =>
237
+ tx.moveCall({
238
+ package: packageAddress,
239
+ module: "enclave",
240
+ function: "update_pcrs",
241
+ arguments: normalizeMoveArguments(
242
+ options.arguments,
243
+ argumentsTypes,
244
+ parameterNames,
245
+ ),
246
+ });
247
+ }
248
+ export interface UpdateNameArguments {
249
+ config: RawTransactionArgument<string>;
250
+ Cap: RawTransactionArgument<string>;
251
+ name: RawTransactionArgument<string>;
252
+ }
253
+ export interface UpdateNameOptions {
254
+ package?: string;
255
+ arguments:
256
+ | UpdateNameArguments
257
+ | [
258
+ config: RawTransactionArgument<string>,
259
+ Cap: RawTransactionArgument<string>,
260
+ name: RawTransactionArgument<string>,
261
+ ];
262
+ }
263
+ export function updateName(options: UpdateNameOptions) {
264
+ const packageAddress = options.package ?? "@local-pkg/zing_studio";
265
+ const argumentsTypes = [
266
+ `${packageAddress}::enclave::EnclaveConfig`,
267
+ `${packageAddress}::admin::AdminCap`,
268
+ "0x0000000000000000000000000000000000000000000000000000000000000001::string::String",
269
+ ] satisfies string[];
270
+ const parameterNames = ["config", "Cap", "name"];
271
+ return (tx: Transaction) =>
272
+ tx.moveCall({
273
+ package: packageAddress,
274
+ module: "enclave",
275
+ function: "update_name",
276
+ arguments: normalizeMoveArguments(
277
+ options.arguments,
278
+ argumentsTypes,
279
+ parameterNames,
280
+ ),
281
+ });
282
+ }
283
+ export interface Pcr0Arguments {
284
+ config: RawTransactionArgument<string>;
285
+ }
286
+ export interface Pcr0Options {
287
+ package?: string;
288
+ arguments: Pcr0Arguments | [config: RawTransactionArgument<string>];
289
+ }
290
+ export function pcr0(options: Pcr0Options) {
291
+ const packageAddress = options.package ?? "@local-pkg/zing_studio";
292
+ const argumentsTypes = [
293
+ `${packageAddress}::enclave::EnclaveConfig`,
294
+ ] satisfies string[];
295
+ const parameterNames = ["config"];
296
+ return (tx: Transaction) =>
297
+ tx.moveCall({
298
+ package: packageAddress,
299
+ module: "enclave",
300
+ function: "pcr0",
301
+ arguments: normalizeMoveArguments(
302
+ options.arguments,
303
+ argumentsTypes,
304
+ parameterNames,
305
+ ),
306
+ });
307
+ }
308
+ export interface Pcr1Arguments {
309
+ config: RawTransactionArgument<string>;
310
+ }
311
+ export interface Pcr1Options {
312
+ package?: string;
313
+ arguments: Pcr1Arguments | [config: RawTransactionArgument<string>];
314
+ }
315
+ export function pcr1(options: Pcr1Options) {
316
+ const packageAddress = options.package ?? "@local-pkg/zing_studio";
317
+ const argumentsTypes = [
318
+ `${packageAddress}::enclave::EnclaveConfig`,
319
+ ] satisfies string[];
320
+ const parameterNames = ["config"];
321
+ return (tx: Transaction) =>
322
+ tx.moveCall({
323
+ package: packageAddress,
324
+ module: "enclave",
325
+ function: "pcr1",
326
+ arguments: normalizeMoveArguments(
327
+ options.arguments,
328
+ argumentsTypes,
329
+ parameterNames,
330
+ ),
331
+ });
332
+ }
333
+ export interface Pcr2Arguments {
334
+ config: RawTransactionArgument<string>;
335
+ }
336
+ export interface Pcr2Options {
337
+ package?: string;
338
+ arguments: Pcr2Arguments | [config: RawTransactionArgument<string>];
339
+ }
340
+ export function pcr2(options: Pcr2Options) {
341
+ const packageAddress = options.package ?? "@local-pkg/zing_studio";
342
+ const argumentsTypes = [
343
+ `${packageAddress}::enclave::EnclaveConfig`,
344
+ ] satisfies string[];
345
+ const parameterNames = ["config"];
346
+ return (tx: Transaction) =>
347
+ tx.moveCall({
348
+ package: packageAddress,
349
+ module: "enclave",
350
+ function: "pcr2",
351
+ arguments: normalizeMoveArguments(
352
+ options.arguments,
353
+ argumentsTypes,
354
+ parameterNames,
355
+ ),
356
+ });
357
+ }
358
+ export interface PkArguments {
359
+ enclave: RawTransactionArgument<string>;
360
+ }
361
+ export interface PkOptions {
362
+ package?: string;
363
+ arguments: PkArguments | [enclave: RawTransactionArgument<string>];
364
+ }
365
+ export function pk(options: PkOptions) {
366
+ const packageAddress = options.package ?? "@local-pkg/zing_studio";
367
+ const argumentsTypes = [
368
+ `${packageAddress}::enclave::Enclave`,
369
+ ] satisfies string[];
370
+ const parameterNames = ["enclave"];
371
+ return (tx: Transaction) =>
372
+ tx.moveCall({
373
+ package: packageAddress,
374
+ module: "enclave",
375
+ function: "pk",
376
+ arguments: normalizeMoveArguments(
377
+ options.arguments,
378
+ argumentsTypes,
379
+ parameterNames,
380
+ ),
381
+ });
382
+ }
383
+ export interface DestroyOldEnclaveArguments {
384
+ e: RawTransactionArgument<string>;
385
+ config: RawTransactionArgument<string>;
386
+ }
387
+ export interface DestroyOldEnclaveOptions {
388
+ package?: string;
389
+ arguments:
390
+ | DestroyOldEnclaveArguments
391
+ | [
392
+ e: RawTransactionArgument<string>,
393
+ config: RawTransactionArgument<string>,
394
+ ];
395
+ }
396
+ export function destroyOldEnclave(options: DestroyOldEnclaveOptions) {
397
+ const packageAddress = options.package ?? "@local-pkg/zing_studio";
398
+ const argumentsTypes = [
399
+ `${packageAddress}::enclave::Enclave`,
400
+ `${packageAddress}::enclave::EnclaveConfig`,
401
+ ] satisfies string[];
402
+ const parameterNames = ["e", "config"];
403
+ return (tx: Transaction) =>
404
+ tx.moveCall({
405
+ package: packageAddress,
406
+ module: "enclave",
407
+ function: "destroy_old_enclave",
408
+ arguments: normalizeMoveArguments(
409
+ options.arguments,
410
+ argumentsTypes,
411
+ parameterNames,
412
+ ),
413
+ });
414
+ }
415
+ export interface DeployOldEnclaveByOwnerArguments {
416
+ e: RawTransactionArgument<string>;
417
+ }
418
+ export interface DeployOldEnclaveByOwnerOptions {
419
+ package?: string;
420
+ arguments:
421
+ | DeployOldEnclaveByOwnerArguments
422
+ | [e: RawTransactionArgument<string>];
423
+ }
424
+ export function deployOldEnclaveByOwner(
425
+ options: DeployOldEnclaveByOwnerOptions,
426
+ ) {
427
+ const packageAddress = options.package ?? "@local-pkg/zing_studio";
428
+ const argumentsTypes = [
429
+ `${packageAddress}::enclave::Enclave`,
430
+ ] satisfies string[];
431
+ const parameterNames = ["e"];
432
+ return (tx: Transaction) =>
433
+ tx.moveCall({
434
+ package: packageAddress,
435
+ module: "enclave",
436
+ function: "deploy_old_enclave_by_owner",
437
+ arguments: normalizeMoveArguments(
438
+ options.arguments,
439
+ argumentsTypes,
440
+ parameterNames,
441
+ ),
442
+ });
443
+ }
444
+ export interface PkToAddressArguments {
445
+ pk: RawTransactionArgument<number[]>;
446
+ }
447
+ export interface PkToAddressOptions {
448
+ package?: string;
449
+ arguments: PkToAddressArguments | [pk: RawTransactionArgument<number[]>];
450
+ }
451
+ export function pkToAddress(options: PkToAddressOptions) {
452
+ const packageAddress = options.package ?? "@local-pkg/zing_studio";
453
+ const argumentsTypes = ["vector<u8>"] satisfies string[];
454
+ const parameterNames = ["pk"];
455
+ return (tx: Transaction) =>
456
+ tx.moveCall({
457
+ package: packageAddress,
458
+ module: "enclave",
459
+ function: "pk_to_address",
460
+ arguments: normalizeMoveArguments(
461
+ options.arguments,
462
+ argumentsTypes,
463
+ parameterNames,
464
+ ),
465
+ });
466
+ }