@mysten/sui 1.0.2 → 1.0.4

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 (43) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/cjs/bcs/effects.d.ts +12 -12
  3. package/dist/cjs/bcs/index.d.ts +13 -13
  4. package/dist/cjs/transactions/Transaction.d.ts +1 -1
  5. package/dist/cjs/transactions/data/internal.d.ts +10 -10
  6. package/dist/cjs/transactions/data/internal.js +1 -1
  7. package/dist/cjs/transactions/data/internal.js.map +2 -2
  8. package/dist/cjs/transactions/data/v1.d.ts +26 -26
  9. package/dist/cjs/transactions/data/v1.js +49 -9
  10. package/dist/cjs/transactions/data/v1.js.map +2 -2
  11. package/dist/cjs/transactions/data/v2.d.ts +3 -3
  12. package/dist/cjs/transactions/data/v2.js +1 -1
  13. package/dist/cjs/transactions/data/v2.js.map +2 -2
  14. package/dist/cjs/transactions/index.d.ts +1 -0
  15. package/dist/cjs/transactions/index.js.map +1 -1
  16. package/dist/cjs/version.d.ts +1 -1
  17. package/dist/cjs/version.js +1 -1
  18. package/dist/cjs/version.js.map +1 -1
  19. package/dist/esm/bcs/effects.d.ts +12 -12
  20. package/dist/esm/bcs/index.d.ts +13 -13
  21. package/dist/esm/transactions/Transaction.d.ts +1 -1
  22. package/dist/esm/transactions/data/internal.d.ts +10 -10
  23. package/dist/esm/transactions/data/internal.js +1 -1
  24. package/dist/esm/transactions/data/internal.js.map +2 -2
  25. package/dist/esm/transactions/data/v1.d.ts +26 -26
  26. package/dist/esm/transactions/data/v1.js +51 -10
  27. package/dist/esm/transactions/data/v1.js.map +2 -2
  28. package/dist/esm/transactions/data/v2.d.ts +3 -3
  29. package/dist/esm/transactions/data/v2.js +1 -1
  30. package/dist/esm/transactions/data/v2.js.map +2 -2
  31. package/dist/esm/transactions/index.d.ts +1 -0
  32. package/dist/esm/transactions/index.js.map +1 -1
  33. package/dist/esm/version.d.ts +1 -1
  34. package/dist/esm/version.js +1 -1
  35. package/dist/esm/version.js.map +1 -1
  36. package/dist/tsconfig.esm.tsbuildinfo +1 -1
  37. package/dist/tsconfig.tsbuildinfo +1 -1
  38. package/package.json +2 -2
  39. package/src/transactions/data/internal.ts +1 -1
  40. package/src/transactions/data/v1.ts +54 -11
  41. package/src/transactions/data/v2.ts +1 -1
  42. package/src/transactions/index.ts +6 -0
  43. package/src/version.ts +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # @mysten/sui.js
2
2
 
3
+ ## 1.0.4
4
+
5
+ ### Patch Changes
6
+
7
+ - f1e828f557: Export types needed for defining Transaction plugins
8
+ - Updated dependencies [f1e828f557]
9
+ - @mysten/bcs@1.0.1
10
+
11
+ ## 1.0.3
12
+
13
+ ### Patch Changes
14
+
15
+ - 1f20580841: Fix parsing of object refs from v1 json
16
+
3
17
  ## 1.0.2
4
18
 
5
19
  ### Patch Changes
@@ -30,8 +30,8 @@ export declare const TransactionEffects: import("@mysten/bcs").BcsType<import("@
30
30
  };
31
31
  function: number;
32
32
  instruction: number;
33
- functionName: string | null | undefined;
34
- } | null | undefined;
33
+ functionName: string | null;
34
+ } | null;
35
35
  MoveAbort: [{
36
36
  module: {
37
37
  address: string;
@@ -39,7 +39,7 @@ export declare const TransactionEffects: import("@mysten/bcs").BcsType<import("@
39
39
  };
40
40
  function: number;
41
41
  instruction: number;
42
- functionName: string | null | undefined;
42
+ functionName: string | null;
43
43
  }, string];
44
44
  VMVerificationOrDeserializationError: true;
45
45
  VMInvariantViolation: true;
@@ -122,7 +122,7 @@ export declare const TransactionEffects: import("@mysten/bcs").BcsType<import("@
122
122
  SharedObjectOperationNotAllowed: true;
123
123
  InputObjectDeleted: true;
124
124
  }, "PackageUpgradeError" | "SharedObjectOperationNotAllowed" | "CommandArgumentError" | "TypeArgumentError" | "InsufficientGas" | "InvalidGasObject" | "InvariantViolation" | "FeatureNotYetSupported" | "MoveObjectTooBig" | "MovePackageTooBig" | "CircularObjectOwnership" | "InsufficientCoinBalance" | "CoinBalanceOverflow" | "PublishErrorNonZeroAddress" | "SuiMoveVerificationError" | "MovePrimitiveRuntimeError" | "MoveAbort" | "VMVerificationOrDeserializationError" | "VMInvariantViolation" | "FunctionNotFound" | "ArityMismatch" | "TypeArityMismatch" | "NonEntryFunctionInvoked" | "UnusedValueWithoutDrop" | "InvalidPublicFunctionReturnType" | "InvalidTransferObject" | "EffectsTooLarge" | "PublishUpgradeMissingDependency" | "PublishUpgradeDependencyDowngrade" | "WrittenObjectsTooLarge" | "CertificateDenied" | "SuiMoveVerificationTimedout" | "InputObjectDeleted">;
125
- command: string | null | undefined;
125
+ command: string | null;
126
126
  };
127
127
  }, "Success" | "Failed">;
128
128
  executedEpoch: string;
@@ -202,7 +202,7 @@ export declare const TransactionEffects: import("@mysten/bcs").BcsType<import("@
202
202
  };
203
203
  Immutable: true;
204
204
  }, "AddressOwner" | "ObjectOwner" | "Shared" | "Immutable">];
205
- eventsDigest: string | null | undefined;
205
+ eventsDigest: string | null;
206
206
  dependencies: string[];
207
207
  };
208
208
  V2: {
@@ -236,8 +236,8 @@ export declare const TransactionEffects: import("@mysten/bcs").BcsType<import("@
236
236
  };
237
237
  function: number;
238
238
  instruction: number;
239
- functionName: string | null | undefined;
240
- } | null | undefined;
239
+ functionName: string | null;
240
+ } | null;
241
241
  MoveAbort: [{
242
242
  module: {
243
243
  address: string;
@@ -245,7 +245,7 @@ export declare const TransactionEffects: import("@mysten/bcs").BcsType<import("@
245
245
  };
246
246
  function: number;
247
247
  instruction: number;
248
- functionName: string | null | undefined;
248
+ functionName: string | null;
249
249
  }, string];
250
250
  VMVerificationOrDeserializationError: true;
251
251
  VMInvariantViolation: true;
@@ -328,7 +328,7 @@ export declare const TransactionEffects: import("@mysten/bcs").BcsType<import("@
328
328
  SharedObjectOperationNotAllowed: true;
329
329
  InputObjectDeleted: true;
330
330
  }, "PackageUpgradeError" | "SharedObjectOperationNotAllowed" | "CommandArgumentError" | "TypeArgumentError" | "InsufficientGas" | "InvalidGasObject" | "InvariantViolation" | "FeatureNotYetSupported" | "MoveObjectTooBig" | "MovePackageTooBig" | "CircularObjectOwnership" | "InsufficientCoinBalance" | "CoinBalanceOverflow" | "PublishErrorNonZeroAddress" | "SuiMoveVerificationError" | "MovePrimitiveRuntimeError" | "MoveAbort" | "VMVerificationOrDeserializationError" | "VMInvariantViolation" | "FunctionNotFound" | "ArityMismatch" | "TypeArityMismatch" | "NonEntryFunctionInvoked" | "UnusedValueWithoutDrop" | "InvalidPublicFunctionReturnType" | "InvalidTransferObject" | "EffectsTooLarge" | "PublishUpgradeMissingDependency" | "PublishUpgradeDependencyDowngrade" | "WrittenObjectsTooLarge" | "CertificateDenied" | "SuiMoveVerificationTimedout" | "InputObjectDeleted">;
331
- command: string | null | undefined;
331
+ command: string | null;
332
332
  };
333
333
  }, "Success" | "Failed">;
334
334
  executedEpoch: string;
@@ -339,8 +339,8 @@ export declare const TransactionEffects: import("@mysten/bcs").BcsType<import("@
339
339
  nonRefundableStorageFee: string;
340
340
  };
341
341
  transactionDigest: string;
342
- gasObjectIndex: number | null | undefined;
343
- eventsDigest: string | null | undefined;
342
+ gasObjectIndex: number | null;
343
+ eventsDigest: string | null;
344
344
  dependencies: string[];
345
345
  lamportVersion: string;
346
346
  changedObjects: [string, {
@@ -378,7 +378,7 @@ export declare const TransactionEffects: import("@mysten/bcs").BcsType<import("@
378
378
  MutateDeleted: string;
379
379
  ReadDeleted: string;
380
380
  }, "ReadOnlyRoot" | "MutateDeleted" | "ReadDeleted">][];
381
- auxDataDigest: string | null | undefined;
381
+ auxDataDigest: string | null;
382
382
  };
383
383
  }, "V1" | "V2">, import("@mysten/bcs").EnumInputShape<{
384
384
  V1: {
@@ -2290,8 +2290,8 @@ declare const suiBcs: {
2290
2290
  };
2291
2291
  function: number;
2292
2292
  instruction: number;
2293
- functionName: string | null | undefined;
2294
- } | null | undefined;
2293
+ functionName: string | null;
2294
+ } | null;
2295
2295
  MoveAbort: [{
2296
2296
  module: {
2297
2297
  address: string;
@@ -2299,7 +2299,7 @@ declare const suiBcs: {
2299
2299
  };
2300
2300
  function: number;
2301
2301
  instruction: number;
2302
- functionName: string | null | undefined;
2302
+ functionName: string | null;
2303
2303
  }, string];
2304
2304
  VMVerificationOrDeserializationError: true;
2305
2305
  VMInvariantViolation: true;
@@ -2382,7 +2382,7 @@ declare const suiBcs: {
2382
2382
  SharedObjectOperationNotAllowed: true;
2383
2383
  InputObjectDeleted: true;
2384
2384
  }, "PackageUpgradeError" | "SharedObjectOperationNotAllowed" | "CommandArgumentError" | "TypeArgumentError" | "InsufficientGas" | "InvalidGasObject" | "InvariantViolation" | "FeatureNotYetSupported" | "MoveObjectTooBig" | "MovePackageTooBig" | "CircularObjectOwnership" | "InsufficientCoinBalance" | "CoinBalanceOverflow" | "PublishErrorNonZeroAddress" | "SuiMoveVerificationError" | "MovePrimitiveRuntimeError" | "MoveAbort" | "VMVerificationOrDeserializationError" | "VMInvariantViolation" | "FunctionNotFound" | "ArityMismatch" | "TypeArityMismatch" | "NonEntryFunctionInvoked" | "UnusedValueWithoutDrop" | "InvalidPublicFunctionReturnType" | "InvalidTransferObject" | "EffectsTooLarge" | "PublishUpgradeMissingDependency" | "PublishUpgradeDependencyDowngrade" | "WrittenObjectsTooLarge" | "CertificateDenied" | "SuiMoveVerificationTimedout" | "InputObjectDeleted">;
2385
- command: string | null | undefined;
2385
+ command: string | null;
2386
2386
  };
2387
2387
  }, "Success" | "Failed">;
2388
2388
  executedEpoch: string;
@@ -2462,7 +2462,7 @@ declare const suiBcs: {
2462
2462
  };
2463
2463
  Immutable: true;
2464
2464
  }, "AddressOwner" | "ObjectOwner" | "Shared" | "Immutable">];
2465
- eventsDigest: string | null | undefined;
2465
+ eventsDigest: string | null;
2466
2466
  dependencies: string[];
2467
2467
  };
2468
2468
  V2: {
@@ -2496,8 +2496,8 @@ declare const suiBcs: {
2496
2496
  };
2497
2497
  function: number;
2498
2498
  instruction: number;
2499
- functionName: string | null | undefined;
2500
- } | null | undefined;
2499
+ functionName: string | null;
2500
+ } | null;
2501
2501
  MoveAbort: [{
2502
2502
  module: {
2503
2503
  address: string;
@@ -2505,7 +2505,7 @@ declare const suiBcs: {
2505
2505
  };
2506
2506
  function: number;
2507
2507
  instruction: number;
2508
- functionName: string | null | undefined;
2508
+ functionName: string | null;
2509
2509
  }, string];
2510
2510
  VMVerificationOrDeserializationError: true;
2511
2511
  VMInvariantViolation: true;
@@ -2588,7 +2588,7 @@ declare const suiBcs: {
2588
2588
  SharedObjectOperationNotAllowed: true;
2589
2589
  InputObjectDeleted: true;
2590
2590
  }, "PackageUpgradeError" | "SharedObjectOperationNotAllowed" | "CommandArgumentError" | "TypeArgumentError" | "InsufficientGas" | "InvalidGasObject" | "InvariantViolation" | "FeatureNotYetSupported" | "MoveObjectTooBig" | "MovePackageTooBig" | "CircularObjectOwnership" | "InsufficientCoinBalance" | "CoinBalanceOverflow" | "PublishErrorNonZeroAddress" | "SuiMoveVerificationError" | "MovePrimitiveRuntimeError" | "MoveAbort" | "VMVerificationOrDeserializationError" | "VMInvariantViolation" | "FunctionNotFound" | "ArityMismatch" | "TypeArityMismatch" | "NonEntryFunctionInvoked" | "UnusedValueWithoutDrop" | "InvalidPublicFunctionReturnType" | "InvalidTransferObject" | "EffectsTooLarge" | "PublishUpgradeMissingDependency" | "PublishUpgradeDependencyDowngrade" | "WrittenObjectsTooLarge" | "CertificateDenied" | "SuiMoveVerificationTimedout" | "InputObjectDeleted">;
2591
- command: string | null | undefined;
2591
+ command: string | null;
2592
2592
  };
2593
2593
  }, "Success" | "Failed">;
2594
2594
  executedEpoch: string;
@@ -2599,8 +2599,8 @@ declare const suiBcs: {
2599
2599
  nonRefundableStorageFee: string;
2600
2600
  };
2601
2601
  transactionDigest: string;
2602
- gasObjectIndex: number | null | undefined;
2603
- eventsDigest: string | null | undefined;
2602
+ gasObjectIndex: number | null;
2603
+ eventsDigest: string | null;
2604
2604
  dependencies: string[];
2605
2605
  lamportVersion: string;
2606
2606
  changedObjects: [string, {
@@ -2638,7 +2638,7 @@ declare const suiBcs: {
2638
2638
  MutateDeleted: string;
2639
2639
  ReadDeleted: string;
2640
2640
  }, "ReadOnlyRoot" | "MutateDeleted" | "ReadDeleted">][];
2641
- auxDataDigest: string | null | undefined;
2641
+ auxDataDigest: string | null;
2642
2642
  };
2643
2643
  }, "V1" | "V2">, import("@mysten/bcs").EnumInputShape<{
2644
2644
  V1: {
@@ -3066,7 +3066,7 @@ declare const suiBcs: {
3066
3066
  }> | undefined): import("@mysten/bcs").BcsType<T_1[], Iterable<Input> & {
3067
3067
  length: number;
3068
3068
  }>;
3069
- option<T_2, Input_1>(type: import("@mysten/bcs").BcsType<T_2, Input_1>): import("@mysten/bcs").BcsType<T_2 | null | undefined, Input_1 | null | undefined>;
3069
+ option<T_2, Input_1>(type: import("@mysten/bcs").BcsType<T_2, Input_1>): import("@mysten/bcs").BcsType<T_2 | null, Input_1 | null | undefined>;
3070
3070
  vector<T_3, Input_2>(type: import("@mysten/bcs").BcsType<T_3, Input_2>, options?: import("@mysten/bcs").BcsTypeOptions<T_3[], Iterable<Input_2> & {
3071
3071
  length: number;
3072
3072
  }> | undefined): import("@mysten/bcs").BcsType<T_3[], Iterable<Input_2> & {
@@ -308,7 +308,7 @@ export declare class Transaction {
308
308
  SharedObject: {
309
309
  objectId: string;
310
310
  initialSharedVersion: string | number;
311
- mutable: boolean | null;
311
+ mutable: boolean;
312
312
  };
313
313
  Receiving: {
314
314
  objectId: string;
@@ -1193,11 +1193,11 @@ export declare const ObjectArg: EnumSchema<{
1193
1193
  SharedObject: import("valibot").ObjectSchema<{
1194
1194
  objectId: import("valibot").SchemaWithTransform<import("valibot").StringSchema<string>, string>;
1195
1195
  initialSharedVersion: import("valibot").UnionSchema<(import("valibot").StringSchema<string> | import("valibot").NumberSchema<number>)[], string | number>;
1196
- mutable: import("valibot").NullableSchema<import("valibot").BooleanSchema<boolean>, undefined, boolean | null>;
1196
+ mutable: import("valibot").BooleanSchema<boolean>;
1197
1197
  }, undefined, {
1198
1198
  objectId: string;
1199
1199
  initialSharedVersion: string | number;
1200
- mutable: boolean | null;
1200
+ mutable: boolean;
1201
1201
  }>;
1202
1202
  Receiving: import("valibot").ObjectSchema<{
1203
1203
  objectId: import("valibot").SchemaWithTransform<import("valibot").StringSchema<string>, string>;
@@ -1223,11 +1223,11 @@ declare const CallArg: EnumSchema<{
1223
1223
  SharedObject: import("valibot").ObjectSchema<{
1224
1224
  objectId: import("valibot").SchemaWithTransform<import("valibot").StringSchema<string>, string>;
1225
1225
  initialSharedVersion: import("valibot").UnionSchema<(import("valibot").StringSchema<string> | import("valibot").NumberSchema<number>)[], string | number>;
1226
- mutable: import("valibot").NullableSchema<import("valibot").BooleanSchema<boolean>, undefined, boolean | null>;
1226
+ mutable: import("valibot").BooleanSchema<boolean>;
1227
1227
  }, undefined, {
1228
1228
  objectId: string;
1229
1229
  initialSharedVersion: string | number;
1230
- mutable: boolean | null;
1230
+ mutable: boolean;
1231
1231
  }>;
1232
1232
  Receiving: import("valibot").ObjectSchema<{
1233
1233
  objectId: import("valibot").SchemaWithTransform<import("valibot").StringSchema<string>, string>;
@@ -1276,11 +1276,11 @@ export declare const NormalizedCallArg: EnumSchema<{
1276
1276
  SharedObject: import("valibot").ObjectSchema<{
1277
1277
  objectId: import("valibot").SchemaWithTransform<import("valibot").StringSchema<string>, string>;
1278
1278
  initialSharedVersion: import("valibot").UnionSchema<(import("valibot").StringSchema<string> | import("valibot").NumberSchema<number>)[], string | number>;
1279
- mutable: import("valibot").NullableSchema<import("valibot").BooleanSchema<boolean>, undefined, boolean | null>;
1279
+ mutable: import("valibot").BooleanSchema<boolean>;
1280
1280
  }, undefined, {
1281
1281
  objectId: string;
1282
1282
  initialSharedVersion: string | number;
1283
- mutable: boolean | null;
1283
+ mutable: boolean;
1284
1284
  }>;
1285
1285
  Receiving: import("valibot").ObjectSchema<{
1286
1286
  objectId: import("valibot").SchemaWithTransform<import("valibot").StringSchema<string>, string>;
@@ -1358,11 +1358,11 @@ export declare const TransactionData: import("valibot").ObjectSchema<{
1358
1358
  SharedObject: import("valibot").ObjectSchema<{
1359
1359
  objectId: import("valibot").SchemaWithTransform<import("valibot").StringSchema<string>, string>;
1360
1360
  initialSharedVersion: import("valibot").UnionSchema<(import("valibot").StringSchema<string> | import("valibot").NumberSchema<number>)[], string | number>;
1361
- mutable: import("valibot").NullableSchema<import("valibot").BooleanSchema<boolean>, undefined, boolean | null>;
1361
+ mutable: import("valibot").BooleanSchema<boolean>;
1362
1362
  }, undefined, {
1363
1363
  objectId: string;
1364
1364
  initialSharedVersion: string | number;
1365
- mutable: boolean | null;
1365
+ mutable: boolean;
1366
1366
  }>;
1367
1367
  Receiving: import("valibot").ObjectSchema<{
1368
1368
  objectId: import("valibot").SchemaWithTransform<import("valibot").StringSchema<string>, string>;
@@ -1405,7 +1405,7 @@ export declare const TransactionData: import("valibot").ObjectSchema<{
1405
1405
  SharedObject: {
1406
1406
  objectId: string;
1407
1407
  initialSharedVersion: string | number;
1408
- mutable: boolean | null;
1408
+ mutable: boolean;
1409
1409
  };
1410
1410
  Receiving: {
1411
1411
  objectId: string;
@@ -2413,7 +2413,7 @@ export declare const TransactionData: import("valibot").ObjectSchema<{
2413
2413
  SharedObject: {
2414
2414
  objectId: string;
2415
2415
  initialSharedVersion: string | number;
2416
- mutable: boolean | null;
2416
+ mutable: boolean;
2417
2417
  };
2418
2418
  Receiving: {
2419
2419
  objectId: string;
@@ -170,7 +170,7 @@ const ObjectArg = safeEnum({
170
170
  objectId: ObjectID,
171
171
  // snake case in rust
172
172
  initialSharedVersion: JsonU64,
173
- mutable: (0, import_valibot.nullable)((0, import_valibot.boolean)())
173
+ mutable: (0, import_valibot.boolean)()
174
174
  }),
175
175
  Receiving: ObjectRef
176
176
  });
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/transactions/data/internal.ts"],
4
- "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { EnumInputShape, EnumOutputShape } from '@mysten/bcs';\nimport type { BaseSchema, Input, Output } from 'valibot';\nimport {\n\tarray,\n\tboolean,\n\tcustom,\n\tinteger,\n\tliteral,\n\tnullable,\n\tnullish,\n\tnumber,\n\tobject,\n\toptional,\n\trecord,\n\trecursive,\n\tstring,\n\ttransform,\n\ttuple,\n\tunion,\n\tunknown,\n} from 'valibot';\n\nimport { isValidSuiAddress, normalizeSuiAddress } from '../../utils/sui-types.js';\n\ntype Merge<T> = T extends object ? { [K in keyof T]: T[K] } : never;\n\ntype EnumSchema<T extends Record<string, BaseSchema<any>>> = BaseSchema<\n\tEnumInputShape<\n\t\tMerge<{\n\t\t\t[K in keyof T]: Input<T[K]>;\n\t\t}>\n\t>,\n\tEnumOutputShape<\n\t\tMerge<{\n\t\t\t[K in keyof T]: Output<T[K]>;\n\t\t}>\n\t>\n>;\n\nexport function safeEnum<T extends Record<string, BaseSchema<any>>>(options: T): EnumSchema<T> {\n\tconst unionOptions = Object.entries(options).map(([key, value]) => object({ [key]: value }));\n\n\treturn transform(union(unionOptions), (value) => ({\n\t\t...value,\n\t\t$kind: Object.keys(value)[0] as keyof typeof value,\n\t})) as EnumSchema<T>;\n}\n\nexport const SuiAddress = transform(string(), (value) => normalizeSuiAddress(value), [\n\tcustom(isValidSuiAddress),\n]);\nexport const ObjectID = SuiAddress;\nexport const BCSBytes = string();\nexport const JsonU64 = union(\n\t[string(), number([integer()])],\n\t[\n\t\tcustom((val) => {\n\t\t\ttry {\n\t\t\t\tBigInt(val);\n\t\t\t\treturn BigInt(val) >= 0 && BigInt(val) <= 18446744073709551615n;\n\t\t\t} catch {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}, 'Invalid u64'),\n\t],\n);\n// https://github.com/MystenLabs/sui/blob/df41d5fa8127634ff4285671a01ead00e519f806/crates/sui-types/src/base_types.rs#L138\n// Implemented as a tuple in rust\nexport const ObjectRef = object({\n\tobjectId: SuiAddress,\n\tversion: JsonU64,\n\tdigest: string(),\n});\nexport type ObjectRef = Output<typeof ObjectRef>;\n\n// https://github.com/MystenLabs/sui/blob/df41d5fa8127634ff4285671a01ead00e519f806/crates/sui-types/src/transaction.rs#L690-L702\nexport const Argument = transform(\n\tunion([\n\t\tobject({ GasCoin: literal(true) }),\n\t\tobject({ Input: number([integer()]), type: optional(literal('pure')) }),\n\t\tobject({ Input: number([integer()]), type: optional(literal('object')) }),\n\t\tobject({ Result: number([integer()]) }),\n\t\tobject({ NestedResult: tuple([number([integer()]), number([integer()])]) }),\n\t]),\n\t(value) => ({\n\t\t...value,\n\t\t$kind: Object.keys(value)[0] as keyof typeof value,\n\t}),\n\t// Defined manually to add `type?: 'pure' | 'object'` to Input\n) as BaseSchema<\n\t// Input\n\t| { GasCoin: true }\n\t| { Input: number; type?: 'pure' | 'object' }\n\t| { Result: number }\n\t| { NestedResult: [number, number] },\n\t// Output\n\t| { $kind: 'GasCoin'; GasCoin: true }\n\t| { $kind: 'Input'; Input: number; type?: 'pure' }\n\t| { $kind: 'Input'; Input: number; type?: 'object' }\n\t| { $kind: 'Result'; Result: number }\n\t| { $kind: 'NestedResult'; NestedResult: [number, number] }\n>;\n\nexport type Argument = Output<typeof Argument>;\n\n// https://github.com/MystenLabs/sui/blob/df41d5fa8127634ff4285671a01ead00e519f806/crates/sui-types/src/transaction.rs#L1387-L1392\nexport const GasData = object({\n\tbudget: nullable(JsonU64),\n\tprice: nullable(JsonU64),\n\towner: nullable(SuiAddress),\n\tpayment: nullable(array(ObjectRef)),\n});\nexport type GasData = Output<typeof GasData>;\n\n// https://github.com/MystenLabs/sui/blob/df41d5fa8127634ff4285671a01ead00e519f806/external-crates/move/crates/move-core-types/src/language_storage.rs#L140-L147\nexport const StructTag = object({\n\taddress: string(),\n\tmodule: string(),\n\tname: string(),\n\t// type_params in rust, should be updated to use camelCase\n\ttypeParams: array(string()),\n});\nexport type StructTag = Output<typeof StructTag>;\n\n// https://github.com/MystenLabs/sui/blob/cea8742e810142a8145fd83c4c142d61e561004a/crates/sui-graphql-rpc/schema/current_progress_schema.graphql#L1614-L1627\nexport type OpenMoveTypeSignatureBody =\n\t| 'address'\n\t| 'bool'\n\t| 'u8'\n\t| 'u16'\n\t| 'u32'\n\t| 'u64'\n\t| 'u128'\n\t| 'u256'\n\t| { vector: OpenMoveTypeSignatureBody }\n\t| {\n\t\t\tdatatype: {\n\t\t\t\tpackage: string;\n\t\t\t\tmodule: string;\n\t\t\t\ttype: string;\n\t\t\t\ttypeParameters: OpenMoveTypeSignatureBody[];\n\t\t\t};\n\t }\n\t| { typeParameter: number };\n\nexport const OpenMoveTypeSignatureBody: BaseSchema<OpenMoveTypeSignatureBody> = union([\n\tliteral('address'),\n\tliteral('bool'),\n\tliteral('u8'),\n\tliteral('u16'),\n\tliteral('u32'),\n\tliteral('u64'),\n\tliteral('u128'),\n\tliteral('u256'),\n\tobject({ vector: recursive(() => OpenMoveTypeSignatureBody) }),\n\tobject({\n\t\tdatatype: object({\n\t\t\tpackage: string(),\n\t\t\tmodule: string(),\n\t\t\ttype: string(),\n\t\t\ttypeParameters: array(recursive(() => OpenMoveTypeSignatureBody)),\n\t\t}),\n\t}),\n\tobject({ typeParameter: number([integer()]) }),\n]);\n\n// https://github.com/MystenLabs/sui/blob/cea8742e810142a8145fd83c4c142d61e561004a/crates/sui-graphql-rpc/schema/current_progress_schema.graphql#L1609-L1612\nexport const OpenMoveTypeSignature = object({\n\tref: nullable(union([literal('&'), literal('&mut')])),\n\tbody: OpenMoveTypeSignatureBody,\n});\nexport type OpenMoveTypeSignature = Output<typeof OpenMoveTypeSignature>;\n\n// https://github.com/MystenLabs/sui/blob/df41d5fa8127634ff4285671a01ead00e519f806/crates/sui-types/src/transaction.rs#L707-L718\nconst ProgrammableMoveCall = object({\n\tpackage: ObjectID,\n\tmodule: string(),\n\tfunction: string(),\n\t// snake case in rust\n\ttypeArguments: array(string()),\n\targuments: array(Argument),\n\t_argumentTypes: optional(nullable(array(OpenMoveTypeSignature))),\n});\nexport type ProgrammableMoveCall = Output<typeof ProgrammableMoveCall>;\n\nexport const $Intent = object({\n\tname: string(),\n\tinputs: record(string(), union([Argument, array(Argument)])),\n\tdata: record(string(), unknown()),\n});\n\n// https://github.com/MystenLabs/sui/blob/df41d5fa8127634ff4285671a01ead00e519f806/crates/sui-types/src/transaction.rs#L657-L685\nexport const Command = safeEnum({\n\tMoveCall: ProgrammableMoveCall,\n\tTransferObjects: object({\n\t\tobjects: array(Argument),\n\t\taddress: Argument,\n\t}),\n\tSplitCoins: object({\n\t\tcoin: Argument,\n\t\tamounts: array(Argument),\n\t}),\n\tMergeCoins: object({\n\t\tdestination: Argument,\n\t\tsources: array(Argument),\n\t}),\n\tPublish: object({\n\t\tmodules: array(BCSBytes),\n\t\tdependencies: array(ObjectID),\n\t}),\n\tMakeMoveVec: object({\n\t\ttype: nullable(string()),\n\t\telements: array(Argument),\n\t}),\n\tUpgrade: object({\n\t\tmodules: array(BCSBytes),\n\t\tdependencies: array(ObjectID),\n\t\tpackage: ObjectID,\n\t\tticket: Argument,\n\t}),\n\t$Intent,\n});\n\nexport type Command<Arg = Argument> = EnumOutputShape<{\n\tMoveCall: {\n\t\tpackage: string;\n\t\tmodule: string;\n\t\tfunction: string;\n\t\ttypeArguments: string[];\n\t\targuments: Arg[];\n\t\t_argumentTypes?: OpenMoveTypeSignature[] | null;\n\t};\n\tTransferObjects: {\n\t\tobjects: Arg[];\n\t\taddress: Arg;\n\t};\n\tSplitCoins: {\n\t\tcoin: Arg;\n\t\tamounts: Arg[];\n\t};\n\tMergeCoins: {\n\t\tdestination: Arg;\n\t\tsources: Arg[];\n\t};\n\tPublish: {\n\t\tmodules: string[];\n\t\tdependencies: string[];\n\t};\n\tMakeMoveVec: {\n\t\ttype: string | null;\n\t\telements: Arg[];\n\t};\n\tUpgrade: {\n\t\tmodules: string[];\n\t\tdependencies: string[];\n\t\tpackage: string;\n\t\tticket: Arg;\n\t};\n\t$Intent: {\n\t\tname: string;\n\t\tinputs: Record<string, Argument | Argument[]>;\n\t\tdata: Record<string, unknown>;\n\t};\n}>;\n\n// https://github.com/MystenLabs/sui/blob/df41d5fa8127634ff4285671a01ead00e519f806/crates/sui-types/src/transaction.rs#L102-L114\nexport const ObjectArg = safeEnum({\n\tImmOrOwnedObject: ObjectRef,\n\tSharedObject: object({\n\t\tobjectId: ObjectID,\n\t\t// snake case in rust\n\t\tinitialSharedVersion: JsonU64,\n\t\tmutable: nullable(boolean()),\n\t}),\n\tReceiving: ObjectRef,\n});\n\n// https://github.com/MystenLabs/sui/blob/df41d5fa8127634ff4285671a01ead00e519f806/crates/sui-types/src/transaction.rs#L75-L80\nconst CallArg = safeEnum({\n\tObject: ObjectArg,\n\tPure: object({\n\t\tbytes: BCSBytes,\n\t}),\n\tUnresolvedPure: object({\n\t\tvalue: unknown(),\n\t}),\n\tUnresolvedObject: object({\n\t\tobjectId: ObjectID,\n\t\tversion: optional(nullable(JsonU64)),\n\t\tdigest: optional(nullable(string())),\n\t\tinitialSharedVersion: optional(nullable(JsonU64)),\n\t}),\n});\nexport type CallArg = Output<typeof CallArg>;\n\nexport const NormalizedCallArg = safeEnum({\n\tObject: ObjectArg,\n\tPure: object({\n\t\tbytes: BCSBytes,\n\t}),\n});\n\nexport const TransactionExpiration = safeEnum({\n\tNone: literal(true),\n\tEpoch: JsonU64,\n});\n\nexport type TransactionExpiration = Output<typeof TransactionExpiration>;\n\nexport const TransactionData = object({\n\tversion: literal(2),\n\tsender: nullish(SuiAddress),\n\texpiration: nullish(TransactionExpiration),\n\tgasData: GasData,\n\tinputs: array(CallArg),\n\tcommands: array(Command),\n});\nexport type TransactionData = Output<typeof TransactionData>;\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { EnumInputShape, EnumOutputShape } from '@mysten/bcs';\nimport type { BaseSchema, Input, Output } from 'valibot';\nimport {\n\tarray,\n\tboolean,\n\tcustom,\n\tinteger,\n\tliteral,\n\tnullable,\n\tnullish,\n\tnumber,\n\tobject,\n\toptional,\n\trecord,\n\trecursive,\n\tstring,\n\ttransform,\n\ttuple,\n\tunion,\n\tunknown,\n} from 'valibot';\n\nimport { isValidSuiAddress, normalizeSuiAddress } from '../../utils/sui-types.js';\n\ntype Merge<T> = T extends object ? { [K in keyof T]: T[K] } : never;\n\ntype EnumSchema<T extends Record<string, BaseSchema<any>>> = BaseSchema<\n\tEnumInputShape<\n\t\tMerge<{\n\t\t\t[K in keyof T]: Input<T[K]>;\n\t\t}>\n\t>,\n\tEnumOutputShape<\n\t\tMerge<{\n\t\t\t[K in keyof T]: Output<T[K]>;\n\t\t}>\n\t>\n>;\n\nexport function safeEnum<T extends Record<string, BaseSchema<any>>>(options: T): EnumSchema<T> {\n\tconst unionOptions = Object.entries(options).map(([key, value]) => object({ [key]: value }));\n\n\treturn transform(union(unionOptions), (value) => ({\n\t\t...value,\n\t\t$kind: Object.keys(value)[0] as keyof typeof value,\n\t})) as EnumSchema<T>;\n}\n\nexport const SuiAddress = transform(string(), (value) => normalizeSuiAddress(value), [\n\tcustom(isValidSuiAddress),\n]);\nexport const ObjectID = SuiAddress;\nexport const BCSBytes = string();\nexport const JsonU64 = union(\n\t[string(), number([integer()])],\n\t[\n\t\tcustom((val) => {\n\t\t\ttry {\n\t\t\t\tBigInt(val);\n\t\t\t\treturn BigInt(val) >= 0 && BigInt(val) <= 18446744073709551615n;\n\t\t\t} catch {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}, 'Invalid u64'),\n\t],\n);\n// https://github.com/MystenLabs/sui/blob/df41d5fa8127634ff4285671a01ead00e519f806/crates/sui-types/src/base_types.rs#L138\n// Implemented as a tuple in rust\nexport const ObjectRef = object({\n\tobjectId: SuiAddress,\n\tversion: JsonU64,\n\tdigest: string(),\n});\nexport type ObjectRef = Output<typeof ObjectRef>;\n\n// https://github.com/MystenLabs/sui/blob/df41d5fa8127634ff4285671a01ead00e519f806/crates/sui-types/src/transaction.rs#L690-L702\nexport const Argument = transform(\n\tunion([\n\t\tobject({ GasCoin: literal(true) }),\n\t\tobject({ Input: number([integer()]), type: optional(literal('pure')) }),\n\t\tobject({ Input: number([integer()]), type: optional(literal('object')) }),\n\t\tobject({ Result: number([integer()]) }),\n\t\tobject({ NestedResult: tuple([number([integer()]), number([integer()])]) }),\n\t]),\n\t(value) => ({\n\t\t...value,\n\t\t$kind: Object.keys(value)[0] as keyof typeof value,\n\t}),\n\t// Defined manually to add `type?: 'pure' | 'object'` to Input\n) as BaseSchema<\n\t// Input\n\t| { GasCoin: true }\n\t| { Input: number; type?: 'pure' | 'object' }\n\t| { Result: number }\n\t| { NestedResult: [number, number] },\n\t// Output\n\t| { $kind: 'GasCoin'; GasCoin: true }\n\t| { $kind: 'Input'; Input: number; type?: 'pure' }\n\t| { $kind: 'Input'; Input: number; type?: 'object' }\n\t| { $kind: 'Result'; Result: number }\n\t| { $kind: 'NestedResult'; NestedResult: [number, number] }\n>;\n\nexport type Argument = Output<typeof Argument>;\n\n// https://github.com/MystenLabs/sui/blob/df41d5fa8127634ff4285671a01ead00e519f806/crates/sui-types/src/transaction.rs#L1387-L1392\nexport const GasData = object({\n\tbudget: nullable(JsonU64),\n\tprice: nullable(JsonU64),\n\towner: nullable(SuiAddress),\n\tpayment: nullable(array(ObjectRef)),\n});\nexport type GasData = Output<typeof GasData>;\n\n// https://github.com/MystenLabs/sui/blob/df41d5fa8127634ff4285671a01ead00e519f806/external-crates/move/crates/move-core-types/src/language_storage.rs#L140-L147\nexport const StructTag = object({\n\taddress: string(),\n\tmodule: string(),\n\tname: string(),\n\t// type_params in rust, should be updated to use camelCase\n\ttypeParams: array(string()),\n});\nexport type StructTag = Output<typeof StructTag>;\n\n// https://github.com/MystenLabs/sui/blob/cea8742e810142a8145fd83c4c142d61e561004a/crates/sui-graphql-rpc/schema/current_progress_schema.graphql#L1614-L1627\nexport type OpenMoveTypeSignatureBody =\n\t| 'address'\n\t| 'bool'\n\t| 'u8'\n\t| 'u16'\n\t| 'u32'\n\t| 'u64'\n\t| 'u128'\n\t| 'u256'\n\t| { vector: OpenMoveTypeSignatureBody }\n\t| {\n\t\t\tdatatype: {\n\t\t\t\tpackage: string;\n\t\t\t\tmodule: string;\n\t\t\t\ttype: string;\n\t\t\t\ttypeParameters: OpenMoveTypeSignatureBody[];\n\t\t\t};\n\t }\n\t| { typeParameter: number };\n\nexport const OpenMoveTypeSignatureBody: BaseSchema<OpenMoveTypeSignatureBody> = union([\n\tliteral('address'),\n\tliteral('bool'),\n\tliteral('u8'),\n\tliteral('u16'),\n\tliteral('u32'),\n\tliteral('u64'),\n\tliteral('u128'),\n\tliteral('u256'),\n\tobject({ vector: recursive(() => OpenMoveTypeSignatureBody) }),\n\tobject({\n\t\tdatatype: object({\n\t\t\tpackage: string(),\n\t\t\tmodule: string(),\n\t\t\ttype: string(),\n\t\t\ttypeParameters: array(recursive(() => OpenMoveTypeSignatureBody)),\n\t\t}),\n\t}),\n\tobject({ typeParameter: number([integer()]) }),\n]);\n\n// https://github.com/MystenLabs/sui/blob/cea8742e810142a8145fd83c4c142d61e561004a/crates/sui-graphql-rpc/schema/current_progress_schema.graphql#L1609-L1612\nexport const OpenMoveTypeSignature = object({\n\tref: nullable(union([literal('&'), literal('&mut')])),\n\tbody: OpenMoveTypeSignatureBody,\n});\nexport type OpenMoveTypeSignature = Output<typeof OpenMoveTypeSignature>;\n\n// https://github.com/MystenLabs/sui/blob/df41d5fa8127634ff4285671a01ead00e519f806/crates/sui-types/src/transaction.rs#L707-L718\nconst ProgrammableMoveCall = object({\n\tpackage: ObjectID,\n\tmodule: string(),\n\tfunction: string(),\n\t// snake case in rust\n\ttypeArguments: array(string()),\n\targuments: array(Argument),\n\t_argumentTypes: optional(nullable(array(OpenMoveTypeSignature))),\n});\nexport type ProgrammableMoveCall = Output<typeof ProgrammableMoveCall>;\n\nexport const $Intent = object({\n\tname: string(),\n\tinputs: record(string(), union([Argument, array(Argument)])),\n\tdata: record(string(), unknown()),\n});\n\n// https://github.com/MystenLabs/sui/blob/df41d5fa8127634ff4285671a01ead00e519f806/crates/sui-types/src/transaction.rs#L657-L685\nexport const Command = safeEnum({\n\tMoveCall: ProgrammableMoveCall,\n\tTransferObjects: object({\n\t\tobjects: array(Argument),\n\t\taddress: Argument,\n\t}),\n\tSplitCoins: object({\n\t\tcoin: Argument,\n\t\tamounts: array(Argument),\n\t}),\n\tMergeCoins: object({\n\t\tdestination: Argument,\n\t\tsources: array(Argument),\n\t}),\n\tPublish: object({\n\t\tmodules: array(BCSBytes),\n\t\tdependencies: array(ObjectID),\n\t}),\n\tMakeMoveVec: object({\n\t\ttype: nullable(string()),\n\t\telements: array(Argument),\n\t}),\n\tUpgrade: object({\n\t\tmodules: array(BCSBytes),\n\t\tdependencies: array(ObjectID),\n\t\tpackage: ObjectID,\n\t\tticket: Argument,\n\t}),\n\t$Intent,\n});\n\nexport type Command<Arg = Argument> = EnumOutputShape<{\n\tMoveCall: {\n\t\tpackage: string;\n\t\tmodule: string;\n\t\tfunction: string;\n\t\ttypeArguments: string[];\n\t\targuments: Arg[];\n\t\t_argumentTypes?: OpenMoveTypeSignature[] | null;\n\t};\n\tTransferObjects: {\n\t\tobjects: Arg[];\n\t\taddress: Arg;\n\t};\n\tSplitCoins: {\n\t\tcoin: Arg;\n\t\tamounts: Arg[];\n\t};\n\tMergeCoins: {\n\t\tdestination: Arg;\n\t\tsources: Arg[];\n\t};\n\tPublish: {\n\t\tmodules: string[];\n\t\tdependencies: string[];\n\t};\n\tMakeMoveVec: {\n\t\ttype: string | null;\n\t\telements: Arg[];\n\t};\n\tUpgrade: {\n\t\tmodules: string[];\n\t\tdependencies: string[];\n\t\tpackage: string;\n\t\tticket: Arg;\n\t};\n\t$Intent: {\n\t\tname: string;\n\t\tinputs: Record<string, Argument | Argument[]>;\n\t\tdata: Record<string, unknown>;\n\t};\n}>;\n\n// https://github.com/MystenLabs/sui/blob/df41d5fa8127634ff4285671a01ead00e519f806/crates/sui-types/src/transaction.rs#L102-L114\nexport const ObjectArg = safeEnum({\n\tImmOrOwnedObject: ObjectRef,\n\tSharedObject: object({\n\t\tobjectId: ObjectID,\n\t\t// snake case in rust\n\t\tinitialSharedVersion: JsonU64,\n\t\tmutable: boolean(),\n\t}),\n\tReceiving: ObjectRef,\n});\n\n// https://github.com/MystenLabs/sui/blob/df41d5fa8127634ff4285671a01ead00e519f806/crates/sui-types/src/transaction.rs#L75-L80\nconst CallArg = safeEnum({\n\tObject: ObjectArg,\n\tPure: object({\n\t\tbytes: BCSBytes,\n\t}),\n\tUnresolvedPure: object({\n\t\tvalue: unknown(),\n\t}),\n\tUnresolvedObject: object({\n\t\tobjectId: ObjectID,\n\t\tversion: optional(nullable(JsonU64)),\n\t\tdigest: optional(nullable(string())),\n\t\tinitialSharedVersion: optional(nullable(JsonU64)),\n\t}),\n});\nexport type CallArg = Output<typeof CallArg>;\n\nexport const NormalizedCallArg = safeEnum({\n\tObject: ObjectArg,\n\tPure: object({\n\t\tbytes: BCSBytes,\n\t}),\n});\n\nexport const TransactionExpiration = safeEnum({\n\tNone: literal(true),\n\tEpoch: JsonU64,\n});\n\nexport type TransactionExpiration = Output<typeof TransactionExpiration>;\n\nexport const TransactionData = object({\n\tversion: literal(2),\n\tsender: nullish(SuiAddress),\n\texpiration: nullish(TransactionExpiration),\n\tgasData: GasData,\n\tinputs: array(CallArg),\n\tcommands: array(Command),\n});\nexport type TransactionData = Output<typeof TransactionData>;\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -1,44 +1,53 @@
1
1
  import type { BaseSchema, Output } from 'valibot';
2
2
  import type { StructTag as StructTagType, TypeTag as TypeTagType } from '../../bcs/types.js';
3
3
  import { TransactionData } from './internal.js';
4
+ export declare const ObjectRef: import("valibot").ObjectSchema<{
5
+ digest: import("valibot").StringSchema<string>;
6
+ objectId: import("valibot").StringSchema<string>;
7
+ version: import("valibot").UnionSchema<(import("valibot").StringSchema<string> | import("valibot").NumberSchema<number> | import("valibot").BigintSchema<bigint>)[], string | number | bigint>;
8
+ }, undefined, {
9
+ objectId: string;
10
+ version: string | number | bigint;
11
+ digest: string;
12
+ }>;
4
13
  export declare const NormalizedCallArg: {
5
14
  async: false;
6
15
  _parse(input: unknown, info?: Partial<Pick<import("valibot").Issue, "origin" | "abortEarly" | "abortPipeEarly" | "skipPipe">> | undefined): import("valibot").SchemaResult<import("@mysten/bcs").EnumOutputShapeWithKeys<{
7
16
  Object: import("@mysten/bcs").EnumOutputShapeWithKeys<{
8
- ImmOrOwnedObject: {
17
+ ImmOrOwned: {
9
18
  objectId: string;
10
- version: string | number;
19
+ version: string | number | bigint;
11
20
  digest: string;
12
21
  };
13
- SharedObject: {
22
+ Shared: {
14
23
  objectId: string;
15
24
  initialSharedVersion: string | number;
16
- mutable: boolean | null;
25
+ mutable: boolean;
17
26
  };
18
27
  Receiving: {
19
28
  objectId: string;
20
- version: string | number;
29
+ version: string | number | bigint;
21
30
  digest: string;
22
31
  };
23
- }, "ImmOrOwnedObject" | "SharedObject" | "Receiving">;
32
+ }, "Receiving" | "Shared" | "ImmOrOwned">;
24
33
  Pure: number[];
25
34
  }, "Pure" | "Object">>;
26
35
  _types?: {
27
36
  input: import("@mysten/bcs").EnumInputShape<{
28
37
  Object: import("@mysten/bcs").EnumInputShape<{
29
- ImmOrOwnedObject: {
38
+ ImmOrOwned: {
30
39
  objectId: string;
31
- version: string | number;
40
+ version: string | number | bigint;
32
41
  digest: string;
33
42
  };
34
- SharedObject: {
43
+ Shared: {
35
44
  objectId: string;
36
45
  initialSharedVersion: string | number;
37
- mutable: boolean | null;
46
+ mutable: boolean;
38
47
  };
39
48
  Receiving: {
40
49
  objectId: string;
41
- version: string | number;
50
+ version: string | number | bigint;
42
51
  digest: string;
43
52
  };
44
53
  }>;
@@ -46,35 +55,26 @@ export declare const NormalizedCallArg: {
46
55
  }>;
47
56
  output: import("@mysten/bcs").EnumOutputShapeWithKeys<{
48
57
  Object: import("@mysten/bcs").EnumOutputShapeWithKeys<{
49
- ImmOrOwnedObject: {
58
+ ImmOrOwned: {
50
59
  objectId: string;
51
- version: string | number;
60
+ version: string | number | bigint;
52
61
  digest: string;
53
62
  };
54
- SharedObject: {
63
+ Shared: {
55
64
  objectId: string;
56
65
  initialSharedVersion: string | number;
57
- mutable: boolean | null;
66
+ mutable: boolean;
58
67
  };
59
68
  Receiving: {
60
69
  objectId: string;
61
- version: string | number;
70
+ version: string | number | bigint;
62
71
  digest: string;
63
72
  };
64
- }, "ImmOrOwnedObject" | "SharedObject" | "Receiving">;
73
+ }, "Receiving" | "Shared" | "ImmOrOwned">;
65
74
  Pure: number[];
66
75
  }, "Pure" | "Object">;
67
76
  } | undefined;
68
77
  };
69
- export declare const ObjectRef: import("valibot").ObjectSchema<{
70
- digest: import("valibot").StringSchema<string>;
71
- objectId: import("valibot").StringSchema<string>;
72
- version: import("valibot").UnionSchema<(import("valibot").StringSchema<string> | import("valibot").NumberSchema<number> | import("valibot").BigintSchema<bigint>)[], string | number | bigint>;
73
- }, undefined, {
74
- objectId: string;
75
- version: string | number | bigint;
76
- digest: string;
77
- }>;
78
78
  export declare const TypeTag: BaseSchema<TypeTagType>;
79
79
  export declare const StructTag: BaseSchema<StructTagType>;
80
80
  export declare const TransactionArgument: import("valibot").UnionSchema<(import("valibot").UnionSchema<(import("valibot").ObjectSchema<{
@@ -32,15 +32,24 @@ var import_bcs = require("@mysten/bcs");
32
32
  var import_valibot = require("valibot");
33
33
  var import_bcs2 = require("../../bcs/index.js");
34
34
  var import_internal = require("./internal.js");
35
- const NormalizedCallArg = (0, import_internal.safeEnum)({
36
- Object: import_internal.ObjectArg,
37
- Pure: (0, import_valibot.array)((0, import_valibot.number)([(0, import_valibot.integer)()]))
38
- });
39
35
  const ObjectRef = (0, import_valibot.object)({
40
36
  digest: (0, import_valibot.string)(),
41
37
  objectId: (0, import_valibot.string)(),
42
38
  version: (0, import_valibot.union)([(0, import_valibot.number)([(0, import_valibot.integer)()]), (0, import_valibot.string)(), (0, import_valibot.bigint)()])
43
39
  });
40
+ const ObjectArg = (0, import_internal.safeEnum)({
41
+ ImmOrOwned: ObjectRef,
42
+ Shared: (0, import_valibot.object)({
43
+ objectId: import_internal.ObjectID,
44
+ initialSharedVersion: import_internal.JsonU64,
45
+ mutable: (0, import_valibot.boolean)()
46
+ }),
47
+ Receiving: ObjectRef
48
+ });
49
+ const NormalizedCallArg = (0, import_internal.safeEnum)({
50
+ Object: ObjectArg,
51
+ Pure: (0, import_valibot.array)((0, import_valibot.number)([(0, import_valibot.integer)()]))
52
+ });
44
53
  const TransactionInput = (0, import_valibot.union)([
45
54
  (0, import_valibot.object)({
46
55
  kind: (0, import_valibot.literal)("Input"),
@@ -176,7 +185,7 @@ function serializeV1TransactionData(transactionData) {
176
185
  index,
177
186
  value: {
178
187
  Object: input.Object.ImmOrOwnedObject ? {
179
- ImmOrOwnedObject: input.Object.ImmOrOwnedObject
188
+ ImmOrOwned: input.Object.ImmOrOwnedObject
180
189
  } : input.Object.Receiving ? {
181
190
  Receiving: {
182
191
  digest: input.Object.Receiving.digest,
@@ -184,7 +193,7 @@ function serializeV1TransactionData(transactionData) {
184
193
  objectId: input.Object.Receiving.objectId
185
194
  }
186
195
  } : {
187
- SharedObject: {
196
+ Shared: {
188
197
  mutable: input.Object.SharedObject.mutable,
189
198
  initialSharedVersion: input.Object.SharedObject.initialSharedVersion,
190
199
  objectId: input.Object.SharedObject.objectId
@@ -331,9 +340,40 @@ function transactionDataFromV1(data) {
331
340
  if ((0, import_valibot.is)(NormalizedCallArg, input.value)) {
332
341
  const value = (0, import_valibot.parse)(NormalizedCallArg, input.value);
333
342
  if (value.Object) {
334
- return {
335
- Object: value.Object
336
- };
343
+ if (value.Object.ImmOrOwned) {
344
+ return {
345
+ Object: {
346
+ ImmOrOwnedObject: {
347
+ objectId: value.Object.ImmOrOwned.objectId,
348
+ version: String(value.Object.ImmOrOwned.version),
349
+ digest: value.Object.ImmOrOwned.digest
350
+ }
351
+ }
352
+ };
353
+ }
354
+ if (value.Object.Shared) {
355
+ return {
356
+ Object: {
357
+ SharedObject: {
358
+ mutable: value.Object.Shared.mutable ?? null,
359
+ initialSharedVersion: value.Object.Shared.initialSharedVersion,
360
+ objectId: value.Object.Shared.objectId
361
+ }
362
+ }
363
+ };
364
+ }
365
+ if (value.Object.Receiving) {
366
+ return {
367
+ Object: {
368
+ Receiving: {
369
+ digest: value.Object.Receiving.digest,
370
+ version: String(value.Object.Receiving.version),
371
+ objectId: value.Object.Receiving.objectId
372
+ }
373
+ }
374
+ };
375
+ }
376
+ throw new Error("Invalid object input");
337
377
  }
338
378
  return {
339
379
  Pure: {