@mysten/sui 2.9.1 → 2.10.0

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 +13 -0
  2. package/dist/client/core.d.mts +1 -0
  3. package/dist/client/core.d.mts.map +1 -1
  4. package/dist/client/core.mjs +17 -4
  5. package/dist/client/core.mjs.map +1 -1
  6. package/dist/client/types.d.mts +16 -0
  7. package/dist/client/types.d.mts.map +1 -1
  8. package/dist/graphql/core.d.mts +1 -0
  9. package/dist/graphql/core.d.mts.map +1 -1
  10. package/dist/graphql/core.mjs +13 -1
  11. package/dist/graphql/core.mjs.map +1 -1
  12. package/dist/graphql/generated/queries.d.mts.map +1 -1
  13. package/dist/graphql/generated/queries.mjs +18 -1
  14. package/dist/graphql/generated/queries.mjs.map +1 -1
  15. package/dist/grpc/core.d.mts +1 -0
  16. package/dist/grpc/core.d.mts.map +1 -1
  17. package/dist/grpc/core.mjs +12 -0
  18. package/dist/grpc/core.mjs.map +1 -1
  19. package/dist/grpc/proto/sui/rpc/v2/ledger_service.client.d.mts +4 -4
  20. package/dist/grpc/proto/sui/rpc/v2/move_package_service.client.d.mts +4 -4
  21. package/dist/grpc/proto/sui/rpc/v2/signature_verification_service.client.d.mts +4 -4
  22. package/dist/grpc/proto/sui/rpc/v2/state_service.client.d.mts +4 -4
  23. package/dist/grpc/proto/sui/rpc/v2/transaction.d.mts.map +1 -1
  24. package/dist/grpc/proto/sui/rpc/v2/transaction_execution_service.client.d.mts +4 -4
  25. package/dist/jsonRpc/core.d.mts +1 -0
  26. package/dist/jsonRpc/core.d.mts.map +1 -1
  27. package/dist/jsonRpc/core.mjs +19 -0
  28. package/dist/jsonRpc/core.mjs.map +1 -1
  29. package/dist/transactions/data/internal.d.mts +109 -109
  30. package/dist/transactions/data/internal.d.mts.map +1 -1
  31. package/dist/transactions/data/v1.d.mts +220 -220
  32. package/dist/transactions/data/v1.d.mts.map +1 -1
  33. package/dist/version.mjs +1 -1
  34. package/dist/version.mjs.map +1 -1
  35. package/package.json +3 -3
  36. package/src/client/core.ts +34 -4
  37. package/src/client/types.ts +20 -0
  38. package/src/graphql/core.ts +27 -0
  39. package/src/graphql/generated/queries.ts +22 -0
  40. package/src/graphql/queries/getProtocolConfig.graphql +18 -0
  41. package/src/grpc/core.ts +27 -0
  42. package/src/jsonRpc/core.ts +34 -0
  43. package/src/version.ts +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # @mysten/sui.js
2
2
 
3
+ ## 2.10.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 78a577b: Add `getProtocolConfig()` Core API method returning protocol version, feature flags, and
8
+ config attributes.
9
+
10
+ ### Patch Changes
11
+
12
+ - 2ee1a2a: Improve `waitForTransaction` polling with schedule-based timing tuned to actual indexing
13
+ latency. Default schedule polls at 0, 300, 600, 1500, 3500ms then every 2s. Add `pollSchedule`
14
+ option for custom absolute-time schedules.
15
+
3
16
  ## 2.9.1
4
17
 
5
18
  ### Patch Changes
@@ -27,6 +27,7 @@ declare abstract class CoreClient extends BaseClient implements SuiClientTypes.T
27
27
  abstract simulateTransaction<Include extends SuiClientTypes.SimulateTransactionInclude = {}>(options: SuiClientTypes.SimulateTransactionOptions<Include>): Promise<SuiClientTypes.SimulateTransactionResult<Include>>;
28
28
  abstract getReferenceGasPrice(options?: SuiClientTypes.GetReferenceGasPriceOptions): Promise<SuiClientTypes.GetReferenceGasPriceResponse>;
29
29
  abstract getCurrentSystemState(options?: SuiClientTypes.GetCurrentSystemStateOptions): Promise<SuiClientTypes.GetCurrentSystemStateResponse>;
30
+ abstract getProtocolConfig(options?: SuiClientTypes.GetProtocolConfigOptions): Promise<SuiClientTypes.GetProtocolConfigResponse>;
30
31
  abstract getChainIdentifier(options?: SuiClientTypes.GetChainIdentifierOptions): Promise<SuiClientTypes.GetChainIdentifierResponse>;
31
32
  abstract listDynamicFields(options: SuiClientTypes.ListDynamicFieldsOptions): Promise<SuiClientTypes.ListDynamicFieldsResponse>;
32
33
  abstract resolveTransactionPlugin(): TransactionPlugin;
@@ -1 +1 @@
1
- {"version":3,"file":"core.d.mts","names":[],"sources":["../../src/client/core.ts"],"sourcesContent":[],"mappings":"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"}
1
+ {"version":3,"file":"core.d.mts","names":[],"sources":["../../src/client/core.ts"],"sourcesContent":[],"mappings":"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"}
@@ -85,14 +85,29 @@ var CoreClient = class extends BaseClient {
85
85
  return { object };
86
86
  }
87
87
  async waitForTransaction(options) {
88
- const { signal, timeout = 60 * 1e3, include } = options;
88
+ const { signal, timeout = 60 * 1e3, pollSchedule, include } = options;
89
89
  const digest = "result" in options && options.result ? (options.result.Transaction ?? options.result.FailedTransaction).digest : options.digest;
90
90
  const abortSignal = signal ? AbortSignal.any([AbortSignal.timeout(timeout), signal]) : AbortSignal.timeout(timeout);
91
91
  const abortPromise = new Promise((_, reject) => {
92
92
  abortSignal.addEventListener("abort", () => reject(abortSignal.reason));
93
93
  });
94
94
  abortPromise.catch(() => {});
95
+ const schedule = pollSchedule ?? [
96
+ 0,
97
+ 300,
98
+ 600,
99
+ 1500,
100
+ 3500
101
+ ];
102
+ const t0 = Date.now();
103
+ let scheduleIndex = 0;
104
+ const lastInterval = schedule.length > 0 ? schedule[schedule.length - 1] - (schedule[schedule.length - 2] ?? 0) : 2e3;
95
105
  while (true) {
106
+ if (scheduleIndex < schedule.length) {
107
+ const remaining = t0 + schedule[scheduleIndex] - Date.now();
108
+ scheduleIndex++;
109
+ if (remaining > 0) await Promise.race([new Promise((resolve) => setTimeout(resolve, remaining)), abortPromise]);
110
+ } else await Promise.race([new Promise((resolve) => setTimeout(resolve, lastInterval)), abortPromise]);
96
111
  abortSignal.throwIfAborted();
97
112
  try {
98
113
  return await this.getTransaction({
@@ -100,9 +115,7 @@ var CoreClient = class extends BaseClient {
100
115
  include,
101
116
  signal: abortSignal
102
117
  });
103
- } catch {
104
- await Promise.race([new Promise((resolve) => setTimeout(resolve, 2e3)), abortPromise]);
105
- }
118
+ } catch {}
106
119
  }
107
120
  }
108
121
  async signAndExecuteTransaction({ transaction, signer, additionalSignatures = [], ...input }) {
@@ -1 +1 @@
1
- {"version":3,"file":"core.mjs","names":["bcs"],"sources":["../../src/client/core.ts"],"sourcesContent":["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { TypeTagSerializer } from '../bcs/type-tag-serializer.js';\nimport type { TransactionPlugin } from '../transactions/index.js';\nimport { deriveDynamicFieldID } from '../utils/dynamic-fields.js';\nimport { normalizeStructTag, parseStructTag, SUI_ADDRESS_LENGTH } from '../utils/sui-types.js';\nimport { BaseClient } from './client.js';\nimport type { ClientWithExtensions, SuiClientTypes } from './types.js';\nimport { MvrClient } from './mvr.js';\nimport { bcs } from '../bcs/index.js';\n\nexport type ClientWithCoreApi = ClientWithExtensions<{\n\tcore: CoreClient;\n}>;\n\nexport interface CoreClientOptions extends SuiClientTypes.SuiClientOptions {\n\tbase: BaseClient;\n\tmvr?: SuiClientTypes.MvrOptions;\n}\n\nconst DEFAULT_MVR_URLS: Record<string, string> = {\n\tmainnet: 'https://mainnet.mvr.mystenlabs.com',\n\ttestnet: 'https://testnet.mvr.mystenlabs.com',\n};\n\nexport abstract class CoreClient extends BaseClient implements SuiClientTypes.TransportMethods {\n\tcore = this;\n\tmvr: SuiClientTypes.MvrMethods;\n\n\tconstructor(options: CoreClientOptions) {\n\t\tsuper(options);\n\n\t\tthis.mvr = new MvrClient({\n\t\t\tcache: this.cache.scope('core.mvr'),\n\t\t\turl: options.mvr?.url ?? DEFAULT_MVR_URLS[this.network],\n\t\t\tpageSize: options.mvr?.pageSize,\n\t\t\toverrides: options.mvr?.overrides,\n\t\t});\n\t}\n\n\tabstract getObjects<Include extends SuiClientTypes.ObjectInclude = {}>(\n\t\toptions: SuiClientTypes.GetObjectsOptions<Include>,\n\t): Promise<SuiClientTypes.GetObjectsResponse<Include>>;\n\n\tasync getObject<Include extends SuiClientTypes.ObjectInclude = {}>(\n\t\toptions: SuiClientTypes.GetObjectOptions<Include>,\n\t): Promise<SuiClientTypes.GetObjectResponse<Include>> {\n\t\tconst { objectId } = options;\n\t\tconst {\n\t\t\tobjects: [result],\n\t\t} = await this.getObjects({\n\t\t\tobjectIds: [objectId],\n\t\t\tsignal: options.signal,\n\t\t\tinclude: options.include,\n\t\t});\n\t\tif (result instanceof Error) {\n\t\t\tthrow result;\n\t\t}\n\t\treturn { object: result };\n\t}\n\n\tabstract listCoins(\n\t\toptions: SuiClientTypes.ListCoinsOptions,\n\t): Promise<SuiClientTypes.ListCoinsResponse>;\n\n\tabstract listOwnedObjects<Include extends SuiClientTypes.ObjectInclude = {}>(\n\t\toptions: SuiClientTypes.ListOwnedObjectsOptions<Include>,\n\t): Promise<SuiClientTypes.ListOwnedObjectsResponse<Include>>;\n\n\tabstract getBalance(\n\t\toptions: SuiClientTypes.GetBalanceOptions,\n\t): Promise<SuiClientTypes.GetBalanceResponse>;\n\n\tabstract listBalances(\n\t\toptions: SuiClientTypes.ListBalancesOptions,\n\t): Promise<SuiClientTypes.ListBalancesResponse>;\n\n\tabstract getCoinMetadata(\n\t\toptions: SuiClientTypes.GetCoinMetadataOptions,\n\t): Promise<SuiClientTypes.GetCoinMetadataResponse>;\n\n\tabstract getTransaction<Include extends SuiClientTypes.TransactionInclude = {}>(\n\t\toptions: SuiClientTypes.GetTransactionOptions<Include>,\n\t): Promise<SuiClientTypes.TransactionResult<Include>>;\n\n\tabstract executeTransaction<Include extends SuiClientTypes.TransactionInclude = {}>(\n\t\toptions: SuiClientTypes.ExecuteTransactionOptions<Include>,\n\t): Promise<SuiClientTypes.TransactionResult<Include>>;\n\n\tabstract simulateTransaction<Include extends SuiClientTypes.SimulateTransactionInclude = {}>(\n\t\toptions: SuiClientTypes.SimulateTransactionOptions<Include>,\n\t): Promise<SuiClientTypes.SimulateTransactionResult<Include>>;\n\n\tabstract getReferenceGasPrice(\n\t\toptions?: SuiClientTypes.GetReferenceGasPriceOptions,\n\t): Promise<SuiClientTypes.GetReferenceGasPriceResponse>;\n\n\tabstract getCurrentSystemState(\n\t\toptions?: SuiClientTypes.GetCurrentSystemStateOptions,\n\t): Promise<SuiClientTypes.GetCurrentSystemStateResponse>;\n\n\tabstract getChainIdentifier(\n\t\toptions?: SuiClientTypes.GetChainIdentifierOptions,\n\t): Promise<SuiClientTypes.GetChainIdentifierResponse>;\n\n\tabstract listDynamicFields(\n\t\toptions: SuiClientTypes.ListDynamicFieldsOptions,\n\t): Promise<SuiClientTypes.ListDynamicFieldsResponse>;\n\n\tabstract resolveTransactionPlugin(): TransactionPlugin;\n\n\tabstract verifyZkLoginSignature(\n\t\toptions: SuiClientTypes.VerifyZkLoginSignatureOptions,\n\t): Promise<SuiClientTypes.ZkLoginVerifyResponse>;\n\n\tabstract getMoveFunction(\n\t\toptions: SuiClientTypes.GetMoveFunctionOptions,\n\t): Promise<SuiClientTypes.GetMoveFunctionResponse>;\n\n\tabstract defaultNameServiceName(\n\t\toptions: SuiClientTypes.DefaultNameServiceNameOptions,\n\t): Promise<SuiClientTypes.DefaultNameServiceNameResponse>;\n\n\tasync getDynamicField(\n\t\toptions: SuiClientTypes.GetDynamicFieldOptions,\n\t): Promise<SuiClientTypes.GetDynamicFieldResponse> {\n\t\tconst normalizedNameType = TypeTagSerializer.parseFromStr(\n\t\t\t(\n\t\t\t\tawait this.core.mvr.resolveType({\n\t\t\t\t\ttype: options.name.type,\n\t\t\t\t})\n\t\t\t).type,\n\t\t);\n\t\tconst fieldId = deriveDynamicFieldID(options.parentId, normalizedNameType, options.name.bcs);\n\t\tconst {\n\t\t\tobjects: [fieldObject],\n\t\t} = await this.getObjects({\n\t\t\tobjectIds: [fieldId],\n\t\t\tsignal: options.signal,\n\t\t\tinclude: {\n\t\t\t\tpreviousTransaction: true,\n\t\t\t\tcontent: true,\n\t\t\t},\n\t\t});\n\n\t\tif (fieldObject instanceof Error) {\n\t\t\tthrow fieldObject;\n\t\t}\n\n\t\tconst fieldType = parseStructTag(fieldObject.type);\n\t\tconst content = await fieldObject.content;\n\n\t\tconst nameTypeParam = fieldType.typeParams[0];\n\t\tconst isDynamicObject =\n\t\t\ttypeof nameTypeParam !== 'string' &&\n\t\t\tnameTypeParam.module === 'dynamic_object_field' &&\n\t\t\tnameTypeParam.name === 'Wrapper';\n\n\t\tconst valueBcs = content.slice(SUI_ADDRESS_LENGTH + options.name.bcs.length);\n\n\t\tconst valueType =\n\t\t\ttypeof fieldType.typeParams[1] === 'string'\n\t\t\t\t? fieldType.typeParams[1]\n\t\t\t\t: normalizeStructTag(fieldType.typeParams[1]);\n\n\t\treturn {\n\t\t\tdynamicField: {\n\t\t\t\t$kind: isDynamicObject ? 'DynamicObject' : 'DynamicField',\n\t\t\t\tfieldId: fieldObject.objectId,\n\t\t\t\tdigest: fieldObject.digest,\n\t\t\t\tversion: fieldObject.version,\n\t\t\t\ttype: fieldObject.type,\n\t\t\t\tpreviousTransaction: fieldObject.previousTransaction,\n\t\t\t\tname: {\n\t\t\t\t\ttype:\n\t\t\t\t\t\ttypeof nameTypeParam === 'string' ? nameTypeParam : normalizeStructTag(nameTypeParam),\n\t\t\t\t\tbcs: options.name.bcs,\n\t\t\t\t},\n\t\t\t\tvalue: {\n\t\t\t\t\ttype: valueType,\n\t\t\t\t\tbcs: valueBcs,\n\t\t\t\t},\n\t\t\t\tchildId: isDynamicObject ? bcs.Address.parse(valueBcs) : undefined,\n\t\t\t} as SuiClientTypes.GetDynamicFieldResponse['dynamicField'],\n\t\t};\n\t}\n\n\tasync getDynamicObjectField<Include extends SuiClientTypes.ObjectInclude = {}>(\n\t\toptions: SuiClientTypes.GetDynamicObjectFieldOptions<Include>,\n\t): Promise<SuiClientTypes.GetDynamicObjectFieldResponse<Include>> {\n\t\tconst resolvedNameType = (\n\t\t\tawait this.core.mvr.resolveType({\n\t\t\t\ttype: options.name.type,\n\t\t\t})\n\t\t).type;\n\t\tconst wrappedType = `0x2::dynamic_object_field::Wrapper<${resolvedNameType}>`;\n\n\t\tconst { dynamicField } = await this.getDynamicField({\n\t\t\tparentId: options.parentId,\n\t\t\tname: {\n\t\t\t\ttype: wrappedType,\n\t\t\t\tbcs: options.name.bcs,\n\t\t\t},\n\t\t\tsignal: options.signal,\n\t\t});\n\n\t\tconst { object } = await this.getObject({\n\t\t\tobjectId: dynamicField.childId!,\n\t\t\tsignal: options.signal,\n\t\t\tinclude: options.include,\n\t\t});\n\n\t\treturn { object };\n\t}\n\n\tasync waitForTransaction<Include extends SuiClientTypes.TransactionInclude = {}>(\n\t\toptions: SuiClientTypes.WaitForTransactionOptions<Include>,\n\t): Promise<SuiClientTypes.TransactionResult<Include>> {\n\t\tconst { signal, timeout = 60 * 1000, include } = options;\n\n\t\tconst digest =\n\t\t\t'result' in options && options.result\n\t\t\t\t? (options.result.Transaction ?? options.result.FailedTransaction)!.digest\n\t\t\t\t: options.digest;\n\n\t\tconst abortSignal = signal\n\t\t\t? AbortSignal.any([AbortSignal.timeout(timeout), signal])\n\t\t\t: AbortSignal.timeout(timeout);\n\n\t\tconst abortPromise = new Promise((_, reject) => {\n\t\t\tabortSignal.addEventListener('abort', () => reject(abortSignal.reason));\n\t\t});\n\n\t\tabortPromise.catch(() => {\n\t\t\t// Swallow unhandled rejections that might be thrown after early return\n\t\t});\n\n\t\twhile (true) {\n\t\t\tabortSignal.throwIfAborted();\n\t\t\ttry {\n\t\t\t\treturn await this.getTransaction({\n\t\t\t\t\tdigest,\n\t\t\t\t\tinclude,\n\t\t\t\t\tsignal: abortSignal,\n\t\t\t\t});\n\t\t\t} catch {\n\t\t\t\tawait Promise.race([new Promise((resolve) => setTimeout(resolve, 2_000)), abortPromise]);\n\t\t\t}\n\t\t}\n\t}\n\n\tasync signAndExecuteTransaction<Include extends SuiClientTypes.TransactionInclude = {}>({\n\t\ttransaction,\n\t\tsigner,\n\t\tadditionalSignatures = [],\n\t\t...input\n\t}: SuiClientTypes.SignAndExecuteTransactionOptions<Include>): Promise<\n\t\tSuiClientTypes.TransactionResult<Include>\n\t> {\n\t\tlet transactionBytes;\n\n\t\tif (transaction instanceof Uint8Array) {\n\t\t\ttransactionBytes = transaction;\n\t\t} else {\n\t\t\ttransaction.setSenderIfNotSet(signer.toSuiAddress());\n\t\t\ttransactionBytes = await transaction.build({ client: this });\n\t\t}\n\n\t\tconst { signature } = await signer.signTransaction(transactionBytes);\n\n\t\treturn this.executeTransaction({\n\t\t\ttransaction: transactionBytes,\n\t\t\tsignatures: [signature, ...additionalSignatures],\n\t\t\t...input,\n\t\t});\n\t}\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"core.mjs","names":["bcs"],"sources":["../../src/client/core.ts"],"sourcesContent":["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { TypeTagSerializer } from '../bcs/type-tag-serializer.js';\nimport type { TransactionPlugin } from '../transactions/index.js';\nimport { deriveDynamicFieldID } from '../utils/dynamic-fields.js';\nimport { normalizeStructTag, parseStructTag, SUI_ADDRESS_LENGTH } from '../utils/sui-types.js';\nimport { BaseClient } from './client.js';\nimport type { ClientWithExtensions, SuiClientTypes } from './types.js';\nimport { MvrClient } from './mvr.js';\nimport { bcs } from '../bcs/index.js';\n\nexport type ClientWithCoreApi = ClientWithExtensions<{\n\tcore: CoreClient;\n}>;\n\nexport interface CoreClientOptions extends SuiClientTypes.SuiClientOptions {\n\tbase: BaseClient;\n\tmvr?: SuiClientTypes.MvrOptions;\n}\n\nconst DEFAULT_MVR_URLS: Record<string, string> = {\n\tmainnet: 'https://mainnet.mvr.mystenlabs.com',\n\ttestnet: 'https://testnet.mvr.mystenlabs.com',\n};\n\nexport abstract class CoreClient extends BaseClient implements SuiClientTypes.TransportMethods {\n\tcore = this;\n\tmvr: SuiClientTypes.MvrMethods;\n\n\tconstructor(options: CoreClientOptions) {\n\t\tsuper(options);\n\n\t\tthis.mvr = new MvrClient({\n\t\t\tcache: this.cache.scope('core.mvr'),\n\t\t\turl: options.mvr?.url ?? DEFAULT_MVR_URLS[this.network],\n\t\t\tpageSize: options.mvr?.pageSize,\n\t\t\toverrides: options.mvr?.overrides,\n\t\t});\n\t}\n\n\tabstract getObjects<Include extends SuiClientTypes.ObjectInclude = {}>(\n\t\toptions: SuiClientTypes.GetObjectsOptions<Include>,\n\t): Promise<SuiClientTypes.GetObjectsResponse<Include>>;\n\n\tasync getObject<Include extends SuiClientTypes.ObjectInclude = {}>(\n\t\toptions: SuiClientTypes.GetObjectOptions<Include>,\n\t): Promise<SuiClientTypes.GetObjectResponse<Include>> {\n\t\tconst { objectId } = options;\n\t\tconst {\n\t\t\tobjects: [result],\n\t\t} = await this.getObjects({\n\t\t\tobjectIds: [objectId],\n\t\t\tsignal: options.signal,\n\t\t\tinclude: options.include,\n\t\t});\n\t\tif (result instanceof Error) {\n\t\t\tthrow result;\n\t\t}\n\t\treturn { object: result };\n\t}\n\n\tabstract listCoins(\n\t\toptions: SuiClientTypes.ListCoinsOptions,\n\t): Promise<SuiClientTypes.ListCoinsResponse>;\n\n\tabstract listOwnedObjects<Include extends SuiClientTypes.ObjectInclude = {}>(\n\t\toptions: SuiClientTypes.ListOwnedObjectsOptions<Include>,\n\t): Promise<SuiClientTypes.ListOwnedObjectsResponse<Include>>;\n\n\tabstract getBalance(\n\t\toptions: SuiClientTypes.GetBalanceOptions,\n\t): Promise<SuiClientTypes.GetBalanceResponse>;\n\n\tabstract listBalances(\n\t\toptions: SuiClientTypes.ListBalancesOptions,\n\t): Promise<SuiClientTypes.ListBalancesResponse>;\n\n\tabstract getCoinMetadata(\n\t\toptions: SuiClientTypes.GetCoinMetadataOptions,\n\t): Promise<SuiClientTypes.GetCoinMetadataResponse>;\n\n\tabstract getTransaction<Include extends SuiClientTypes.TransactionInclude = {}>(\n\t\toptions: SuiClientTypes.GetTransactionOptions<Include>,\n\t): Promise<SuiClientTypes.TransactionResult<Include>>;\n\n\tabstract executeTransaction<Include extends SuiClientTypes.TransactionInclude = {}>(\n\t\toptions: SuiClientTypes.ExecuteTransactionOptions<Include>,\n\t): Promise<SuiClientTypes.TransactionResult<Include>>;\n\n\tabstract simulateTransaction<Include extends SuiClientTypes.SimulateTransactionInclude = {}>(\n\t\toptions: SuiClientTypes.SimulateTransactionOptions<Include>,\n\t): Promise<SuiClientTypes.SimulateTransactionResult<Include>>;\n\n\tabstract getReferenceGasPrice(\n\t\toptions?: SuiClientTypes.GetReferenceGasPriceOptions,\n\t): Promise<SuiClientTypes.GetReferenceGasPriceResponse>;\n\n\tabstract getCurrentSystemState(\n\t\toptions?: SuiClientTypes.GetCurrentSystemStateOptions,\n\t): Promise<SuiClientTypes.GetCurrentSystemStateResponse>;\n\n\tabstract getProtocolConfig(\n\t\toptions?: SuiClientTypes.GetProtocolConfigOptions,\n\t): Promise<SuiClientTypes.GetProtocolConfigResponse>;\n\n\tabstract getChainIdentifier(\n\t\toptions?: SuiClientTypes.GetChainIdentifierOptions,\n\t): Promise<SuiClientTypes.GetChainIdentifierResponse>;\n\n\tabstract listDynamicFields(\n\t\toptions: SuiClientTypes.ListDynamicFieldsOptions,\n\t): Promise<SuiClientTypes.ListDynamicFieldsResponse>;\n\n\tabstract resolveTransactionPlugin(): TransactionPlugin;\n\n\tabstract verifyZkLoginSignature(\n\t\toptions: SuiClientTypes.VerifyZkLoginSignatureOptions,\n\t): Promise<SuiClientTypes.ZkLoginVerifyResponse>;\n\n\tabstract getMoveFunction(\n\t\toptions: SuiClientTypes.GetMoveFunctionOptions,\n\t): Promise<SuiClientTypes.GetMoveFunctionResponse>;\n\n\tabstract defaultNameServiceName(\n\t\toptions: SuiClientTypes.DefaultNameServiceNameOptions,\n\t): Promise<SuiClientTypes.DefaultNameServiceNameResponse>;\n\n\tasync getDynamicField(\n\t\toptions: SuiClientTypes.GetDynamicFieldOptions,\n\t): Promise<SuiClientTypes.GetDynamicFieldResponse> {\n\t\tconst normalizedNameType = TypeTagSerializer.parseFromStr(\n\t\t\t(\n\t\t\t\tawait this.core.mvr.resolveType({\n\t\t\t\t\ttype: options.name.type,\n\t\t\t\t})\n\t\t\t).type,\n\t\t);\n\t\tconst fieldId = deriveDynamicFieldID(options.parentId, normalizedNameType, options.name.bcs);\n\t\tconst {\n\t\t\tobjects: [fieldObject],\n\t\t} = await this.getObjects({\n\t\t\tobjectIds: [fieldId],\n\t\t\tsignal: options.signal,\n\t\t\tinclude: {\n\t\t\t\tpreviousTransaction: true,\n\t\t\t\tcontent: true,\n\t\t\t},\n\t\t});\n\n\t\tif (fieldObject instanceof Error) {\n\t\t\tthrow fieldObject;\n\t\t}\n\n\t\tconst fieldType = parseStructTag(fieldObject.type);\n\t\tconst content = await fieldObject.content;\n\n\t\tconst nameTypeParam = fieldType.typeParams[0];\n\t\tconst isDynamicObject =\n\t\t\ttypeof nameTypeParam !== 'string' &&\n\t\t\tnameTypeParam.module === 'dynamic_object_field' &&\n\t\t\tnameTypeParam.name === 'Wrapper';\n\n\t\tconst valueBcs = content.slice(SUI_ADDRESS_LENGTH + options.name.bcs.length);\n\n\t\tconst valueType =\n\t\t\ttypeof fieldType.typeParams[1] === 'string'\n\t\t\t\t? fieldType.typeParams[1]\n\t\t\t\t: normalizeStructTag(fieldType.typeParams[1]);\n\n\t\treturn {\n\t\t\tdynamicField: {\n\t\t\t\t$kind: isDynamicObject ? 'DynamicObject' : 'DynamicField',\n\t\t\t\tfieldId: fieldObject.objectId,\n\t\t\t\tdigest: fieldObject.digest,\n\t\t\t\tversion: fieldObject.version,\n\t\t\t\ttype: fieldObject.type,\n\t\t\t\tpreviousTransaction: fieldObject.previousTransaction,\n\t\t\t\tname: {\n\t\t\t\t\ttype:\n\t\t\t\t\t\ttypeof nameTypeParam === 'string' ? nameTypeParam : normalizeStructTag(nameTypeParam),\n\t\t\t\t\tbcs: options.name.bcs,\n\t\t\t\t},\n\t\t\t\tvalue: {\n\t\t\t\t\ttype: valueType,\n\t\t\t\t\tbcs: valueBcs,\n\t\t\t\t},\n\t\t\t\tchildId: isDynamicObject ? bcs.Address.parse(valueBcs) : undefined,\n\t\t\t} as SuiClientTypes.GetDynamicFieldResponse['dynamicField'],\n\t\t};\n\t}\n\n\tasync getDynamicObjectField<Include extends SuiClientTypes.ObjectInclude = {}>(\n\t\toptions: SuiClientTypes.GetDynamicObjectFieldOptions<Include>,\n\t): Promise<SuiClientTypes.GetDynamicObjectFieldResponse<Include>> {\n\t\tconst resolvedNameType = (\n\t\t\tawait this.core.mvr.resolveType({\n\t\t\t\ttype: options.name.type,\n\t\t\t})\n\t\t).type;\n\t\tconst wrappedType = `0x2::dynamic_object_field::Wrapper<${resolvedNameType}>`;\n\n\t\tconst { dynamicField } = await this.getDynamicField({\n\t\t\tparentId: options.parentId,\n\t\t\tname: {\n\t\t\t\ttype: wrappedType,\n\t\t\t\tbcs: options.name.bcs,\n\t\t\t},\n\t\t\tsignal: options.signal,\n\t\t});\n\n\t\tconst { object } = await this.getObject({\n\t\t\tobjectId: dynamicField.childId!,\n\t\t\tsignal: options.signal,\n\t\t\tinclude: options.include,\n\t\t});\n\n\t\treturn { object };\n\t}\n\n\tasync waitForTransaction<Include extends SuiClientTypes.TransactionInclude = {}>(\n\t\toptions: SuiClientTypes.WaitForTransactionOptions<Include>,\n\t): Promise<SuiClientTypes.TransactionResult<Include>> {\n\t\tconst { signal, timeout = 60 * 1000, pollSchedule, include } = options;\n\n\t\tconst digest =\n\t\t\t'result' in options && options.result\n\t\t\t\t? (options.result.Transaction ?? options.result.FailedTransaction)!.digest\n\t\t\t\t: options.digest;\n\n\t\tconst abortSignal = signal\n\t\t\t? AbortSignal.any([AbortSignal.timeout(timeout), signal])\n\t\t\t: AbortSignal.timeout(timeout);\n\n\t\tconst abortPromise = new Promise((_, reject) => {\n\t\t\tabortSignal.addEventListener('abort', () => reject(abortSignal.reason));\n\t\t});\n\n\t\tabortPromise.catch(() => {\n\t\t\t// Swallow unhandled rejections that might be thrown after early return\n\t\t});\n\n\t\t// Default schedule tuned to testnet measurements:\n\t\t// - Fullnode (gRPC/JSON-RPC): p50=130ms, p95=330ms\n\t\t// - GraphQL indexer: p50=1300ms, p95=1430ms\n\t\t// After schedule exhausted, repeats the last interval.\n\t\tconst schedule = pollSchedule ?? [0, 300, 600, 1500, 3500];\n\t\tconst t0 = Date.now();\n\t\tlet scheduleIndex = 0;\n\t\tconst lastInterval =\n\t\t\tschedule.length > 0\n\t\t\t\t? schedule[schedule.length - 1] - (schedule[schedule.length - 2] ?? 0)\n\t\t\t\t: 2_000;\n\n\t\twhile (true) {\n\t\t\tif (scheduleIndex < schedule.length) {\n\t\t\t\tconst remaining = t0 + schedule[scheduleIndex] - Date.now();\n\t\t\t\tscheduleIndex++;\n\t\t\t\tif (remaining > 0) {\n\t\t\t\t\tawait Promise.race([\n\t\t\t\t\t\tnew Promise((resolve) => setTimeout(resolve, remaining)),\n\t\t\t\t\t\tabortPromise,\n\t\t\t\t\t]);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tawait Promise.race([\n\t\t\t\t\tnew Promise((resolve) => setTimeout(resolve, lastInterval)),\n\t\t\t\t\tabortPromise,\n\t\t\t\t]);\n\t\t\t}\n\n\t\t\tabortSignal.throwIfAborted();\n\t\t\ttry {\n\t\t\t\treturn await this.getTransaction({\n\t\t\t\t\tdigest,\n\t\t\t\t\tinclude,\n\t\t\t\t\tsignal: abortSignal,\n\t\t\t\t});\n\t\t\t} catch {}\n\t\t}\n\t}\n\n\tasync signAndExecuteTransaction<Include extends SuiClientTypes.TransactionInclude = {}>({\n\t\ttransaction,\n\t\tsigner,\n\t\tadditionalSignatures = [],\n\t\t...input\n\t}: SuiClientTypes.SignAndExecuteTransactionOptions<Include>): Promise<\n\t\tSuiClientTypes.TransactionResult<Include>\n\t> {\n\t\tlet transactionBytes;\n\n\t\tif (transaction instanceof Uint8Array) {\n\t\t\ttransactionBytes = transaction;\n\t\t} else {\n\t\t\ttransaction.setSenderIfNotSet(signer.toSuiAddress());\n\t\t\ttransactionBytes = await transaction.build({ client: this });\n\t\t}\n\n\t\tconst { signature } = await signer.signTransaction(transactionBytes);\n\n\t\treturn this.executeTransaction({\n\t\t\ttransaction: transactionBytes,\n\t\t\tsignatures: [signature, ...additionalSignatures],\n\t\t\t...input,\n\t\t});\n\t}\n}\n"],"mappings":"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"}
@@ -350,12 +350,16 @@ declare namespace SuiClientTypes {
350
350
  type WaitForTransactionOptions<Include extends TransactionInclude = {}> = WaitForTransactionByDigest<Include> | WaitForTransactionByResult<Include>;
351
351
  interface WaitForTransactionByDigest<Include extends TransactionInclude = {}> extends GetTransactionOptions<Include> {
352
352
  timeout?: number;
353
+ /** Absolute times (ms from start) to poll, e.g. [0, 300, 600, 1500]. After exhausted, repeats the last interval. */
354
+ pollSchedule?: number[];
353
355
  result?: never;
354
356
  }
355
357
  interface WaitForTransactionByResult<Include extends TransactionInclude = {}> extends CoreClientMethodOptions {
356
358
  result: TransactionResult<any>;
357
359
  include?: Include & TransactionInclude;
358
360
  timeout?: number;
361
+ /** Absolute times (ms from start) to poll, e.g. [0, 300, 600, 1500]. After exhausted, repeats the last interval. */
362
+ pollSchedule?: number[];
359
363
  digest?: never;
360
364
  }
361
365
  interface ExecuteTransactionOptions<Include extends TransactionInclude = {}> extends CoreClientMethodOptions {
@@ -387,6 +391,18 @@ declare namespace SuiClientTypes {
387
391
  interface GetCurrentSystemStateResponse {
388
392
  systemState: SystemStateInfo;
389
393
  }
394
+ interface GetProtocolConfigOptions extends CoreClientMethodOptions {}
395
+ interface TransportMethods {
396
+ getProtocolConfig?: (options?: GetProtocolConfigOptions) => Promise<GetProtocolConfigResponse>;
397
+ }
398
+ interface GetProtocolConfigResponse {
399
+ protocolConfig: ProtocolConfig;
400
+ }
401
+ interface ProtocolConfig {
402
+ protocolVersion: string;
403
+ featureFlags: Record<string, boolean>;
404
+ attributes: Record<string, string | null>;
405
+ }
390
406
  interface GetChainIdentifierOptions extends CoreClientMethodOptions {}
391
407
  interface TransportMethods {
392
408
  getChainIdentifier?: (options?: GetChainIdentifierOptions) => Promise<GetChainIdentifierResponse>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.mts","names":[],"sources":["../../src/client/types.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;KAaY,gCACD,aAAa;iBAIR;8BACa,MAAM;;KAGvB,qCAAqC,aAAa,cAAc,OAAO;AATvE,kBAWK,cAAA,CAXgB;EACtB,KAAA,OAAA,GAAA,SAAA,GAAA,SAAA,GAAA,QAAA,GAAA,UAAA,GAAA,CAAA,MAAA,GAAA,CAAA,CAAA,CAAA;EAAa,UAAA,gBAAA,CAAA;IAIR,OAAA,EAUL,OAVK;IACa,IAAA,CAAA,EAUpB,UAVoB;IAAM,KAAA,CAAA,EAWzB,WAXyB;EAAS;EAGhC,UAAA,UAAA,CAAA;IAAqC,GAAA,CAAA,EAAA,MAAA;IAAa,QAAA,CAAA,EAAA,MAAA;IAAc,SAAA,CAAA,EAAA;MAAO,QAAA,CAAA,EAerE,MAfqE,CAAA,MAAA,EAAA,MAAA,CAAA;MAAC,KAAA,CAAA,EAgBzE,MAhByE,CAAA,MAAA,EAAA,MAAA,CAAA;IAEnE,CAAA;EAIN;EACF,UAAA,uBAAA,CAAA;IACC,MAAA,CAAA,EAaC,WAbD;EAOI;EACH;EAKA,UAAA,gBAAA,CAAA;IAKoB,UAAA,EAAA,CAAA,gBAAA,aAAA,GAAA,CAAA,CAAA,CAAA,CAAA,OAAA,EACnB,iBADmB,CACD,OADC,CAAA,EAAA,GAExB,OAFwB,CAEhB,kBAFgB,CAEG,OAFH,CAAA,CAAA;IACD,gBAAA,EAAA,CAAA,gBAEO,aAFP,GAAA,CAAA,CAAA,CAAA,CAAA,OAAA,EAGlB,uBAHkB,CAGM,OAHN,CAAA,EAAA,GAIvB,OAJuB,CAIf,wBAJe,CAIU,OAJV,CAAA,CAAA;IAAlB,SAAA,EAAA,CAAA,OAAA,EAKW,gBALX,EAAA,GAKgC,OALhC,CAKwC,iBALxC,CAAA;IACsB,iBAAA,EAAA,CAAA,OAAA,EAKH,wBALG,EAAA,GAK0B,OAL1B,CAKkC,yBALlC,CAAA;IAAnB,eAAA,EAAA,CAAA,OAAA,EAMc,sBANd,EAAA,GAMyC,OANzC,CAMiD,uBANjD,CAAA;EAAR;EAC8B,UAAA,aAAA,CAAA;IACD;;;;;;IAEgB,OAAA,CAAA,EAAA,OAAA;IAAR;;;IACgB,mBAAA,CAAA,EAAA,OAAA;IAC/B;;;;;;;IAgDX,SAAA,CAAA,EAAA,OAAA;IAGN;;;;;;;IAa+B,IAAA,CAAA,EAAA,OAAA;IAQQ;;;;;;IAYrB,OAAA,CAAA,EAAA,OAAA;EAG0B;EACvC,UAAA,iBAAA,CAAA,gBA/CC,aA+CD,GAAA,CAAA,CAAA,CAAA,SA9CN,uBA8CM,CAAA;IAAP,SAAA,EAAA,MAAA,EAAA;IAGqD,OAAA,CAAA,EA/CnD,OA+CmD,GA/CzC,aA+CyC;EAC7C;EAAP,UAAA,gBAAA,CAAA,gBA5CO,aA4CP,GAAA,CAAA,CAAA,CAAA,SA3CA,uBA2CA,CAAA;IAMA,QAAA,EAAA,MAAA;IAK8B,OAAA,CAAA,EApD7B,OAoD6B,GApDnB,aAoDmB;EAIhC;EAGE,UAAA,uBAAA,CAAA,gBAvDO,aAuDP,GAAA,CAAA,CAAA,CAAA,SAtDA,uBAsDA,CAAA;IAA+C,KAAA,EAAA,MAAA;IAAX,KAAA,CAAA,EAAA,MAAA;IACxB,MAAA,CAAA,EAAA,MAAA,GAAA,IAAA;IAEV,IAAA,CAAA,EAAA,MAAA;IAAiD,OAAA,CAAA,EApDlD,OAoDkD,GApDxC,aAoDwC;EAAX;EAQ3C,UAAA,gBAAA,SAzDmC,uBAyDnC,CAAA;IAAiC,KAAA,EAAA,MAAA;IAE9B;IAAoC,QAAA,CAAA,EAAA,MAAA;IAKrC,KAAA,CAAA,EAAA,MAAA;IAEA,MAAA,CAAA,EAAA,MAAA,GAAA,IAAA;EAOD;EAQD,UAAA,wBAAA,SAzE2C,uBAyE3C,CAAA;IAIoB,QAAA,EAAA,MAAA;IACnB,KAAA,CAAA,EAAA,MAAA;IASQ,MAAA,CAAA,EAAA,MAAA,GAAA,IAAA;EAID;EAIE,UAAA,sBAAA,SAzF+B,uBAyF/B,CAAA;IAGV,QAAA,EAAA,MAAA;IACI,IAAA,EA3FJ,gBA2FI;EAAU;EAHX,UAAA,kBAAA,CAAA,oBArF8C,aAqF9C,GAAA,CAAA,CAAA,CAAA,CAAA;IAMyD,OAAA,EAAA,CA1FxD,MA0FwD,CA1FjD,OA0FiD,CAAA,GA1FtC,KA0FsC,CAAA,EAAA;EACnD;EAAP,UAAA,iBAAA,CAAA,oBAxF8C,aAwF9C,GAAA,CAAA,CAAA,CAAA,CAAA;IAKH,MAAA,EA5FG,MA4FH,CA5FU,OA4FV,CAAA;EAKA;EAKiB,UAAA,wBAAA,CAAA,oBAnGuC,aAmGvC,GAAA,CAAA,CAAA,CAAA,CAAA;IAA8B,OAAA,EAlG3C,MAkG2C,CAlGpC,OAkGoC,CAAA,EAAA;IAAR,WAAA,EAAA,OAAA;IACpB,MAAA,EAAA,MAAA,GAAA,IAAA;EAAgC;EAAR,UAAA,iBAAA,CAAA;IAGN,OAAA,EAhGjC,IAgGiC,EAAA;IAcjC,WAAA,EAAA,OAAA;IAGmC,MAAA,EAAA,MAAA,GAAA,IAAA;EAOlC;EAOiB,UAAA,MAAA,CAAA,gBA1HY,aA0HZ,GAAA,CAAA,CAAA,CAAA,CAAA;IAAmC,QAAA,EAAA,MAAA;IAAR,OAAA,EAAA,MAAA;IAGP,MAAA,EAAA,MAAA;IAcjC,KAAA,EAvIP,WAuIO;IAKmB,IAAA,EAAA,MAAA;IACD;IAAtB,OAAA,EA1ID,OA0IC,SAAA;MACqB,OAAA,EAAA,IAAA;IAAlB,CAAA,GA3IgC,UA2IhC,CA3I2C,WA2I3C,CAAA,GAAA,SAAA;IAAR,mBAAA,EA1IgB,OA0IhB,SAAA;MACgC,mBAAA,EAAA,IAAA;IACD,CAAA,GAAA,MAAA,GAAA,IAAA,GAAA,SAAA;IAA1B;IACqB,SAAA,EA3IpB,OA2IoB,SAAA;MAAlB,SAAA,EAAA,IAAA;IAAR,CAAA,GA3I4C,UA2I5C,CA3IuD,WA2IvD,CAAA,GAAA,SAAA;IACiC;;;;;;;IAMU,IAAA,EA1I1C,OA0I0C,SAAA;MAIxC,IAAA,EAAA,IAAA;IACQ,CAAA,GA/IuB,MA+IvB,CAAA,MAAA,EAAA,OAAA,CAAA,GAAA,IAAA,GAAA,SAAA;IAA2C;IAClD,OAAA,EA9IA,OA8IA,SAAA;MAAoC,OAAA,EAAA,IAAA;IACrC,CAAA,GA/IqC,OA+IrC,GAAA,IAAA,GAAA,SAAA;EAAmC;EAC9B,UAAA,OAAA,CAAA;IAAwC;IACxC,MAAA,EA5IL,MA4IK,CAAA,MAAA,EAAA,MAAA,CAAA,GAAA,IAAA;IAAwC;IAChD,MAAA,EA3IG,MA2IH,CAAA,MAAA,EAAA,MAAA,CAAA,GAAA,IAAA;EAAgC;EAGQ,UAAA,IAAA,CAAA;IAGlB,QAAA,EAAA,MAAA;IAAZ,OAAA,EAAA,MAAA;IAMkB,MAAA,EAAA,MAAA;IAAZ,KAAA,EAhJd,WAgJc;IAGgC,IAAA,EAAA,MAAA;IAG1B,OAAA,EAAA,MAAA;EAAZ;EAEG,KAAA,iBAAA,GAAA;IAA2C,OAAA,EAAA,MAAA;IAK5B,IAAA,EAAA,MAAA;IAAZ,IAAA,EArJf,gBAqJe;IACH,SAAA,EAAA,MAAA;EAA2C,CAAA,GAAA,CAAA;IAkBV,KAAA,EAAA,cAAA;IAMrC,OAAA,CAAA,EAAA,KAAA;EACK,CAAA,GAAA;IAId,KAAA,EAAA,eAAA;IASmC,OAAA,EAAA,MAAA;EAGxB,CAAA,CAAA;EAGN,KAAA,YAAA,GA9LgB,iBA8LhB,GAAA;IAAU,KAAA,EA7Lb,iBA6La;IAFX,OAAA,EAAA,MAAA;IAK4C,MAAA,EAAA,MAAA;IACxB,mBAAA,EAAA,MAAA,GAAA,IAAA;EAA3B,CAAA;EAC2B,UAAA,yBAAA,CAAA;IAA3B,WAAA,EAAA,OAAA;IAGc,MAAA,EAAA,MAAA,GAAA,IAAA;IACe,aAAA,EA7LhB,iBA6LgB,EAAA;EAAtB;EAMO,UAAA,uBAAA,CAAA;IAER,YAAA,EAjMM,YAiMN;EACE;EAAU,UAAA,4BAAA,CAAA,gBA9LJ,aA8LI,GAAA,CAAA,CAAA,CAAA,SA7LX,uBA6LW,CAAA;IAFX,QAAA,EAAA,MAAA;IAQO,IAAA,EAjMV,gBAiMU;IAEH,OAAA,CAAA,EAlMH,OAkMG,GAlMO,aAkMP;EAEH;EAAU,UAAA,6BAAA,CAAA,oBAjM8C,aAiM9C,GAAA,CAAA,CAAA,CAAA,CAAA;IAHX,MAAA,EA7LD,MA6LC,CA7LM,OA6LN,CAAA;EAOO;EAEH,UAAA,gBAAA,CAAA;IAAa,IAAA,EAAA,MAAA;IAClB,GAAA,EAlMH,UAkMG;EAEE;EAAU,UAAA,iBAAA,CAAA;IAJX,IAAA,EAAA,MAAA;IAQO,GAAA,EAnMX,UAmMW;EAEH;EAAa;EAChB,UAAA,gBAAA,CAAA;IAAU,UAAA,EAAA,CAAA,OAAA,EAjME,iBAiMF,EAAA,GAjMwB,OAiMxB,CAjMgC,kBAiMhC,CAAA;IAFX,YAAA,EAAA,CAAA,OAAA,EA9Le,mBA8Lf,EAAA,GA9LuC,OA8LvC,CA9L+C,oBA8L/C,CAAA;EAK2C;EAIzC,UAAA,iBAAA,SApM+B,uBAoM/B,CAAA;IACE,KAAA,EAAA,MAAA;IAAR;IAOgD,QAAA,CAAA,EAAA,MAAA;EAI1C;EACE,UAAA,OAAA,CAAA;IAAR,QAAA,EAAA,MAAA;IAIQ,OAAA,EAAA,MAAA;IAGqC,WAAA,EAAA,MAAA;IAIvC,cAAA,EAAA,MAAA;EACE;EAAR,UAAA,kBAAA,CAAA;IAmBO,OAAA,EAlOH,OAkOG;EACC;EACC,UAAA,mBAAA,SAjO8B,uBAiO9B,CAAA;IA0BwC,KAAA,EAAA,MAAA;IAc5C,KAAA,CAAA,EAAA,MAAA;IACG,MAAA,CAAA,EAAA,MAAA,GAAA,IAAA;EAAR;EAIiD,UAAA,oBAAA,CAAA;IAY5C,QAAA,EAnRA,OAmRA,EAAA;IACG,WAAA,EAAA,OAAA;IAAR,MAAA,EAAA,MAAA,GAAA,IAAA;EAMA;EAIqB;EAAqC,UAAA,gBAAA,CAAA;IAAR,eAAA,EAAA,CAAA,OAAA,EAvR5B,sBAuR4B,EAAA,GAvRD,OAuRC,CAvRO,uBAuRP,CAAA;EAChC;EAAkC,UAAA,sBAAA,SArRV,uBAqRU,CAAA;IAAR,QAAA,EAAA,MAAA;EAC9B;EAA8B,UAAA,YAAA,CAAA;IAAR,EAAA,EAAA,MAAA,GAAA,IAAA;IAGQ,QAAA,EAAA,MAAA;IAIH,IAAA,EAAA,MAAA;IAIJ,MAAA,EAAA,MAAA;IAchC,WAAA,EAAA,MAAA;IAMH,OAAA,EAAA,MAAA,GAAA,IAAA;EAWoB;EAAmC,UAAA,uBAAA,CAAA;IAAR,YAAA,EAlTxC,YAkTwC,GAAA,IAAA;EAGR;EAKrC;EAOA,UAAA,gBAAA,CAAA;IAKE,cAAA,EAAA,CAAA,gBAjUsB,kBAiUtB,GAAA,CAAA,CAAA,CAAA,CAAA,OAAA,EAhUD,qBAgUC,CAhUqB,OAgUrB,CAAA,EAAA,GA/TN,OA+TM,CA/TE,iBA+TF,CA/ToB,OA+TpB,CAAA,CAAA;IACA,kBAAA,EAAA,CAAA,gBA/T0B,kBA+T1B,GAAA,CAAA,CAAA,CAAA,CAAA,OAAA,EA9TD,yBA8TC,CA9TyB,OA8TzB,CAAA,EAAA,GA7TN,OA6TM,CA7TE,iBA6TF,CA7ToB,OA6TpB,CAAA,CAAA;IAUE,mBAAA,EAAA,CAAA,gBAtUyB,0BAsUzB,GAAA,CAAA,CAAA,CAAA,CAAA,OAAA,EArUH,0BAqUG,CArUwB,OAqUxB,CAAA,EAAA,GApUR,OAoUQ,CApUA,yBAoUA,CApU0B,OAoU1B,CAAA,CAAA;IACK,wBAAA,EAAA,GAAA,GApUc,iBAoUd;EACR;EAQG,UAAA,WAAA,CAAA,oBA1UmC,kBA0UnC,GAAA,CAAA,CAAA,CAAA,CAAA;IACK,MAAA,EAAA,MAAA;IACN,UAAA,EAAA,MAAA,EAAA;IAOC,KAAA,EAAA,MAAA,GAAA,IAAA;IAOP,MAAA,EAtVE,eAsVF;IAME,cAAA,EA3VQ,OA2VR,SAAA;MAGuC,cAAA,EAAA,IAAA;IAOrC,CAAA,GArWiD,aAqWjD,EAAA,GAAA,SAAA;IAGqC,OAAA,EAvWtC,OAuWsC,SAAA;MAOrC,OAAA,EAAA,IAAA;IASE,CAAA,GAvXiC,kBAuXjC,GAAA,SAAA;IAEI,MAAA,EAxXR,OAwXQ,SAAA;MACJ,MAAA,EAAA,IAAA;IACH,CAAA,GA1XkC,KA0XlC,EAAA,GAAA,SAAA;IAKE,WAAA,EA9XE,OA8XF,SAAA;MACL,WAAA,EAAA,IAAA;IASI,CAAA,GAxY2C,MAwY3C,CAAA,MAAA,EAAA,MAAA,CAAA,GAAA,SAAA;IAMS,WAAA,EA7YN,OA6YM,SAAA;MAsEjB,WAAA,EAAA,IAAA;IACA,CAAA,GApdmD,eAodnD,GAAA,SAAA;IACA,GAAA,EApdG,OAodH,SAAA;MACA,GAAA,EAAA,IAAA;IACA,CAAA,GAtdmC,UAsdnC,GAAA,SAAA;EACA;EAKG,KAAA,iBAAA,CAAA,gBAzdwC,kBAydxC,GAAA,CAAA,CAAA,CAAA,GAAA;IAEG,KAAA,EAAA,aAAA;IACC,WAAA,EAzdM,WAydN,CAzdkB,OAydlB,CAAA;IAEE,iBAAA,CAAA,EAAA,KAAA;EAIK,CAAA,GAAA;IACW,KAAA,EAAA,mBAAA;IASf,WAAA,CAAA,EAAA,KAAA;IAIC,iBAAA,EAveQ,WAueR,CAveoB,OAuepB,CAAA;EAmBJ,CAAA;EAqBJ,KAAA,yBAAA,CAAA,gBA5gBgD,0BA4gBhD,GAAA,CAAA,CAAA,CAAA,GAAA;IAQC,KAAA,EAAA,aAAA;IAKK,WAAA,EAthBI,WAshBJ,CAthBgB,OAshBhB,CAAA;IACG,iBAAA,CAAA,EAAA,KAAA;IAkEH,cAAA,EAvlBO,OAulBP,SAAA;MACA,cAAA,EAAA,IAAA;IACW,CAAA,GAzlBuC,aAylBvC,EAAA,GAAA,SAAA;EACH,CAAA,GAAA;IACE,KAAA,EAAA,mBAAA;IACT,WAAA,CAAA,EAAA,KAAA;IACO,iBAAA,EAxlBE,WAwlBF,CAxlBc,OAwlBd,CAAA;IACD,cAAA,EAxlBA,OAwlBA,SAAA;MACH,cAAA,EAAA,IAAA;IATZ,CAAA,GAhlB0D,aAglB1D,EAAA,GAAA,SAAA;EAAe,CAAA;;;;;;;;;;;;;;;+CA9jBiC;;;;;kBAMrC;uBACK;;;SAId;;;;;;;oCASmC;kDAGxB,iCACP;;cAEC,UAAU;;iDAGiC,2BACnD,2BAA2B,WAC3B,2BAA2B;uDAGb,iCACP,sBAAsB;;;;uDAMf,iCACP;YACD;cACE,UAAU;;;;sDAMJ,iCACP;iBACI;;cAEH,UAAU;;6DAIJ,iCACP;iBACI,aAAa;YAClB;;cAEE,UAAU;;uDAIJ,yCACP;iBACI,aAAa;cAChB,UAAU;;gDAGgC;;sCAIzC,gCACN,QAAQ;;;;;iDAOwC;;uCAI1C,iCACN,QAAQ;;;iBAIA;;8CAGqC;;oCAIvC,8BACN,QAAQ;;;;;;;;;;;;;;;;;gBAmBD;iBACC;kBACC;;;;;;;;;;;;;;;;;;;;;;kDA0BwC;;;;;;;;;;;sCAc5C,kCACL,QAAQ;;;kDAIyC;;;;;;;;;sCAY5C,kCACL,QAAQ;;;;SAMR;;;8BAIqB,6BAA6B,QAAQ;2BACxC,0BAA0B,QAAQ;uBACtC,sBAAsB,QAAQ;;6CAGA;;;0CAIH;;;sCAIJ;;;;;;;;;;;cAchC;;;WAMH;;;;;;+BAWoB,2BAA2B,QAAQ;;0CAGhB;;;;aAKrC;;;;;;aAOA;;;;eAKE;eACA;;;;;;;;eAUE;oBACK;YACR;;;;;;;eAQG;oBACK;cACN;;;;;iBAOC;;;;;;UAOP;;;;;YAME;;2CAGuC;;;;;;cAOrC;;2CAGqC;;;;;;cAOrC;;;;;;;gBASE;;oBAEI;gBACJ;aACH;;;;eAKE;UACL;;;;;;YASI;;;;;sBAMS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAsEjB,eACA,cACA,cACA,iBACA,wBACA;;;SAKG;;YAEG;aACC;;eAEE;;;;oBAIK;+BACW;;;;;;;;gBASf;;;;iBAIC;;;;;;;;;;;;;;WAmBJ;;;;;;;;;;;;;SAqBJ;;;;;;;;UAQC;;;;eAKK;kBACG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAiEX;eACQ;eACA;0BACW;uBACH;yBACE;gBACT;uBACO;sBACD;mBACH"}
1
+ {"version":3,"file":"types.d.mts","names":[],"sources":["../../src/client/types.ts"],"sourcesContent":[],"mappings":"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"}
@@ -25,6 +25,7 @@ declare class GraphQLCoreClient extends CoreClient {
25
25
  executeTransaction<Include extends SuiClientTypes.TransactionInclude = {}>(options: SuiClientTypes.ExecuteTransactionOptions<Include>): Promise<SuiClientTypes.TransactionResult<Include>>;
26
26
  simulateTransaction<Include extends SuiClientTypes.SimulateTransactionInclude = {}>(options: SuiClientTypes.SimulateTransactionOptions<Include>): Promise<SuiClientTypes.SimulateTransactionResult<Include>>;
27
27
  getReferenceGasPrice(): Promise<SuiClientTypes.GetReferenceGasPriceResponse>;
28
+ getProtocolConfig(): Promise<SuiClientTypes.GetProtocolConfigResponse>;
28
29
  getCurrentSystemState(): Promise<SuiClientTypes.GetCurrentSystemStateResponse>;
29
30
  listDynamicFields(options: SuiClientTypes.ListDynamicFieldsOptions): Promise<SuiClientTypes.ListDynamicFieldsResponse>;
30
31
  verifyZkLoginSignature(options: SuiClientTypes.VerifyZkLoginSignatureOptions): Promise<SuiClientTypes.ZkLoginVerifyResponse>;
@@ -1 +1 @@
1
- {"version":3,"file":"core.d.mts","names":[],"sources":["../../src/graphql/core.ts"],"sourcesContent":[],"mappings":"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"}
1
+ {"version":3,"file":"core.d.mts","names":[],"sources":["../../src/graphql/core.ts"],"sourcesContent":[],"mappings":"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"}
@@ -4,7 +4,7 @@ import { TransactionDataBuilder } from "../transactions/TransactionData.mjs";
4
4
  import { formatMoveAbortMessage, parseTransactionEffectsBcs } from "../client/utils.mjs";
5
5
  import { ObjectError, SimulationError } from "../client/errors.mjs";
6
6
  import { SUI_TYPE_ARG } from "../utils/constants.mjs";
7
- import { DefaultSuinsNameDocument, ExecuteTransactionDocument, ExecutionStatus, GetAllBalancesDocument, GetBalanceDocument, GetChainIdentifierDocument, GetCoinMetadataDocument, GetCoinsDocument, GetCurrentSystemStateDocument, GetMoveFunctionDocument, GetOwnedObjectsDocument, GetReferenceGasPriceDocument, GetTransactionBlockDocument, MultiGetObjectsDocument, ResolveTransactionDocument, SimulateTransactionDocument, VerifyZkLoginSignatureDocument, ZkLoginIntentScope } from "./generated/queries.mjs";
7
+ import { DefaultSuinsNameDocument, ExecuteTransactionDocument, ExecutionStatus, GetAllBalancesDocument, GetBalanceDocument, GetChainIdentifierDocument, GetCoinMetadataDocument, GetCoinsDocument, GetCurrentSystemStateDocument, GetMoveFunctionDocument, GetOwnedObjectsDocument, GetProtocolConfigDocument, GetReferenceGasPriceDocument, GetTransactionBlockDocument, MultiGetObjectsDocument, ResolveTransactionDocument, SimulateTransactionDocument, VerifyZkLoginSignatureDocument, ZkLoginIntentScope } from "./generated/queries.mjs";
8
8
  import { Transaction } from "../grpc/proto/sui/rpc/v2/transaction.mjs";
9
9
  import { grpcTransactionToTransactionData, transactionDataToGrpcTransaction, transactionToGrpcJson } from "../client/transaction-resolver.mjs";
10
10
  import { BalanceChange } from "../grpc/proto/sui/rpc/v2/balance_change.mjs";
@@ -244,6 +244,18 @@ var GraphQLCoreClient = class extends CoreClient {
244
244
  async getReferenceGasPrice() {
245
245
  return { referenceGasPrice: await this.#graphqlQuery({ query: GetReferenceGasPriceDocument }, (result) => result.epoch?.referenceGasPrice) ?? "" };
246
246
  }
247
+ async getProtocolConfig() {
248
+ const result = await this.#graphqlQuery({ query: GetProtocolConfigDocument }, (result$1) => result$1.epoch?.protocolConfigs);
249
+ const featureFlags = {};
250
+ for (const flag of result?.featureFlags ?? []) featureFlags[flag.key] = flag.value;
251
+ const attributes = {};
252
+ for (const config of result?.configs ?? []) attributes[config.key] = config.value ?? null;
253
+ return { protocolConfig: {
254
+ protocolVersion: result?.protocolVersion?.toString() ?? null,
255
+ featureFlags,
256
+ attributes
257
+ } };
258
+ }
247
259
  async getCurrentSystemState() {
248
260
  const result = await this.#graphqlQuery({ query: GetCurrentSystemStateDocument }, (result$1) => result$1.epoch);
249
261
  if (!result) throw new Error("Epoch data not found in response");
@@ -1 +1 @@
1
- {"version":3,"file":"core.mjs","names":["#graphqlClient","#graphqlQuery","result","GrpcTransactionType","TransactionEffectsType","BalanceChangeType"],"sources":["../../src/graphql/core.ts"],"sourcesContent":["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { CoreClient } from '../client/core.js';\nimport type { SuiClientTypes } from '../client/types.js';\nimport { SUI_TYPE_ARG } from '../utils/constants.js';\nimport type { GraphQLQueryOptions, SuiGraphQLClient } from './client.js';\nimport type {\n\tObject_Owner_FieldsFragment,\n\tTransaction_FieldsFragment,\n} from './generated/queries.js';\n\ntype GraphQLExecutionError = NonNullable<\n\tNonNullable<Transaction_FieldsFragment['effects']>['executionError']\n>;\nimport {\n\tDefaultSuinsNameDocument,\n\tExecuteTransactionDocument,\n\tExecutionStatus,\n\tGetAllBalancesDocument,\n\tGetBalanceDocument,\n\tGetChainIdentifierDocument,\n\tGetCoinMetadataDocument,\n\tGetCoinsDocument,\n\tGetCurrentSystemStateDocument,\n\tGetMoveFunctionDocument,\n\tGetOwnedObjectsDocument,\n\tGetReferenceGasPriceDocument,\n\tGetTransactionBlockDocument,\n\tMultiGetObjectsDocument,\n\tResolveTransactionDocument,\n\tSimulateTransactionDocument,\n\tVerifyZkLoginSignatureDocument,\n\tZkLoginIntentScope,\n} from './generated/queries.js';\nimport { ObjectError, SimulationError } from '../client/errors.js';\nimport { chunk, fromBase64, toBase64 } from '@mysten/utils';\nimport { normalizeSuiAddress } from '../utils/sui-types.js';\nimport { formatMoveAbortMessage, parseTransactionEffectsBcs } from '../client/utils.js';\nimport type { OpenMoveTypeSignatureBody, OpenMoveTypeSignature } from './types.js';\nimport {\n\ttransactionDataToGrpcTransaction,\n\ttransactionToGrpcJson,\n\tgrpcTransactionToTransactionData,\n} from '../client/transaction-resolver.js';\nimport { BalanceChange as BalanceChangeType } from '../grpc/proto/sui/rpc/v2/balance_change.js';\nimport { TransactionEffects as TransactionEffectsType } from '../grpc/proto/sui/rpc/v2/effects.js';\nimport { Transaction as GrpcTransactionType } from '../grpc/proto/sui/rpc/v2/transaction.js';\nimport { TransactionDataBuilder } from '../transactions/TransactionData.js';\nimport type { BuildTransactionOptions } from '../transactions/index.js';\n\nexport class GraphQLCoreClient extends CoreClient {\n\t#graphqlClient: SuiGraphQLClient;\n\n\tconstructor({\n\t\tgraphqlClient,\n\t\tmvr,\n\t}: {\n\t\tgraphqlClient: SuiGraphQLClient;\n\t\tmvr?: SuiClientTypes.MvrOptions;\n\t}) {\n\t\tsuper({ network: graphqlClient.network, base: graphqlClient, mvr });\n\t\tthis.#graphqlClient = graphqlClient;\n\t}\n\n\tasync #graphqlQuery<\n\t\tResult = Record<string, unknown>,\n\t\tVariables = Record<string, unknown>,\n\t\tData = Result,\n\t>(\n\t\toptions: GraphQLQueryOptions<Result, Variables>,\n\t\tgetData?: (result: Result) => Data,\n\t): Promise<NonNullable<Data>> {\n\t\tconst { data, errors } = await this.#graphqlClient.query(options);\n\n\t\thandleGraphQLErrors(errors);\n\n\t\tconst extractedData = data && (getData ? getData(data) : data);\n\n\t\tif (extractedData == null) {\n\t\t\tthrow new Error('Missing response data');\n\t\t}\n\n\t\treturn extractedData as NonNullable<Data>;\n\t}\n\n\tasync getObjects<Include extends SuiClientTypes.ObjectInclude = {}>(\n\t\toptions: SuiClientTypes.GetObjectsOptions<Include>,\n\t): Promise<SuiClientTypes.GetObjectsResponse<Include>> {\n\t\tconst batches = chunk(options.objectIds, 50);\n\t\tconst results: SuiClientTypes.GetObjectsResponse<Include>['objects'] = [];\n\n\t\tfor (const batch of batches) {\n\t\t\tconst page = await this.#graphqlQuery(\n\t\t\t\t{\n\t\t\t\t\tquery: MultiGetObjectsDocument,\n\t\t\t\t\tvariables: {\n\t\t\t\t\t\tobjectKeys: batch.map((address) => ({ address })),\n\t\t\t\t\t\tincludeContent: options.include?.content ?? false,\n\t\t\t\t\t\tincludePreviousTransaction: options.include?.previousTransaction ?? false,\n\t\t\t\t\t\tincludeObjectBcs: options.include?.objectBcs ?? false,\n\t\t\t\t\t\tincludeJson: options.include?.json ?? false,\n\t\t\t\t\t\tincludeDisplay: options.include?.display ?? false,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t(result) => result.multiGetObjects,\n\t\t\t);\n\t\t\tresults.push(\n\t\t\t\t...batch\n\t\t\t\t\t.map((id) => normalizeSuiAddress(id))\n\t\t\t\t\t.map(\n\t\t\t\t\t\t(id) =>\n\t\t\t\t\t\t\tpage.find((obj) => obj?.address === id) ??\n\t\t\t\t\t\t\tnew ObjectError('notFound', `Object ${id} not found`),\n\t\t\t\t\t)\n\t\t\t\t\t.map((obj) => {\n\t\t\t\t\t\tif (obj instanceof ObjectError) {\n\t\t\t\t\t\t\treturn obj;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst bcsContent = obj.asMoveObject?.contents?.bcs\n\t\t\t\t\t\t\t? fromBase64(obj.asMoveObject.contents.bcs)\n\t\t\t\t\t\t\t: undefined;\n\n\t\t\t\t\t\tconst objectBcs = obj.objectBcs ? fromBase64(obj.objectBcs) : undefined;\n\n\t\t\t\t\t\t// Determine object type: package or Move object\n\t\t\t\t\t\t// GraphQL already returns normalized struct tags\n\t\t\t\t\t\tlet type: string;\n\t\t\t\t\t\tif (obj.asMovePackage) {\n\t\t\t\t\t\t\ttype = 'package';\n\t\t\t\t\t\t} else if (obj.asMoveObject?.contents?.type?.repr) {\n\t\t\t\t\t\t\ttype = obj.asMoveObject.contents.type.repr;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\ttype = '';\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst jsonContent = options.include?.json\n\t\t\t\t\t\t\t? obj.asMoveObject?.contents?.json\n\t\t\t\t\t\t\t\t? (obj.asMoveObject.contents.json as Record<string, unknown>)\n\t\t\t\t\t\t\t\t: null\n\t\t\t\t\t\t\t: undefined;\n\n\t\t\t\t\t\tconst displayData = mapDisplay(\n\t\t\t\t\t\t\toptions.include?.display,\n\t\t\t\t\t\t\tobj.asMoveObject?.contents?.display,\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tobjectId: obj.address,\n\t\t\t\t\t\t\tversion: obj.version?.toString()!,\n\t\t\t\t\t\t\tdigest: obj.digest!,\n\t\t\t\t\t\t\towner: mapOwner(obj.owner!),\n\t\t\t\t\t\t\ttype,\n\t\t\t\t\t\t\tcontent: bcsContent as SuiClientTypes.Object<Include>['content'],\n\t\t\t\t\t\t\tpreviousTransaction: (obj.previousTransaction?.digest ??\n\t\t\t\t\t\t\t\tundefined) as SuiClientTypes.Object<Include>['previousTransaction'],\n\t\t\t\t\t\t\tobjectBcs: objectBcs as SuiClientTypes.Object<Include>['objectBcs'],\n\t\t\t\t\t\t\tjson: jsonContent as SuiClientTypes.Object<Include>['json'],\n\t\t\t\t\t\t\tdisplay: displayData as SuiClientTypes.Object<Include>['display'],\n\t\t\t\t\t\t};\n\t\t\t\t\t}),\n\t\t\t);\n\t\t}\n\n\t\treturn {\n\t\t\tobjects: results,\n\t\t};\n\t}\n\tasync listOwnedObjects<Include extends SuiClientTypes.ObjectInclude = {}>(\n\t\toptions: SuiClientTypes.ListOwnedObjectsOptions<Include>,\n\t): Promise<SuiClientTypes.ListOwnedObjectsResponse<Include>> {\n\t\tconst objects = await this.#graphqlQuery(\n\t\t\t{\n\t\t\t\tquery: GetOwnedObjectsDocument,\n\t\t\t\tvariables: {\n\t\t\t\t\towner: options.owner,\n\t\t\t\t\tlimit: options.limit,\n\t\t\t\t\tcursor: options.cursor,\n\t\t\t\t\tfilter: options.type\n\t\t\t\t\t\t? { type: (await this.mvr.resolveType({ type: options.type })).type }\n\t\t\t\t\t\t: undefined,\n\t\t\t\t\tincludeContent: options.include?.content ?? false,\n\t\t\t\t\tincludePreviousTransaction: options.include?.previousTransaction ?? false,\n\t\t\t\t\tincludeObjectBcs: options.include?.objectBcs ?? false,\n\t\t\t\t\tincludeJson: options.include?.json ?? false,\n\t\t\t\t\tincludeDisplay: options.include?.display ?? false,\n\t\t\t\t},\n\t\t\t},\n\t\t\t(result) => result.address?.objects,\n\t\t);\n\n\t\treturn {\n\t\t\tobjects: objects.nodes.map(\n\t\t\t\t(obj): SuiClientTypes.Object<Include> => ({\n\t\t\t\t\tobjectId: obj.address,\n\t\t\t\t\tversion: obj.version?.toString()!,\n\t\t\t\t\tdigest: obj.digest!,\n\t\t\t\t\towner: mapOwner(obj.owner!),\n\t\t\t\t\ttype: obj.contents?.type?.repr!,\n\t\t\t\t\tcontent: (obj.contents?.bcs\n\t\t\t\t\t\t? fromBase64(obj.contents.bcs)\n\t\t\t\t\t\t: undefined) as SuiClientTypes.Object<Include>['content'],\n\t\t\t\t\tpreviousTransaction: (obj.previousTransaction?.digest ??\n\t\t\t\t\t\tundefined) as SuiClientTypes.Object<Include>['previousTransaction'],\n\t\t\t\t\tobjectBcs: (obj.objectBcs\n\t\t\t\t\t\t? fromBase64(obj.objectBcs)\n\t\t\t\t\t\t: undefined) as SuiClientTypes.Object<Include>['objectBcs'],\n\t\t\t\t\tjson: (options.include?.json\n\t\t\t\t\t\t? obj.contents?.json\n\t\t\t\t\t\t\t? (obj.contents.json as Record<string, unknown>)\n\t\t\t\t\t\t\t: null\n\t\t\t\t\t\t: undefined) as SuiClientTypes.Object<Include>['json'],\n\t\t\t\t\tdisplay: mapDisplay(\n\t\t\t\t\t\toptions.include?.display,\n\t\t\t\t\t\tobj.contents?.display,\n\t\t\t\t\t) as SuiClientTypes.Object<Include>['display'],\n\t\t\t\t}),\n\t\t\t),\n\t\t\thasNextPage: objects.pageInfo.hasNextPage,\n\t\t\tcursor: objects.pageInfo.endCursor ?? null,\n\t\t};\n\t}\n\tasync listCoins(\n\t\toptions: SuiClientTypes.ListCoinsOptions,\n\t): Promise<SuiClientTypes.ListCoinsResponse> {\n\t\tconst coinType = options.coinType ?? SUI_TYPE_ARG;\n\t\tconst coins = await this.#graphqlQuery(\n\t\t\t{\n\t\t\t\tquery: GetCoinsDocument,\n\t\t\t\tvariables: {\n\t\t\t\t\towner: options.owner,\n\t\t\t\t\tcursor: options.cursor,\n\t\t\t\t\tfirst: options.limit,\n\t\t\t\t\ttype: `0x2::coin::Coin<${(await this.mvr.resolveType({ type: coinType })).type}>`,\n\t\t\t\t},\n\t\t\t},\n\t\t\t(result) => result.address?.objects,\n\t\t);\n\n\t\treturn {\n\t\t\tcursor: coins.pageInfo.endCursor ?? null,\n\t\t\thasNextPage: coins.pageInfo.hasNextPage,\n\t\t\tobjects: coins.nodes.map(\n\t\t\t\t(coin): SuiClientTypes.Coin => ({\n\t\t\t\t\tobjectId: coin.address,\n\t\t\t\t\tversion: coin.version?.toString()!,\n\t\t\t\t\tdigest: coin.digest!,\n\t\t\t\t\towner: mapOwner(coin.owner!),\n\t\t\t\t\ttype: coin.contents?.type?.repr!,\n\t\t\t\t\tbalance: (coin.contents?.json as { balance: string })?.balance,\n\t\t\t\t}),\n\t\t\t),\n\t\t};\n\t}\n\n\tasync getBalance(\n\t\toptions: SuiClientTypes.GetBalanceOptions,\n\t): Promise<SuiClientTypes.GetBalanceResponse> {\n\t\tconst coinType = options.coinType ?? SUI_TYPE_ARG;\n\t\tconst result = await this.#graphqlQuery(\n\t\t\t{\n\t\t\t\tquery: GetBalanceDocument,\n\t\t\t\tvariables: {\n\t\t\t\t\towner: options.owner,\n\t\t\t\t\tcoinType: (await this.mvr.resolveType({ type: coinType })).type,\n\t\t\t\t},\n\t\t\t},\n\t\t\t(result) => result.address?.balance,\n\t\t);\n\n\t\tconst addressBalance = BigInt(result.addressBalance ?? '0');\n\t\tconst coinBalance = BigInt(result.totalBalance ?? '0') - addressBalance;\n\n\t\treturn {\n\t\t\tbalance: {\n\t\t\t\tcoinType: result.coinType?.repr ?? coinType,\n\t\t\t\tbalance: result.totalBalance ?? '0',\n\t\t\t\tcoinBalance: coinBalance.toString(),\n\t\t\t\taddressBalance: addressBalance.toString(),\n\t\t\t},\n\t\t};\n\t}\n\tasync getCoinMetadata(\n\t\toptions: SuiClientTypes.GetCoinMetadataOptions,\n\t): Promise<SuiClientTypes.GetCoinMetadataResponse> {\n\t\tconst coinType = (await this.mvr.resolveType({ type: options.coinType })).type;\n\n\t\tconst { data, errors } = await this.#graphqlClient.query({\n\t\t\tquery: GetCoinMetadataDocument,\n\t\t\tvariables: {\n\t\t\t\tcoinType,\n\t\t\t},\n\t\t});\n\n\t\thandleGraphQLErrors(errors);\n\n\t\tif (!data?.coinMetadata) {\n\t\t\treturn { coinMetadata: null };\n\t\t}\n\n\t\treturn {\n\t\t\tcoinMetadata: {\n\t\t\t\tid: data.coinMetadata.address!,\n\t\t\t\tdecimals: data.coinMetadata.decimals!,\n\t\t\t\tname: data.coinMetadata.name!,\n\t\t\t\tsymbol: data.coinMetadata.symbol!,\n\t\t\t\tdescription: data.coinMetadata.description!,\n\t\t\t\ticonUrl: data.coinMetadata.iconUrl ?? null,\n\t\t\t},\n\t\t};\n\t}\n\n\tasync listBalances(\n\t\toptions: SuiClientTypes.ListBalancesOptions,\n\t): Promise<SuiClientTypes.ListBalancesResponse> {\n\t\tconst balances = await this.#graphqlQuery(\n\t\t\t{\n\t\t\t\tquery: GetAllBalancesDocument,\n\t\t\t\tvariables: { owner: options.owner },\n\t\t\t},\n\t\t\t(result) => result.address?.balances,\n\t\t);\n\n\t\treturn {\n\t\t\tcursor: balances.pageInfo.endCursor ?? null,\n\t\t\thasNextPage: balances.pageInfo.hasNextPage,\n\t\t\tbalances: balances.nodes.map((balance) => {\n\t\t\t\tconst addressBalance = BigInt(balance.addressBalance ?? '0');\n\t\t\t\tconst coinBalance = BigInt(balance.totalBalance ?? '0') - addressBalance;\n\t\t\t\treturn {\n\t\t\t\t\tcoinType: balance.coinType?.repr!,\n\t\t\t\t\tbalance: balance.totalBalance!,\n\t\t\t\t\tcoinBalance: coinBalance.toString(),\n\t\t\t\t\taddressBalance: addressBalance.toString(),\n\t\t\t\t};\n\t\t\t}),\n\t\t};\n\t}\n\tasync getTransaction<Include extends SuiClientTypes.TransactionInclude = {}>(\n\t\toptions: SuiClientTypes.GetTransactionOptions<Include>,\n\t): Promise<SuiClientTypes.TransactionResult<Include>> {\n\t\tconst result = await this.#graphqlQuery(\n\t\t\t{\n\t\t\t\tquery: GetTransactionBlockDocument,\n\t\t\t\tvariables: {\n\t\t\t\t\tdigest: options.digest,\n\t\t\t\t\tincludeTransaction: options.include?.transaction ?? false,\n\t\t\t\t\tincludeEffects: options.include?.effects ?? false,\n\t\t\t\t\tincludeEvents: options.include?.events ?? false,\n\t\t\t\t\tincludeBalanceChanges: options.include?.balanceChanges ?? false,\n\t\t\t\t\tincludeObjectTypes: options.include?.objectTypes ?? false,\n\t\t\t\t\tincludeBcs: options.include?.bcs ?? false,\n\t\t\t\t},\n\t\t\t},\n\t\t\t(result) => result.transaction,\n\t\t);\n\n\t\treturn parseTransaction(result, options.include);\n\t}\n\tasync executeTransaction<Include extends SuiClientTypes.TransactionInclude = {}>(\n\t\toptions: SuiClientTypes.ExecuteTransactionOptions<Include>,\n\t): Promise<SuiClientTypes.TransactionResult<Include>> {\n\t\tconst result = await this.#graphqlQuery(\n\t\t\t{\n\t\t\t\tquery: ExecuteTransactionDocument,\n\t\t\t\tvariables: {\n\t\t\t\t\ttransactionDataBcs: toBase64(options.transaction),\n\t\t\t\t\tsignatures: options.signatures,\n\t\t\t\t\tincludeTransaction: options.include?.transaction ?? false,\n\t\t\t\t\tincludeEffects: options.include?.effects ?? false,\n\t\t\t\t\tincludeEvents: options.include?.events ?? false,\n\t\t\t\t\tincludeBalanceChanges: options.include?.balanceChanges ?? false,\n\t\t\t\t\tincludeObjectTypes: options.include?.objectTypes ?? false,\n\t\t\t\t\tincludeBcs: options.include?.bcs ?? false,\n\t\t\t\t},\n\t\t\t},\n\t\t\t(result) => result.executeTransaction,\n\t\t);\n\n\t\treturn parseTransaction(result.effects?.transaction!, options.include);\n\t}\n\tasync simulateTransaction<Include extends SuiClientTypes.SimulateTransactionInclude = {}>(\n\t\toptions: SuiClientTypes.SimulateTransactionOptions<Include>,\n\t): Promise<SuiClientTypes.SimulateTransactionResult<Include>> {\n\t\tif (!(options.transaction instanceof Uint8Array)) {\n\t\t\tawait options.transaction.prepareForSerialization({ client: this });\n\t\t}\n\n\t\tconst result = await this.#graphqlQuery(\n\t\t\t{\n\t\t\t\tquery: SimulateTransactionDocument,\n\t\t\t\tvariables: {\n\t\t\t\t\ttransaction:\n\t\t\t\t\t\toptions.transaction instanceof Uint8Array\n\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\tbcs: {\n\t\t\t\t\t\t\t\t\t\tvalue: toBase64(options.transaction),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t: transactionToGrpcJson(options.transaction),\n\t\t\t\t\tincludeTransaction: options.include?.transaction ?? false,\n\t\t\t\t\tincludeEffects: options.include?.effects ?? false,\n\t\t\t\t\tincludeEvents: options.include?.events ?? false,\n\t\t\t\t\tincludeBalanceChanges: options.include?.balanceChanges ?? false,\n\t\t\t\t\tincludeObjectTypes: options.include?.objectTypes ?? false,\n\t\t\t\t\tincludeCommandResults: options.include?.commandResults ?? false,\n\t\t\t\t\tincludeBcs: options.include?.bcs ?? false,\n\t\t\t\t},\n\t\t\t},\n\t\t\t(result) => result.simulateTransaction,\n\t\t);\n\n\t\tconst transactionResult = parseTransaction(result.effects?.transaction!, options.include);\n\n\t\tconst commandResults =\n\t\t\toptions.include?.commandResults && result.outputs\n\t\t\t\t? result.outputs.map((output) => ({\n\t\t\t\t\t\treturnValues: (output.returnValues ?? []).map((rv) => ({\n\t\t\t\t\t\t\tbcs: rv.value?.bcs ? fromBase64(rv.value.bcs) : null,\n\t\t\t\t\t\t})),\n\t\t\t\t\t\tmutatedReferences: (output.mutatedReferences ?? []).map((mr) => ({\n\t\t\t\t\t\t\tbcs: mr.value?.bcs ? fromBase64(mr.value.bcs) : null,\n\t\t\t\t\t\t})),\n\t\t\t\t\t}))\n\t\t\t\t: undefined;\n\n\t\tif (transactionResult.$kind === 'Transaction') {\n\t\t\treturn {\n\t\t\t\t$kind: 'Transaction',\n\t\t\t\tTransaction: transactionResult.Transaction,\n\t\t\t\tcommandResults:\n\t\t\t\t\tcommandResults as SuiClientTypes.SimulateTransactionResult<Include>['commandResults'],\n\t\t\t};\n\t\t} else {\n\t\t\treturn {\n\t\t\t\t$kind: 'FailedTransaction',\n\t\t\t\tFailedTransaction: transactionResult.FailedTransaction,\n\t\t\t\tcommandResults:\n\t\t\t\t\tcommandResults as SuiClientTypes.SimulateTransactionResult<Include>['commandResults'],\n\t\t\t};\n\t\t}\n\t}\n\tasync getReferenceGasPrice(): Promise<SuiClientTypes.GetReferenceGasPriceResponse> {\n\t\tconst result = await this.#graphqlQuery(\n\t\t\t{\n\t\t\t\tquery: GetReferenceGasPriceDocument,\n\t\t\t},\n\t\t\t(result) => result.epoch?.referenceGasPrice,\n\t\t);\n\n\t\treturn {\n\t\t\treferenceGasPrice: result ?? '',\n\t\t};\n\t}\n\n\tasync getCurrentSystemState(): Promise<SuiClientTypes.GetCurrentSystemStateResponse> {\n\t\tconst result = await this.#graphqlQuery(\n\t\t\t{\n\t\t\t\tquery: GetCurrentSystemStateDocument,\n\t\t\t},\n\t\t\t(result) => result.epoch,\n\t\t);\n\n\t\tif (!result) {\n\t\t\tthrow new Error('Epoch data not found in response');\n\t\t}\n\n\t\tconst startMs = result.startTimestamp\n\t\t\t? new Date(result.startTimestamp).getTime().toString()\n\t\t\t: (null as never);\n\n\t\t// Parse the system state JSON from the MoveValue\n\t\tconst systemStateJson = result.systemState?.json as\n\t\t\t| {\n\t\t\t\t\tsystem_state_version?: string | number;\n\t\t\t\t\tsafe_mode?: boolean;\n\t\t\t\t\tsafe_mode_storage_rewards?: string;\n\t\t\t\t\tsafe_mode_computation_rewards?: string;\n\t\t\t\t\tsafe_mode_storage_rebates?: string | number;\n\t\t\t\t\tsafe_mode_non_refundable_storage_fee?: string | number;\n\t\t\t\t\tparameters?: {\n\t\t\t\t\t\tepoch_duration_ms?: string | number;\n\t\t\t\t\t\tstake_subsidy_start_epoch?: string | number;\n\t\t\t\t\t\tmax_validator_count?: string | number;\n\t\t\t\t\t\tmin_validator_joining_stake?: string | number;\n\t\t\t\t\t\tvalidator_low_stake_threshold?: string | number;\n\t\t\t\t\t\tvalidator_low_stake_grace_period?: string | number;\n\t\t\t\t\t};\n\t\t\t\t\tstorage_fund?: {\n\t\t\t\t\t\ttotal_object_storage_rebates?: string;\n\t\t\t\t\t\tnon_refundable_balance?: string;\n\t\t\t\t\t};\n\t\t\t\t\tstake_subsidy?: {\n\t\t\t\t\t\tbalance?: string;\n\t\t\t\t\t\tdistribution_counter?: string | number;\n\t\t\t\t\t\tcurrent_distribution_amount?: string | number;\n\t\t\t\t\t\tstake_subsidy_period_length?: string | number;\n\t\t\t\t\t\tstake_subsidy_decrease_rate?: number;\n\t\t\t\t\t};\n\t\t\t }\n\t\t\t| undefined;\n\n\t\treturn {\n\t\t\tsystemState: {\n\t\t\t\tsystemStateVersion: systemStateJson?.system_state_version?.toString() ?? (null as never),\n\t\t\t\tepoch: result.epochId?.toString() ?? (null as never),\n\t\t\t\tprotocolVersion: result.protocolConfigs?.protocolVersion?.toString() ?? (null as never),\n\t\t\t\treferenceGasPrice: result.referenceGasPrice ?? (null as never),\n\t\t\t\tepochStartTimestampMs: startMs,\n\t\t\t\tsafeMode: systemStateJson?.safe_mode ?? false,\n\t\t\t\tsafeModeStorageRewards: systemStateJson?.safe_mode_storage_rewards ?? (null as never),\n\t\t\t\tsafeModeComputationRewards:\n\t\t\t\t\tsystemStateJson?.safe_mode_computation_rewards ?? (null as never),\n\t\t\t\tsafeModeStorageRebates:\n\t\t\t\t\tsystemStateJson?.safe_mode_storage_rebates?.toString() ?? (null as never),\n\t\t\t\tsafeModeNonRefundableStorageFee:\n\t\t\t\t\tsystemStateJson?.safe_mode_non_refundable_storage_fee?.toString() ?? (null as never),\n\t\t\t\tparameters: {\n\t\t\t\t\tepochDurationMs:\n\t\t\t\t\t\tsystemStateJson?.parameters?.epoch_duration_ms?.toString() ?? (null as never),\n\t\t\t\t\tstakeSubsidyStartEpoch:\n\t\t\t\t\t\tsystemStateJson?.parameters?.stake_subsidy_start_epoch?.toString() ?? (null as never),\n\t\t\t\t\tmaxValidatorCount:\n\t\t\t\t\t\tsystemStateJson?.parameters?.max_validator_count?.toString() ?? (null as never),\n\t\t\t\t\tminValidatorJoiningStake:\n\t\t\t\t\t\tsystemStateJson?.parameters?.min_validator_joining_stake?.toString() ?? (null as never),\n\t\t\t\t\tvalidatorLowStakeThreshold:\n\t\t\t\t\t\tsystemStateJson?.parameters?.validator_low_stake_threshold?.toString() ??\n\t\t\t\t\t\t(null as never),\n\t\t\t\t\tvalidatorLowStakeGracePeriod:\n\t\t\t\t\t\tsystemStateJson?.parameters?.validator_low_stake_grace_period?.toString() ??\n\t\t\t\t\t\t(null as never),\n\t\t\t\t},\n\t\t\t\tstorageFund: {\n\t\t\t\t\ttotalObjectStorageRebates:\n\t\t\t\t\t\tsystemStateJson?.storage_fund?.total_object_storage_rebates ?? (null as never),\n\t\t\t\t\tnonRefundableBalance:\n\t\t\t\t\t\tsystemStateJson?.storage_fund?.non_refundable_balance ?? (null as never),\n\t\t\t\t},\n\t\t\t\tstakeSubsidy: {\n\t\t\t\t\tbalance: systemStateJson?.stake_subsidy?.balance ?? (null as never),\n\t\t\t\t\tdistributionCounter:\n\t\t\t\t\t\tsystemStateJson?.stake_subsidy?.distribution_counter?.toString() ?? (null as never),\n\t\t\t\t\tcurrentDistributionAmount:\n\t\t\t\t\t\tsystemStateJson?.stake_subsidy?.current_distribution_amount?.toString() ??\n\t\t\t\t\t\t(null as never),\n\t\t\t\t\tstakeSubsidyPeriodLength:\n\t\t\t\t\t\tsystemStateJson?.stake_subsidy?.stake_subsidy_period_length?.toString() ??\n\t\t\t\t\t\t(null as never),\n\t\t\t\t\tstakeSubsidyDecreaseRate:\n\t\t\t\t\t\tsystemStateJson?.stake_subsidy?.stake_subsidy_decrease_rate ?? (null as never),\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\tasync listDynamicFields(\n\t\toptions: SuiClientTypes.ListDynamicFieldsOptions,\n\t): Promise<SuiClientTypes.ListDynamicFieldsResponse> {\n\t\treturn this.#graphqlClient.listDynamicFields(options);\n\t}\n\n\tasync verifyZkLoginSignature(\n\t\toptions: SuiClientTypes.VerifyZkLoginSignatureOptions,\n\t): Promise<SuiClientTypes.ZkLoginVerifyResponse> {\n\t\tconst intentScope =\n\t\t\toptions.intentScope === 'TransactionData'\n\t\t\t\t? ZkLoginIntentScope.TransactionData\n\t\t\t\t: ZkLoginIntentScope.PersonalMessage;\n\n\t\tconst { data } = await this.#graphqlClient.query({\n\t\t\tquery: VerifyZkLoginSignatureDocument,\n\t\t\tvariables: {\n\t\t\t\tbytes: options.bytes,\n\t\t\t\tsignature: options.signature,\n\t\t\t\tintentScope,\n\t\t\t\tauthor: options.address,\n\t\t\t},\n\t\t});\n\n\t\treturn {\n\t\t\tsuccess: data?.verifyZkLoginSignature?.success ?? false,\n\t\t\terrors: [],\n\t\t};\n\t}\n\n\tasync defaultNameServiceName(\n\t\toptions: SuiClientTypes.DefaultNameServiceNameOptions,\n\t): Promise<SuiClientTypes.DefaultNameServiceNameResponse> {\n\t\tconst name = await this.#graphqlQuery(\n\t\t\t{\n\t\t\t\tquery: DefaultSuinsNameDocument,\n\t\t\t\tsignal: options.signal,\n\t\t\t\tvariables: {\n\t\t\t\t\taddress: options.address,\n\t\t\t\t},\n\t\t\t},\n\t\t\t(result) => result.address?.defaultNameRecord?.domain ?? null,\n\t\t);\n\n\t\treturn {\n\t\t\tdata: { name: name },\n\t\t};\n\t}\n\n\tasync getMoveFunction(\n\t\toptions: SuiClientTypes.GetMoveFunctionOptions,\n\t): Promise<SuiClientTypes.GetMoveFunctionResponse> {\n\t\tconst moveFunction = await this.#graphqlQuery(\n\t\t\t{\n\t\t\t\tquery: GetMoveFunctionDocument,\n\t\t\t\tvariables: {\n\t\t\t\t\tpackage: (await this.mvr.resolvePackage({ package: options.packageId })).package,\n\t\t\t\t\tmodule: options.moduleName,\n\t\t\t\t\tfunction: options.name,\n\t\t\t\t},\n\t\t\t},\n\t\t\t(result) => result.package?.module?.function,\n\t\t);\n\n\t\tlet visibility: 'public' | 'private' | 'friend' | 'unknown' = 'unknown';\n\n\t\tswitch (moveFunction.visibility) {\n\t\t\tcase 'PUBLIC':\n\t\t\t\tvisibility = 'public';\n\t\t\t\tbreak;\n\t\t\tcase 'PRIVATE':\n\t\t\t\tvisibility = 'private';\n\t\t\t\tbreak;\n\t\t\tcase 'FRIEND':\n\t\t\t\tvisibility = 'friend';\n\t\t\t\tbreak;\n\t\t}\n\n\t\treturn {\n\t\t\tfunction: {\n\t\t\t\tpackageId: normalizeSuiAddress(options.packageId),\n\t\t\t\tmoduleName: options.moduleName,\n\t\t\t\tname: moveFunction.name,\n\t\t\t\tvisibility,\n\t\t\t\tisEntry: moveFunction.isEntry ?? false,\n\t\t\t\ttypeParameters:\n\t\t\t\t\tmoveFunction.typeParameters?.map(({ constraints }) => ({\n\t\t\t\t\t\tisPhantom: false,\n\t\t\t\t\t\tconstraints:\n\t\t\t\t\t\t\tconstraints.map((constraint) => {\n\t\t\t\t\t\t\t\tswitch (constraint) {\n\t\t\t\t\t\t\t\t\tcase 'COPY':\n\t\t\t\t\t\t\t\t\t\treturn 'copy';\n\t\t\t\t\t\t\t\t\tcase 'DROP':\n\t\t\t\t\t\t\t\t\t\treturn 'drop';\n\t\t\t\t\t\t\t\t\tcase 'STORE':\n\t\t\t\t\t\t\t\t\t\treturn 'store';\n\t\t\t\t\t\t\t\t\tcase 'KEY':\n\t\t\t\t\t\t\t\t\t\treturn 'key';\n\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\treturn 'unknown';\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}) ?? [],\n\t\t\t\t\t})) ?? [],\n\t\t\t\tparameters:\n\t\t\t\t\tmoveFunction.parameters?.map((param) => parseNormalizedSuiMoveType(param.signature)) ??\n\t\t\t\t\t[],\n\t\t\t\treturns:\n\t\t\t\t\tmoveFunction.return?.map(({ signature }) => parseNormalizedSuiMoveType(signature)) ?? [],\n\t\t\t},\n\t\t};\n\t}\n\n\tasync getChainIdentifier(\n\t\t_options?: SuiClientTypes.GetChainIdentifierOptions,\n\t): Promise<SuiClientTypes.GetChainIdentifierResponse> {\n\t\treturn this.cache.read(['chainIdentifier'], async () => {\n\t\t\tconst checkpoint = await this.#graphqlQuery(\n\t\t\t\t{\n\t\t\t\t\tquery: GetChainIdentifierDocument,\n\t\t\t\t},\n\t\t\t\t(result) => result.checkpoint,\n\t\t\t);\n\t\t\tif (!checkpoint?.digest) {\n\t\t\t\tthrow new Error('Genesis checkpoint digest not found');\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tchainIdentifier: checkpoint.digest,\n\t\t\t};\n\t\t});\n\t}\n\n\tresolveTransactionPlugin() {\n\t\tconst graphqlClient = this.#graphqlClient;\n\t\treturn async function resolveTransactionData(\n\t\t\ttransactionData: TransactionDataBuilder,\n\t\t\toptions: BuildTransactionOptions,\n\t\t\tnext: () => Promise<void>,\n\t\t) {\n\t\t\tconst snapshot = transactionData.snapshot();\n\t\t\t// If sender is not set, use a dummy address for resolution purposes\n\t\t\tif (!snapshot.sender) {\n\t\t\t\tsnapshot.sender = '0x0000000000000000000000000000000000000000000000000000000000000000';\n\t\t\t}\n\t\t\tconst grpcTransaction = transactionDataToGrpcTransaction(snapshot);\n\t\t\tconst transactionJson = GrpcTransactionType.toJson(grpcTransaction);\n\n\t\t\tconst { data, errors } = await graphqlClient.query({\n\t\t\t\tquery: ResolveTransactionDocument,\n\t\t\t\tvariables: {\n\t\t\t\t\ttransaction: transactionJson,\n\t\t\t\t\tdoGasSelection:\n\t\t\t\t\t\t!options.onlyTransactionKind &&\n\t\t\t\t\t\t(snapshot.gasData.budget == null || snapshot.gasData.payment == null),\n\t\t\t\t},\n\t\t\t});\n\n\t\t\thandleGraphQLErrors(errors);\n\n\t\t\tconst transactionEffects = data?.simulateTransaction?.effects?.transaction?.effects;\n\t\t\tif (!options.onlyTransactionKind && transactionEffects?.status === ExecutionStatus.Failure) {\n\t\t\t\tconst executionError = parseGraphQLExecutionError(transactionEffects.executionError);\n\t\t\t\tconst errorMessage = executionError?.message ?? 'Transaction failed';\n\t\t\t\tthrow new SimulationError(`Transaction resolution failed: ${errorMessage}`, {\n\t\t\t\t\texecutionError,\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tconst resolvedTransactionBcs =\n\t\t\t\tdata?.simulateTransaction?.effects?.transaction?.transactionBcs;\n\n\t\t\tif (!resolvedTransactionBcs) {\n\t\t\t\tthrow new Error('simulateTransaction did not return resolved transaction data');\n\t\t\t}\n\n\t\t\tconst resolvedBuilder = TransactionDataBuilder.fromBytes(fromBase64(resolvedTransactionBcs));\n\t\t\tconst resolved = resolvedBuilder.snapshot();\n\n\t\t\tif (options.onlyTransactionKind) {\n\t\t\t\ttransactionData.applyResolvedData({\n\t\t\t\t\t...resolved,\n\t\t\t\t\tgasData: {\n\t\t\t\t\t\tbudget: null,\n\t\t\t\t\t\towner: null,\n\t\t\t\t\t\tpayment: null,\n\t\t\t\t\t\tprice: null,\n\t\t\t\t\t},\n\t\t\t\t\texpiration: null,\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\ttransactionData.applyResolvedData(resolved);\n\t\t\t}\n\n\t\t\treturn await next();\n\t\t};\n\t}\n}\nexport type GraphQLResponseErrors = Array<{\n\tmessage: string;\n\tlocations?: { line: number; column: number }[];\n\tpath?: (string | number)[];\n}>;\n\nfunction mapDisplay(\n\tinclude: boolean | undefined,\n\tdisplay: { output?: unknown | null; errors?: unknown | null } | null | undefined,\n): SuiClientTypes.Display | null | undefined {\n\tif (!include) return undefined;\n\tif (!display) return null;\n\treturn {\n\t\toutput: (display.output as Record<string, string> | null) ?? null,\n\t\terrors: (display.errors as Record<string, string> | null) ?? null,\n\t};\n}\n\nfunction handleGraphQLErrors(errors: GraphQLResponseErrors | undefined): void {\n\tif (!errors || errors.length === 0) return;\n\n\tconst errorInstances = errors.map((error) => new GraphQLResponseError(error));\n\n\tif (errorInstances.length === 1) {\n\t\tthrow errorInstances[0];\n\t}\n\n\tthrow new AggregateError(errorInstances);\n}\n\nclass GraphQLResponseError extends Error {\n\tlocations?: Array<{ line: number; column: number }>;\n\n\tconstructor(error: GraphQLResponseErrors[0]) {\n\t\tsuper(error.message);\n\t\tthis.locations = error.locations;\n\t}\n}\n\nfunction mapOwner(owner: Object_Owner_FieldsFragment): SuiClientTypes.ObjectOwner {\n\tswitch (owner.__typename) {\n\t\tcase 'AddressOwner':\n\t\t\treturn { $kind: 'AddressOwner', AddressOwner: owner.address?.address! };\n\t\tcase 'ConsensusAddressOwner':\n\t\t\treturn {\n\t\t\t\t$kind: 'ConsensusAddressOwner',\n\t\t\t\tConsensusAddressOwner: {\n\t\t\t\t\towner: owner?.address?.address!,\n\t\t\t\t\tstartVersion: String(owner.startVersion),\n\t\t\t\t},\n\t\t\t};\n\t\tcase 'ObjectOwner':\n\t\t\treturn { $kind: 'ObjectOwner', ObjectOwner: owner.address?.address! };\n\t\tcase 'Immutable':\n\t\t\treturn { $kind: 'Immutable', Immutable: true };\n\t\tcase 'Shared':\n\t\t\treturn {\n\t\t\t\t$kind: 'Shared',\n\t\t\t\tShared: { initialSharedVersion: String(owner.initialSharedVersion) },\n\t\t\t};\n\t}\n}\n\nfunction parseTransaction<Include extends SuiClientTypes.TransactionInclude = {}>(\n\ttransaction: Transaction_FieldsFragment,\n\tinclude?: Include,\n): SuiClientTypes.TransactionResult<Include> {\n\tconst objectTypes: Record<string, string> = {};\n\n\tif (include?.objectTypes) {\n\t\tconst effectsJson = transaction.effects?.effectsJson;\n\t\tif (effectsJson) {\n\t\t\tconst effects = TransactionEffectsType.fromJson(\n\t\t\t\teffectsJson as Parameters<typeof TransactionEffectsType.fromJson>[0],\n\t\t\t);\n\t\t\teffects.changedObjects?.forEach((change) => {\n\t\t\t\tif (change.objectId && change.objectType) {\n\t\t\t\t\tobjectTypes[change.objectId] = change.objectType;\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tconst objectChanges = transaction.effects?.objectChanges?.nodes;\n\t\tif (objectChanges) {\n\t\t\tfor (const change of objectChanges) {\n\t\t\t\tconst type = change.outputState?.asMoveObject?.contents?.type?.repr;\n\t\t\t\tif (change.address && type) {\n\t\t\t\t\tobjectTypes[change.address] = type;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tlet balanceChanges: SuiClientTypes.BalanceChange[] | undefined;\n\tif (include?.balanceChanges) {\n\t\tconst balanceChangesJson = transaction.effects?.balanceChangesJson;\n\t\tif (Array.isArray(balanceChangesJson)) {\n\t\t\tbalanceChanges = balanceChangesJson.map((json) => {\n\t\t\t\tconst change = BalanceChangeType.fromJson(\n\t\t\t\t\tjson as Parameters<typeof BalanceChangeType.fromJson>[0],\n\t\t\t\t);\n\t\t\t\treturn {\n\t\t\t\t\tcoinType: change.coinType!,\n\t\t\t\t\taddress: change.address!,\n\t\t\t\t\tamount: change.amount!,\n\t\t\t\t};\n\t\t\t});\n\t\t} else {\n\t\t\tbalanceChanges = [];\n\t\t}\n\t}\n\n\t// Get status from GraphQL response\n\tconst status: SuiClientTypes.ExecutionStatus =\n\t\ttransaction.effects?.status === ExecutionStatus.Success\n\t\t\t? { success: true, error: null }\n\t\t\t: {\n\t\t\t\t\tsuccess: false,\n\t\t\t\t\terror: parseGraphQLExecutionError(transaction.effects?.executionError),\n\t\t\t\t};\n\n\tlet transactionData: SuiClientTypes.TransactionData | undefined;\n\tif (include?.transaction && transaction.transactionJson) {\n\t\tconst grpcTx = GrpcTransactionType.fromJson(\n\t\t\ttransaction.transactionJson as Parameters<typeof GrpcTransactionType.fromJson>[0],\n\t\t);\n\t\tconst resolved = grpcTransactionToTransactionData(grpcTx);\n\t\ttransactionData = {\n\t\t\tgasData: resolved.gasData,\n\t\t\tsender: resolved.sender,\n\t\t\texpiration: resolved.expiration,\n\t\t\tcommands: resolved.commands,\n\t\t\tinputs: resolved.inputs,\n\t\t\tversion: resolved.version,\n\t\t};\n\t}\n\n\tconst bcsBytes =\n\t\tinclude?.bcs && transaction.transactionBcs ? fromBase64(transaction.transactionBcs) : undefined;\n\n\tconst result: SuiClientTypes.Transaction<Include> = {\n\t\tdigest: transaction.digest!,\n\t\tstatus,\n\t\teffects: (include?.effects\n\t\t\t? parseTransactionEffectsBcs(fromBase64(transaction.effects?.effectsBcs!))\n\t\t\t: undefined) as SuiClientTypes.Transaction<Include>['effects'],\n\t\tepoch: transaction.effects?.epoch?.epochId?.toString() ?? null,\n\t\tobjectTypes: (include?.objectTypes\n\t\t\t? objectTypes\n\t\t\t: undefined) as SuiClientTypes.Transaction<Include>['objectTypes'],\n\t\ttransaction: transactionData as SuiClientTypes.Transaction<Include>['transaction'],\n\t\tbcs: bcsBytes as SuiClientTypes.Transaction<Include>['bcs'],\n\t\tsignatures: transaction.signatures.map((sig) => sig.signatureBytes!),\n\t\tbalanceChanges: balanceChanges as SuiClientTypes.Transaction<Include>['balanceChanges'],\n\t\tevents: (include?.events\n\t\t\t? (transaction.effects?.events?.nodes.map((event) => {\n\t\t\t\t\tconst eventType = event.contents?.type?.repr!;\n\t\t\t\t\tconst [packageId, module] = eventType.split('::');\n\t\t\t\t\treturn {\n\t\t\t\t\t\tpackageId,\n\t\t\t\t\t\tmodule,\n\t\t\t\t\t\tsender: event.sender?.address!,\n\t\t\t\t\t\teventType,\n\t\t\t\t\t\tbcs: event.contents?.bcs ? fromBase64(event.contents.bcs) : new Uint8Array(),\n\t\t\t\t\t\tjson: (event.contents?.json as Record<string, unknown>) ?? null,\n\t\t\t\t\t};\n\t\t\t\t}) ?? [])\n\t\t\t: undefined) as SuiClientTypes.Transaction<Include>['events'],\n\t};\n\n\treturn status.success\n\t\t? { $kind: 'Transaction', Transaction: result, FailedTransaction: undefined as never }\n\t\t: { $kind: 'FailedTransaction', Transaction: undefined as never, FailedTransaction: result };\n}\n\nfunction parseNormalizedSuiMoveType(type: OpenMoveTypeSignature): SuiClientTypes.OpenSignature {\n\tlet reference: 'mutable' | 'immutable' | null = null;\n\n\tif (type.ref === '&') {\n\t\treference = 'immutable';\n\t} else if (type.ref === '&mut') {\n\t\treference = 'mutable';\n\t}\n\n\treturn {\n\t\treference,\n\t\tbody: parseNormalizedSuiMoveTypeBody(type.body),\n\t};\n}\n\nfunction parseGraphQLExecutionError(\n\texecutionError: GraphQLExecutionError | null | undefined,\n): SuiClientTypes.ExecutionError {\n\tconst name = mapGraphQLExecutionErrorKind(executionError);\n\n\tif (name === 'MoveAbort' && executionError?.abortCode != null) {\n\t\tconst location = parseGraphQLMoveLocation(executionError);\n\t\tconst cleverError = parseGraphQLCleverError(executionError);\n\t\tconst commandMatch = executionError.message?.match(/in (\\d+)\\w* command/);\n\t\tconst command = commandMatch ? parseInt(commandMatch[1], 10) - 1 : undefined;\n\n\t\treturn {\n\t\t\t$kind: 'MoveAbort',\n\t\t\tmessage: formatMoveAbortMessage({\n\t\t\t\tcommand,\n\t\t\t\tlocation: location\n\t\t\t\t\t? {\n\t\t\t\t\t\t\tpackage: location.package,\n\t\t\t\t\t\t\tmodule: location.module,\n\t\t\t\t\t\t\tfunctionName: location.functionName,\n\t\t\t\t\t\t\tinstruction: location.instruction,\n\t\t\t\t\t\t}\n\t\t\t\t\t: undefined,\n\t\t\t\tabortCode: executionError.abortCode!,\n\t\t\t\tcleverError: cleverError\n\t\t\t\t\t? {\n\t\t\t\t\t\t\tlineNumber: cleverError.lineNumber,\n\t\t\t\t\t\t\tconstantName: cleverError.constantName,\n\t\t\t\t\t\t\tvalue: cleverError.value,\n\t\t\t\t\t\t}\n\t\t\t\t\t: undefined,\n\t\t\t}),\n\t\t\tcommand,\n\t\t\tMoveAbort: {\n\t\t\t\tabortCode: executionError.abortCode!,\n\t\t\t\tlocation,\n\t\t\t\tcleverError,\n\t\t\t},\n\t\t};\n\t}\n\n\treturn {\n\t\t$kind: 'Unknown',\n\t\tmessage: executionError?.message ?? 'Transaction failed',\n\t\tUnknown: null,\n\t};\n}\n\nfunction mapGraphQLExecutionErrorKind(\n\texecutionError: GraphQLExecutionError | null | undefined,\n): string {\n\tif (executionError?.abortCode != null) {\n\t\treturn 'MoveAbort';\n\t}\n\n\tconst match = executionError?.message?.match(/^(\\w+)/);\n\treturn match?.[1] ?? 'Unknown';\n}\n\nfunction parseGraphQLMoveLocation(\n\texecutionError: GraphQLExecutionError,\n): SuiClientTypes.MoveLocation | undefined {\n\tconst hasLocation = executionError.module?.package?.address && executionError.module?.name;\n\tif (!hasLocation) {\n\t\treturn undefined;\n\t}\n\n\treturn {\n\t\tpackage: executionError.module?.package?.address,\n\t\tmodule: executionError.module?.name,\n\t\tfunctionName: executionError.function?.name,\n\t\tinstruction: executionError.instructionOffset ?? undefined,\n\t};\n}\n\nfunction parseGraphQLCleverError(\n\texecutionError: GraphQLExecutionError,\n): SuiClientTypes.CleverError | undefined {\n\tconst hasCleverError = executionError.identifier || executionError.constant;\n\tif (!hasCleverError) {\n\t\treturn undefined;\n\t}\n\n\treturn {\n\t\tconstantName: executionError.identifier ?? undefined,\n\t\tvalue: executionError.constant ?? undefined,\n\t\tlineNumber: executionError.sourceLineNumber ?? undefined,\n\t};\n}\n\nfunction parseNormalizedSuiMoveTypeBody(\n\ttype: OpenMoveTypeSignatureBody,\n): SuiClientTypes.OpenSignatureBody {\n\tswitch (type) {\n\t\tcase 'address':\n\t\t\treturn { $kind: 'address' };\n\t\tcase 'bool':\n\t\t\treturn { $kind: 'bool' };\n\t\tcase 'u8':\n\t\t\treturn { $kind: 'u8' };\n\t\tcase 'u16':\n\t\t\treturn { $kind: 'u16' };\n\t\tcase 'u32':\n\t\t\treturn { $kind: 'u32' };\n\t\tcase 'u64':\n\t\t\treturn { $kind: 'u64' };\n\t\tcase 'u128':\n\t\t\treturn { $kind: 'u128' };\n\t\tcase 'u256':\n\t\t\treturn { $kind: 'u256' };\n\t}\n\n\tif (typeof type === 'string') {\n\t\tthrow new Error(`Unknown type: ${type}`);\n\t}\n\n\tif ('vector' in type) {\n\t\treturn {\n\t\t\t$kind: 'vector',\n\t\t\tvector: parseNormalizedSuiMoveTypeBody(type.vector),\n\t\t};\n\t}\n\n\tif ('datatype' in type) {\n\t\treturn {\n\t\t\t$kind: 'datatype',\n\t\t\tdatatype: {\n\t\t\t\ttypeName: `${normalizeSuiAddress(type.datatype.package)}::${type.datatype.module}::${type.datatype.type}`,\n\t\t\t\ttypeParameters: type.datatype.typeParameters.map((t) => parseNormalizedSuiMoveTypeBody(t)),\n\t\t\t},\n\t\t};\n\t}\n\n\tif ('typeParameter' in type) {\n\t\treturn {\n\t\t\t$kind: 'typeParameter',\n\t\t\tindex: type.typeParameter,\n\t\t};\n\t}\n\n\tthrow new Error(`Unknown type: ${JSON.stringify(type)}`);\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"core.mjs","names":["#graphqlClient","#graphqlQuery","result","GrpcTransactionType","TransactionEffectsType","BalanceChangeType"],"sources":["../../src/graphql/core.ts"],"sourcesContent":["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { CoreClient } from '../client/core.js';\nimport type { SuiClientTypes } from '../client/types.js';\nimport { SUI_TYPE_ARG } from '../utils/constants.js';\nimport type { GraphQLQueryOptions, SuiGraphQLClient } from './client.js';\nimport type {\n\tObject_Owner_FieldsFragment,\n\tTransaction_FieldsFragment,\n} from './generated/queries.js';\n\ntype GraphQLExecutionError = NonNullable<\n\tNonNullable<Transaction_FieldsFragment['effects']>['executionError']\n>;\nimport {\n\tDefaultSuinsNameDocument,\n\tExecuteTransactionDocument,\n\tExecutionStatus,\n\tGetAllBalancesDocument,\n\tGetBalanceDocument,\n\tGetChainIdentifierDocument,\n\tGetCoinMetadataDocument,\n\tGetCoinsDocument,\n\tGetCurrentSystemStateDocument,\n\tGetMoveFunctionDocument,\n\tGetProtocolConfigDocument,\n\tGetOwnedObjectsDocument,\n\tGetReferenceGasPriceDocument,\n\tGetTransactionBlockDocument,\n\tMultiGetObjectsDocument,\n\tResolveTransactionDocument,\n\tSimulateTransactionDocument,\n\tVerifyZkLoginSignatureDocument,\n\tZkLoginIntentScope,\n} from './generated/queries.js';\nimport { ObjectError, SimulationError } from '../client/errors.js';\nimport { chunk, fromBase64, toBase64 } from '@mysten/utils';\nimport { normalizeSuiAddress } from '../utils/sui-types.js';\nimport { formatMoveAbortMessage, parseTransactionEffectsBcs } from '../client/utils.js';\nimport type { OpenMoveTypeSignatureBody, OpenMoveTypeSignature } from './types.js';\nimport {\n\ttransactionDataToGrpcTransaction,\n\ttransactionToGrpcJson,\n\tgrpcTransactionToTransactionData,\n} from '../client/transaction-resolver.js';\nimport { BalanceChange as BalanceChangeType } from '../grpc/proto/sui/rpc/v2/balance_change.js';\nimport { TransactionEffects as TransactionEffectsType } from '../grpc/proto/sui/rpc/v2/effects.js';\nimport { Transaction as GrpcTransactionType } from '../grpc/proto/sui/rpc/v2/transaction.js';\nimport { TransactionDataBuilder } from '../transactions/TransactionData.js';\nimport type { BuildTransactionOptions } from '../transactions/index.js';\n\nexport class GraphQLCoreClient extends CoreClient {\n\t#graphqlClient: SuiGraphQLClient;\n\n\tconstructor({\n\t\tgraphqlClient,\n\t\tmvr,\n\t}: {\n\t\tgraphqlClient: SuiGraphQLClient;\n\t\tmvr?: SuiClientTypes.MvrOptions;\n\t}) {\n\t\tsuper({ network: graphqlClient.network, base: graphqlClient, mvr });\n\t\tthis.#graphqlClient = graphqlClient;\n\t}\n\n\tasync #graphqlQuery<\n\t\tResult = Record<string, unknown>,\n\t\tVariables = Record<string, unknown>,\n\t\tData = Result,\n\t>(\n\t\toptions: GraphQLQueryOptions<Result, Variables>,\n\t\tgetData?: (result: Result) => Data,\n\t): Promise<NonNullable<Data>> {\n\t\tconst { data, errors } = await this.#graphqlClient.query(options);\n\n\t\thandleGraphQLErrors(errors);\n\n\t\tconst extractedData = data && (getData ? getData(data) : data);\n\n\t\tif (extractedData == null) {\n\t\t\tthrow new Error('Missing response data');\n\t\t}\n\n\t\treturn extractedData as NonNullable<Data>;\n\t}\n\n\tasync getObjects<Include extends SuiClientTypes.ObjectInclude = {}>(\n\t\toptions: SuiClientTypes.GetObjectsOptions<Include>,\n\t): Promise<SuiClientTypes.GetObjectsResponse<Include>> {\n\t\tconst batches = chunk(options.objectIds, 50);\n\t\tconst results: SuiClientTypes.GetObjectsResponse<Include>['objects'] = [];\n\n\t\tfor (const batch of batches) {\n\t\t\tconst page = await this.#graphqlQuery(\n\t\t\t\t{\n\t\t\t\t\tquery: MultiGetObjectsDocument,\n\t\t\t\t\tvariables: {\n\t\t\t\t\t\tobjectKeys: batch.map((address) => ({ address })),\n\t\t\t\t\t\tincludeContent: options.include?.content ?? false,\n\t\t\t\t\t\tincludePreviousTransaction: options.include?.previousTransaction ?? false,\n\t\t\t\t\t\tincludeObjectBcs: options.include?.objectBcs ?? false,\n\t\t\t\t\t\tincludeJson: options.include?.json ?? false,\n\t\t\t\t\t\tincludeDisplay: options.include?.display ?? false,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t(result) => result.multiGetObjects,\n\t\t\t);\n\t\t\tresults.push(\n\t\t\t\t...batch\n\t\t\t\t\t.map((id) => normalizeSuiAddress(id))\n\t\t\t\t\t.map(\n\t\t\t\t\t\t(id) =>\n\t\t\t\t\t\t\tpage.find((obj) => obj?.address === id) ??\n\t\t\t\t\t\t\tnew ObjectError('notFound', `Object ${id} not found`),\n\t\t\t\t\t)\n\t\t\t\t\t.map((obj) => {\n\t\t\t\t\t\tif (obj instanceof ObjectError) {\n\t\t\t\t\t\t\treturn obj;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst bcsContent = obj.asMoveObject?.contents?.bcs\n\t\t\t\t\t\t\t? fromBase64(obj.asMoveObject.contents.bcs)\n\t\t\t\t\t\t\t: undefined;\n\n\t\t\t\t\t\tconst objectBcs = obj.objectBcs ? fromBase64(obj.objectBcs) : undefined;\n\n\t\t\t\t\t\t// Determine object type: package or Move object\n\t\t\t\t\t\t// GraphQL already returns normalized struct tags\n\t\t\t\t\t\tlet type: string;\n\t\t\t\t\t\tif (obj.asMovePackage) {\n\t\t\t\t\t\t\ttype = 'package';\n\t\t\t\t\t\t} else if (obj.asMoveObject?.contents?.type?.repr) {\n\t\t\t\t\t\t\ttype = obj.asMoveObject.contents.type.repr;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\ttype = '';\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst jsonContent = options.include?.json\n\t\t\t\t\t\t\t? obj.asMoveObject?.contents?.json\n\t\t\t\t\t\t\t\t? (obj.asMoveObject.contents.json as Record<string, unknown>)\n\t\t\t\t\t\t\t\t: null\n\t\t\t\t\t\t\t: undefined;\n\n\t\t\t\t\t\tconst displayData = mapDisplay(\n\t\t\t\t\t\t\toptions.include?.display,\n\t\t\t\t\t\t\tobj.asMoveObject?.contents?.display,\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tobjectId: obj.address,\n\t\t\t\t\t\t\tversion: obj.version?.toString()!,\n\t\t\t\t\t\t\tdigest: obj.digest!,\n\t\t\t\t\t\t\towner: mapOwner(obj.owner!),\n\t\t\t\t\t\t\ttype,\n\t\t\t\t\t\t\tcontent: bcsContent as SuiClientTypes.Object<Include>['content'],\n\t\t\t\t\t\t\tpreviousTransaction: (obj.previousTransaction?.digest ??\n\t\t\t\t\t\t\t\tundefined) as SuiClientTypes.Object<Include>['previousTransaction'],\n\t\t\t\t\t\t\tobjectBcs: objectBcs as SuiClientTypes.Object<Include>['objectBcs'],\n\t\t\t\t\t\t\tjson: jsonContent as SuiClientTypes.Object<Include>['json'],\n\t\t\t\t\t\t\tdisplay: displayData as SuiClientTypes.Object<Include>['display'],\n\t\t\t\t\t\t};\n\t\t\t\t\t}),\n\t\t\t);\n\t\t}\n\n\t\treturn {\n\t\t\tobjects: results,\n\t\t};\n\t}\n\tasync listOwnedObjects<Include extends SuiClientTypes.ObjectInclude = {}>(\n\t\toptions: SuiClientTypes.ListOwnedObjectsOptions<Include>,\n\t): Promise<SuiClientTypes.ListOwnedObjectsResponse<Include>> {\n\t\tconst objects = await this.#graphqlQuery(\n\t\t\t{\n\t\t\t\tquery: GetOwnedObjectsDocument,\n\t\t\t\tvariables: {\n\t\t\t\t\towner: options.owner,\n\t\t\t\t\tlimit: options.limit,\n\t\t\t\t\tcursor: options.cursor,\n\t\t\t\t\tfilter: options.type\n\t\t\t\t\t\t? { type: (await this.mvr.resolveType({ type: options.type })).type }\n\t\t\t\t\t\t: undefined,\n\t\t\t\t\tincludeContent: options.include?.content ?? false,\n\t\t\t\t\tincludePreviousTransaction: options.include?.previousTransaction ?? false,\n\t\t\t\t\tincludeObjectBcs: options.include?.objectBcs ?? false,\n\t\t\t\t\tincludeJson: options.include?.json ?? false,\n\t\t\t\t\tincludeDisplay: options.include?.display ?? false,\n\t\t\t\t},\n\t\t\t},\n\t\t\t(result) => result.address?.objects,\n\t\t);\n\n\t\treturn {\n\t\t\tobjects: objects.nodes.map(\n\t\t\t\t(obj): SuiClientTypes.Object<Include> => ({\n\t\t\t\t\tobjectId: obj.address,\n\t\t\t\t\tversion: obj.version?.toString()!,\n\t\t\t\t\tdigest: obj.digest!,\n\t\t\t\t\towner: mapOwner(obj.owner!),\n\t\t\t\t\ttype: obj.contents?.type?.repr!,\n\t\t\t\t\tcontent: (obj.contents?.bcs\n\t\t\t\t\t\t? fromBase64(obj.contents.bcs)\n\t\t\t\t\t\t: undefined) as SuiClientTypes.Object<Include>['content'],\n\t\t\t\t\tpreviousTransaction: (obj.previousTransaction?.digest ??\n\t\t\t\t\t\tundefined) as SuiClientTypes.Object<Include>['previousTransaction'],\n\t\t\t\t\tobjectBcs: (obj.objectBcs\n\t\t\t\t\t\t? fromBase64(obj.objectBcs)\n\t\t\t\t\t\t: undefined) as SuiClientTypes.Object<Include>['objectBcs'],\n\t\t\t\t\tjson: (options.include?.json\n\t\t\t\t\t\t? obj.contents?.json\n\t\t\t\t\t\t\t? (obj.contents.json as Record<string, unknown>)\n\t\t\t\t\t\t\t: null\n\t\t\t\t\t\t: undefined) as SuiClientTypes.Object<Include>['json'],\n\t\t\t\t\tdisplay: mapDisplay(\n\t\t\t\t\t\toptions.include?.display,\n\t\t\t\t\t\tobj.contents?.display,\n\t\t\t\t\t) as SuiClientTypes.Object<Include>['display'],\n\t\t\t\t}),\n\t\t\t),\n\t\t\thasNextPage: objects.pageInfo.hasNextPage,\n\t\t\tcursor: objects.pageInfo.endCursor ?? null,\n\t\t};\n\t}\n\tasync listCoins(\n\t\toptions: SuiClientTypes.ListCoinsOptions,\n\t): Promise<SuiClientTypes.ListCoinsResponse> {\n\t\tconst coinType = options.coinType ?? SUI_TYPE_ARG;\n\t\tconst coins = await this.#graphqlQuery(\n\t\t\t{\n\t\t\t\tquery: GetCoinsDocument,\n\t\t\t\tvariables: {\n\t\t\t\t\towner: options.owner,\n\t\t\t\t\tcursor: options.cursor,\n\t\t\t\t\tfirst: options.limit,\n\t\t\t\t\ttype: `0x2::coin::Coin<${(await this.mvr.resolveType({ type: coinType })).type}>`,\n\t\t\t\t},\n\t\t\t},\n\t\t\t(result) => result.address?.objects,\n\t\t);\n\n\t\treturn {\n\t\t\tcursor: coins.pageInfo.endCursor ?? null,\n\t\t\thasNextPage: coins.pageInfo.hasNextPage,\n\t\t\tobjects: coins.nodes.map(\n\t\t\t\t(coin): SuiClientTypes.Coin => ({\n\t\t\t\t\tobjectId: coin.address,\n\t\t\t\t\tversion: coin.version?.toString()!,\n\t\t\t\t\tdigest: coin.digest!,\n\t\t\t\t\towner: mapOwner(coin.owner!),\n\t\t\t\t\ttype: coin.contents?.type?.repr!,\n\t\t\t\t\tbalance: (coin.contents?.json as { balance: string })?.balance,\n\t\t\t\t}),\n\t\t\t),\n\t\t};\n\t}\n\n\tasync getBalance(\n\t\toptions: SuiClientTypes.GetBalanceOptions,\n\t): Promise<SuiClientTypes.GetBalanceResponse> {\n\t\tconst coinType = options.coinType ?? SUI_TYPE_ARG;\n\t\tconst result = await this.#graphqlQuery(\n\t\t\t{\n\t\t\t\tquery: GetBalanceDocument,\n\t\t\t\tvariables: {\n\t\t\t\t\towner: options.owner,\n\t\t\t\t\tcoinType: (await this.mvr.resolveType({ type: coinType })).type,\n\t\t\t\t},\n\t\t\t},\n\t\t\t(result) => result.address?.balance,\n\t\t);\n\n\t\tconst addressBalance = BigInt(result.addressBalance ?? '0');\n\t\tconst coinBalance = BigInt(result.totalBalance ?? '0') - addressBalance;\n\n\t\treturn {\n\t\t\tbalance: {\n\t\t\t\tcoinType: result.coinType?.repr ?? coinType,\n\t\t\t\tbalance: result.totalBalance ?? '0',\n\t\t\t\tcoinBalance: coinBalance.toString(),\n\t\t\t\taddressBalance: addressBalance.toString(),\n\t\t\t},\n\t\t};\n\t}\n\tasync getCoinMetadata(\n\t\toptions: SuiClientTypes.GetCoinMetadataOptions,\n\t): Promise<SuiClientTypes.GetCoinMetadataResponse> {\n\t\tconst coinType = (await this.mvr.resolveType({ type: options.coinType })).type;\n\n\t\tconst { data, errors } = await this.#graphqlClient.query({\n\t\t\tquery: GetCoinMetadataDocument,\n\t\t\tvariables: {\n\t\t\t\tcoinType,\n\t\t\t},\n\t\t});\n\n\t\thandleGraphQLErrors(errors);\n\n\t\tif (!data?.coinMetadata) {\n\t\t\treturn { coinMetadata: null };\n\t\t}\n\n\t\treturn {\n\t\t\tcoinMetadata: {\n\t\t\t\tid: data.coinMetadata.address!,\n\t\t\t\tdecimals: data.coinMetadata.decimals!,\n\t\t\t\tname: data.coinMetadata.name!,\n\t\t\t\tsymbol: data.coinMetadata.symbol!,\n\t\t\t\tdescription: data.coinMetadata.description!,\n\t\t\t\ticonUrl: data.coinMetadata.iconUrl ?? null,\n\t\t\t},\n\t\t};\n\t}\n\n\tasync listBalances(\n\t\toptions: SuiClientTypes.ListBalancesOptions,\n\t): Promise<SuiClientTypes.ListBalancesResponse> {\n\t\tconst balances = await this.#graphqlQuery(\n\t\t\t{\n\t\t\t\tquery: GetAllBalancesDocument,\n\t\t\t\tvariables: { owner: options.owner },\n\t\t\t},\n\t\t\t(result) => result.address?.balances,\n\t\t);\n\n\t\treturn {\n\t\t\tcursor: balances.pageInfo.endCursor ?? null,\n\t\t\thasNextPage: balances.pageInfo.hasNextPage,\n\t\t\tbalances: balances.nodes.map((balance) => {\n\t\t\t\tconst addressBalance = BigInt(balance.addressBalance ?? '0');\n\t\t\t\tconst coinBalance = BigInt(balance.totalBalance ?? '0') - addressBalance;\n\t\t\t\treturn {\n\t\t\t\t\tcoinType: balance.coinType?.repr!,\n\t\t\t\t\tbalance: balance.totalBalance!,\n\t\t\t\t\tcoinBalance: coinBalance.toString(),\n\t\t\t\t\taddressBalance: addressBalance.toString(),\n\t\t\t\t};\n\t\t\t}),\n\t\t};\n\t}\n\tasync getTransaction<Include extends SuiClientTypes.TransactionInclude = {}>(\n\t\toptions: SuiClientTypes.GetTransactionOptions<Include>,\n\t): Promise<SuiClientTypes.TransactionResult<Include>> {\n\t\tconst result = await this.#graphqlQuery(\n\t\t\t{\n\t\t\t\tquery: GetTransactionBlockDocument,\n\t\t\t\tvariables: {\n\t\t\t\t\tdigest: options.digest,\n\t\t\t\t\tincludeTransaction: options.include?.transaction ?? false,\n\t\t\t\t\tincludeEffects: options.include?.effects ?? false,\n\t\t\t\t\tincludeEvents: options.include?.events ?? false,\n\t\t\t\t\tincludeBalanceChanges: options.include?.balanceChanges ?? false,\n\t\t\t\t\tincludeObjectTypes: options.include?.objectTypes ?? false,\n\t\t\t\t\tincludeBcs: options.include?.bcs ?? false,\n\t\t\t\t},\n\t\t\t},\n\t\t\t(result) => result.transaction,\n\t\t);\n\n\t\treturn parseTransaction(result, options.include);\n\t}\n\tasync executeTransaction<Include extends SuiClientTypes.TransactionInclude = {}>(\n\t\toptions: SuiClientTypes.ExecuteTransactionOptions<Include>,\n\t): Promise<SuiClientTypes.TransactionResult<Include>> {\n\t\tconst result = await this.#graphqlQuery(\n\t\t\t{\n\t\t\t\tquery: ExecuteTransactionDocument,\n\t\t\t\tvariables: {\n\t\t\t\t\ttransactionDataBcs: toBase64(options.transaction),\n\t\t\t\t\tsignatures: options.signatures,\n\t\t\t\t\tincludeTransaction: options.include?.transaction ?? false,\n\t\t\t\t\tincludeEffects: options.include?.effects ?? false,\n\t\t\t\t\tincludeEvents: options.include?.events ?? false,\n\t\t\t\t\tincludeBalanceChanges: options.include?.balanceChanges ?? false,\n\t\t\t\t\tincludeObjectTypes: options.include?.objectTypes ?? false,\n\t\t\t\t\tincludeBcs: options.include?.bcs ?? false,\n\t\t\t\t},\n\t\t\t},\n\t\t\t(result) => result.executeTransaction,\n\t\t);\n\n\t\treturn parseTransaction(result.effects?.transaction!, options.include);\n\t}\n\tasync simulateTransaction<Include extends SuiClientTypes.SimulateTransactionInclude = {}>(\n\t\toptions: SuiClientTypes.SimulateTransactionOptions<Include>,\n\t): Promise<SuiClientTypes.SimulateTransactionResult<Include>> {\n\t\tif (!(options.transaction instanceof Uint8Array)) {\n\t\t\tawait options.transaction.prepareForSerialization({ client: this });\n\t\t}\n\n\t\tconst result = await this.#graphqlQuery(\n\t\t\t{\n\t\t\t\tquery: SimulateTransactionDocument,\n\t\t\t\tvariables: {\n\t\t\t\t\ttransaction:\n\t\t\t\t\t\toptions.transaction instanceof Uint8Array\n\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\tbcs: {\n\t\t\t\t\t\t\t\t\t\tvalue: toBase64(options.transaction),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t: transactionToGrpcJson(options.transaction),\n\t\t\t\t\tincludeTransaction: options.include?.transaction ?? false,\n\t\t\t\t\tincludeEffects: options.include?.effects ?? false,\n\t\t\t\t\tincludeEvents: options.include?.events ?? false,\n\t\t\t\t\tincludeBalanceChanges: options.include?.balanceChanges ?? false,\n\t\t\t\t\tincludeObjectTypes: options.include?.objectTypes ?? false,\n\t\t\t\t\tincludeCommandResults: options.include?.commandResults ?? false,\n\t\t\t\t\tincludeBcs: options.include?.bcs ?? false,\n\t\t\t\t},\n\t\t\t},\n\t\t\t(result) => result.simulateTransaction,\n\t\t);\n\n\t\tconst transactionResult = parseTransaction(result.effects?.transaction!, options.include);\n\n\t\tconst commandResults =\n\t\t\toptions.include?.commandResults && result.outputs\n\t\t\t\t? result.outputs.map((output) => ({\n\t\t\t\t\t\treturnValues: (output.returnValues ?? []).map((rv) => ({\n\t\t\t\t\t\t\tbcs: rv.value?.bcs ? fromBase64(rv.value.bcs) : null,\n\t\t\t\t\t\t})),\n\t\t\t\t\t\tmutatedReferences: (output.mutatedReferences ?? []).map((mr) => ({\n\t\t\t\t\t\t\tbcs: mr.value?.bcs ? fromBase64(mr.value.bcs) : null,\n\t\t\t\t\t\t})),\n\t\t\t\t\t}))\n\t\t\t\t: undefined;\n\n\t\tif (transactionResult.$kind === 'Transaction') {\n\t\t\treturn {\n\t\t\t\t$kind: 'Transaction',\n\t\t\t\tTransaction: transactionResult.Transaction,\n\t\t\t\tcommandResults:\n\t\t\t\t\tcommandResults as SuiClientTypes.SimulateTransactionResult<Include>['commandResults'],\n\t\t\t};\n\t\t} else {\n\t\t\treturn {\n\t\t\t\t$kind: 'FailedTransaction',\n\t\t\t\tFailedTransaction: transactionResult.FailedTransaction,\n\t\t\t\tcommandResults:\n\t\t\t\t\tcommandResults as SuiClientTypes.SimulateTransactionResult<Include>['commandResults'],\n\t\t\t};\n\t\t}\n\t}\n\tasync getReferenceGasPrice(): Promise<SuiClientTypes.GetReferenceGasPriceResponse> {\n\t\tconst result = await this.#graphqlQuery(\n\t\t\t{\n\t\t\t\tquery: GetReferenceGasPriceDocument,\n\t\t\t},\n\t\t\t(result) => result.epoch?.referenceGasPrice,\n\t\t);\n\n\t\treturn {\n\t\t\treferenceGasPrice: result ?? '',\n\t\t};\n\t}\n\n\tasync getProtocolConfig(): Promise<SuiClientTypes.GetProtocolConfigResponse> {\n\t\tconst result = await this.#graphqlQuery(\n\t\t\t{\n\t\t\t\tquery: GetProtocolConfigDocument,\n\t\t\t},\n\t\t\t(result) => result.epoch?.protocolConfigs,\n\t\t);\n\n\t\tconst featureFlags: Record<string, boolean> = {};\n\t\tfor (const flag of result?.featureFlags ?? []) {\n\t\t\tfeatureFlags[flag.key] = flag.value;\n\t\t}\n\t\tconst attributes: Record<string, string | null> = {};\n\t\tfor (const config of result?.configs ?? []) {\n\t\t\tattributes[config.key] = config.value ?? null;\n\t\t}\n\n\t\treturn {\n\t\t\tprotocolConfig: {\n\t\t\t\tprotocolVersion: result?.protocolVersion?.toString() ?? (null as never),\n\t\t\t\tfeatureFlags,\n\t\t\t\tattributes,\n\t\t\t},\n\t\t};\n\t}\n\n\tasync getCurrentSystemState(): Promise<SuiClientTypes.GetCurrentSystemStateResponse> {\n\t\tconst result = await this.#graphqlQuery(\n\t\t\t{\n\t\t\t\tquery: GetCurrentSystemStateDocument,\n\t\t\t},\n\t\t\t(result) => result.epoch,\n\t\t);\n\n\t\tif (!result) {\n\t\t\tthrow new Error('Epoch data not found in response');\n\t\t}\n\n\t\tconst startMs = result.startTimestamp\n\t\t\t? new Date(result.startTimestamp).getTime().toString()\n\t\t\t: (null as never);\n\n\t\t// Parse the system state JSON from the MoveValue\n\t\tconst systemStateJson = result.systemState?.json as\n\t\t\t| {\n\t\t\t\t\tsystem_state_version?: string | number;\n\t\t\t\t\tsafe_mode?: boolean;\n\t\t\t\t\tsafe_mode_storage_rewards?: string;\n\t\t\t\t\tsafe_mode_computation_rewards?: string;\n\t\t\t\t\tsafe_mode_storage_rebates?: string | number;\n\t\t\t\t\tsafe_mode_non_refundable_storage_fee?: string | number;\n\t\t\t\t\tparameters?: {\n\t\t\t\t\t\tepoch_duration_ms?: string | number;\n\t\t\t\t\t\tstake_subsidy_start_epoch?: string | number;\n\t\t\t\t\t\tmax_validator_count?: string | number;\n\t\t\t\t\t\tmin_validator_joining_stake?: string | number;\n\t\t\t\t\t\tvalidator_low_stake_threshold?: string | number;\n\t\t\t\t\t\tvalidator_low_stake_grace_period?: string | number;\n\t\t\t\t\t};\n\t\t\t\t\tstorage_fund?: {\n\t\t\t\t\t\ttotal_object_storage_rebates?: string;\n\t\t\t\t\t\tnon_refundable_balance?: string;\n\t\t\t\t\t};\n\t\t\t\t\tstake_subsidy?: {\n\t\t\t\t\t\tbalance?: string;\n\t\t\t\t\t\tdistribution_counter?: string | number;\n\t\t\t\t\t\tcurrent_distribution_amount?: string | number;\n\t\t\t\t\t\tstake_subsidy_period_length?: string | number;\n\t\t\t\t\t\tstake_subsidy_decrease_rate?: number;\n\t\t\t\t\t};\n\t\t\t }\n\t\t\t| undefined;\n\n\t\treturn {\n\t\t\tsystemState: {\n\t\t\t\tsystemStateVersion: systemStateJson?.system_state_version?.toString() ?? (null as never),\n\t\t\t\tepoch: result.epochId?.toString() ?? (null as never),\n\t\t\t\tprotocolVersion: result.protocolConfigs?.protocolVersion?.toString() ?? (null as never),\n\t\t\t\treferenceGasPrice: result.referenceGasPrice ?? (null as never),\n\t\t\t\tepochStartTimestampMs: startMs,\n\t\t\t\tsafeMode: systemStateJson?.safe_mode ?? false,\n\t\t\t\tsafeModeStorageRewards: systemStateJson?.safe_mode_storage_rewards ?? (null as never),\n\t\t\t\tsafeModeComputationRewards:\n\t\t\t\t\tsystemStateJson?.safe_mode_computation_rewards ?? (null as never),\n\t\t\t\tsafeModeStorageRebates:\n\t\t\t\t\tsystemStateJson?.safe_mode_storage_rebates?.toString() ?? (null as never),\n\t\t\t\tsafeModeNonRefundableStorageFee:\n\t\t\t\t\tsystemStateJson?.safe_mode_non_refundable_storage_fee?.toString() ?? (null as never),\n\t\t\t\tparameters: {\n\t\t\t\t\tepochDurationMs:\n\t\t\t\t\t\tsystemStateJson?.parameters?.epoch_duration_ms?.toString() ?? (null as never),\n\t\t\t\t\tstakeSubsidyStartEpoch:\n\t\t\t\t\t\tsystemStateJson?.parameters?.stake_subsidy_start_epoch?.toString() ?? (null as never),\n\t\t\t\t\tmaxValidatorCount:\n\t\t\t\t\t\tsystemStateJson?.parameters?.max_validator_count?.toString() ?? (null as never),\n\t\t\t\t\tminValidatorJoiningStake:\n\t\t\t\t\t\tsystemStateJson?.parameters?.min_validator_joining_stake?.toString() ?? (null as never),\n\t\t\t\t\tvalidatorLowStakeThreshold:\n\t\t\t\t\t\tsystemStateJson?.parameters?.validator_low_stake_threshold?.toString() ??\n\t\t\t\t\t\t(null as never),\n\t\t\t\t\tvalidatorLowStakeGracePeriod:\n\t\t\t\t\t\tsystemStateJson?.parameters?.validator_low_stake_grace_period?.toString() ??\n\t\t\t\t\t\t(null as never),\n\t\t\t\t},\n\t\t\t\tstorageFund: {\n\t\t\t\t\ttotalObjectStorageRebates:\n\t\t\t\t\t\tsystemStateJson?.storage_fund?.total_object_storage_rebates ?? (null as never),\n\t\t\t\t\tnonRefundableBalance:\n\t\t\t\t\t\tsystemStateJson?.storage_fund?.non_refundable_balance ?? (null as never),\n\t\t\t\t},\n\t\t\t\tstakeSubsidy: {\n\t\t\t\t\tbalance: systemStateJson?.stake_subsidy?.balance ?? (null as never),\n\t\t\t\t\tdistributionCounter:\n\t\t\t\t\t\tsystemStateJson?.stake_subsidy?.distribution_counter?.toString() ?? (null as never),\n\t\t\t\t\tcurrentDistributionAmount:\n\t\t\t\t\t\tsystemStateJson?.stake_subsidy?.current_distribution_amount?.toString() ??\n\t\t\t\t\t\t(null as never),\n\t\t\t\t\tstakeSubsidyPeriodLength:\n\t\t\t\t\t\tsystemStateJson?.stake_subsidy?.stake_subsidy_period_length?.toString() ??\n\t\t\t\t\t\t(null as never),\n\t\t\t\t\tstakeSubsidyDecreaseRate:\n\t\t\t\t\t\tsystemStateJson?.stake_subsidy?.stake_subsidy_decrease_rate ?? (null as never),\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\tasync listDynamicFields(\n\t\toptions: SuiClientTypes.ListDynamicFieldsOptions,\n\t): Promise<SuiClientTypes.ListDynamicFieldsResponse> {\n\t\treturn this.#graphqlClient.listDynamicFields(options);\n\t}\n\n\tasync verifyZkLoginSignature(\n\t\toptions: SuiClientTypes.VerifyZkLoginSignatureOptions,\n\t): Promise<SuiClientTypes.ZkLoginVerifyResponse> {\n\t\tconst intentScope =\n\t\t\toptions.intentScope === 'TransactionData'\n\t\t\t\t? ZkLoginIntentScope.TransactionData\n\t\t\t\t: ZkLoginIntentScope.PersonalMessage;\n\n\t\tconst { data } = await this.#graphqlClient.query({\n\t\t\tquery: VerifyZkLoginSignatureDocument,\n\t\t\tvariables: {\n\t\t\t\tbytes: options.bytes,\n\t\t\t\tsignature: options.signature,\n\t\t\t\tintentScope,\n\t\t\t\tauthor: options.address,\n\t\t\t},\n\t\t});\n\n\t\treturn {\n\t\t\tsuccess: data?.verifyZkLoginSignature?.success ?? false,\n\t\t\terrors: [],\n\t\t};\n\t}\n\n\tasync defaultNameServiceName(\n\t\toptions: SuiClientTypes.DefaultNameServiceNameOptions,\n\t): Promise<SuiClientTypes.DefaultNameServiceNameResponse> {\n\t\tconst name = await this.#graphqlQuery(\n\t\t\t{\n\t\t\t\tquery: DefaultSuinsNameDocument,\n\t\t\t\tsignal: options.signal,\n\t\t\t\tvariables: {\n\t\t\t\t\taddress: options.address,\n\t\t\t\t},\n\t\t\t},\n\t\t\t(result) => result.address?.defaultNameRecord?.domain ?? null,\n\t\t);\n\n\t\treturn {\n\t\t\tdata: { name: name },\n\t\t};\n\t}\n\n\tasync getMoveFunction(\n\t\toptions: SuiClientTypes.GetMoveFunctionOptions,\n\t): Promise<SuiClientTypes.GetMoveFunctionResponse> {\n\t\tconst moveFunction = await this.#graphqlQuery(\n\t\t\t{\n\t\t\t\tquery: GetMoveFunctionDocument,\n\t\t\t\tvariables: {\n\t\t\t\t\tpackage: (await this.mvr.resolvePackage({ package: options.packageId })).package,\n\t\t\t\t\tmodule: options.moduleName,\n\t\t\t\t\tfunction: options.name,\n\t\t\t\t},\n\t\t\t},\n\t\t\t(result) => result.package?.module?.function,\n\t\t);\n\n\t\tlet visibility: 'public' | 'private' | 'friend' | 'unknown' = 'unknown';\n\n\t\tswitch (moveFunction.visibility) {\n\t\t\tcase 'PUBLIC':\n\t\t\t\tvisibility = 'public';\n\t\t\t\tbreak;\n\t\t\tcase 'PRIVATE':\n\t\t\t\tvisibility = 'private';\n\t\t\t\tbreak;\n\t\t\tcase 'FRIEND':\n\t\t\t\tvisibility = 'friend';\n\t\t\t\tbreak;\n\t\t}\n\n\t\treturn {\n\t\t\tfunction: {\n\t\t\t\tpackageId: normalizeSuiAddress(options.packageId),\n\t\t\t\tmoduleName: options.moduleName,\n\t\t\t\tname: moveFunction.name,\n\t\t\t\tvisibility,\n\t\t\t\tisEntry: moveFunction.isEntry ?? false,\n\t\t\t\ttypeParameters:\n\t\t\t\t\tmoveFunction.typeParameters?.map(({ constraints }) => ({\n\t\t\t\t\t\tisPhantom: false,\n\t\t\t\t\t\tconstraints:\n\t\t\t\t\t\t\tconstraints.map((constraint) => {\n\t\t\t\t\t\t\t\tswitch (constraint) {\n\t\t\t\t\t\t\t\t\tcase 'COPY':\n\t\t\t\t\t\t\t\t\t\treturn 'copy';\n\t\t\t\t\t\t\t\t\tcase 'DROP':\n\t\t\t\t\t\t\t\t\t\treturn 'drop';\n\t\t\t\t\t\t\t\t\tcase 'STORE':\n\t\t\t\t\t\t\t\t\t\treturn 'store';\n\t\t\t\t\t\t\t\t\tcase 'KEY':\n\t\t\t\t\t\t\t\t\t\treturn 'key';\n\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\treturn 'unknown';\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}) ?? [],\n\t\t\t\t\t})) ?? [],\n\t\t\t\tparameters:\n\t\t\t\t\tmoveFunction.parameters?.map((param) => parseNormalizedSuiMoveType(param.signature)) ??\n\t\t\t\t\t[],\n\t\t\t\treturns:\n\t\t\t\t\tmoveFunction.return?.map(({ signature }) => parseNormalizedSuiMoveType(signature)) ?? [],\n\t\t\t},\n\t\t};\n\t}\n\n\tasync getChainIdentifier(\n\t\t_options?: SuiClientTypes.GetChainIdentifierOptions,\n\t): Promise<SuiClientTypes.GetChainIdentifierResponse> {\n\t\treturn this.cache.read(['chainIdentifier'], async () => {\n\t\t\tconst checkpoint = await this.#graphqlQuery(\n\t\t\t\t{\n\t\t\t\t\tquery: GetChainIdentifierDocument,\n\t\t\t\t},\n\t\t\t\t(result) => result.checkpoint,\n\t\t\t);\n\t\t\tif (!checkpoint?.digest) {\n\t\t\t\tthrow new Error('Genesis checkpoint digest not found');\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tchainIdentifier: checkpoint.digest,\n\t\t\t};\n\t\t});\n\t}\n\n\tresolveTransactionPlugin() {\n\t\tconst graphqlClient = this.#graphqlClient;\n\t\treturn async function resolveTransactionData(\n\t\t\ttransactionData: TransactionDataBuilder,\n\t\t\toptions: BuildTransactionOptions,\n\t\t\tnext: () => Promise<void>,\n\t\t) {\n\t\t\tconst snapshot = transactionData.snapshot();\n\t\t\t// If sender is not set, use a dummy address for resolution purposes\n\t\t\tif (!snapshot.sender) {\n\t\t\t\tsnapshot.sender = '0x0000000000000000000000000000000000000000000000000000000000000000';\n\t\t\t}\n\t\t\tconst grpcTransaction = transactionDataToGrpcTransaction(snapshot);\n\t\t\tconst transactionJson = GrpcTransactionType.toJson(grpcTransaction);\n\n\t\t\tconst { data, errors } = await graphqlClient.query({\n\t\t\t\tquery: ResolveTransactionDocument,\n\t\t\t\tvariables: {\n\t\t\t\t\ttransaction: transactionJson,\n\t\t\t\t\tdoGasSelection:\n\t\t\t\t\t\t!options.onlyTransactionKind &&\n\t\t\t\t\t\t(snapshot.gasData.budget == null || snapshot.gasData.payment == null),\n\t\t\t\t},\n\t\t\t});\n\n\t\t\thandleGraphQLErrors(errors);\n\n\t\t\tconst transactionEffects = data?.simulateTransaction?.effects?.transaction?.effects;\n\t\t\tif (!options.onlyTransactionKind && transactionEffects?.status === ExecutionStatus.Failure) {\n\t\t\t\tconst executionError = parseGraphQLExecutionError(transactionEffects.executionError);\n\t\t\t\tconst errorMessage = executionError?.message ?? 'Transaction failed';\n\t\t\t\tthrow new SimulationError(`Transaction resolution failed: ${errorMessage}`, {\n\t\t\t\t\texecutionError,\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tconst resolvedTransactionBcs =\n\t\t\t\tdata?.simulateTransaction?.effects?.transaction?.transactionBcs;\n\n\t\t\tif (!resolvedTransactionBcs) {\n\t\t\t\tthrow new Error('simulateTransaction did not return resolved transaction data');\n\t\t\t}\n\n\t\t\tconst resolvedBuilder = TransactionDataBuilder.fromBytes(fromBase64(resolvedTransactionBcs));\n\t\t\tconst resolved = resolvedBuilder.snapshot();\n\n\t\t\tif (options.onlyTransactionKind) {\n\t\t\t\ttransactionData.applyResolvedData({\n\t\t\t\t\t...resolved,\n\t\t\t\t\tgasData: {\n\t\t\t\t\t\tbudget: null,\n\t\t\t\t\t\towner: null,\n\t\t\t\t\t\tpayment: null,\n\t\t\t\t\t\tprice: null,\n\t\t\t\t\t},\n\t\t\t\t\texpiration: null,\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\ttransactionData.applyResolvedData(resolved);\n\t\t\t}\n\n\t\t\treturn await next();\n\t\t};\n\t}\n}\nexport type GraphQLResponseErrors = Array<{\n\tmessage: string;\n\tlocations?: { line: number; column: number }[];\n\tpath?: (string | number)[];\n}>;\n\nfunction mapDisplay(\n\tinclude: boolean | undefined,\n\tdisplay: { output?: unknown | null; errors?: unknown | null } | null | undefined,\n): SuiClientTypes.Display | null | undefined {\n\tif (!include) return undefined;\n\tif (!display) return null;\n\treturn {\n\t\toutput: (display.output as Record<string, string> | null) ?? null,\n\t\terrors: (display.errors as Record<string, string> | null) ?? null,\n\t};\n}\n\nfunction handleGraphQLErrors(errors: GraphQLResponseErrors | undefined): void {\n\tif (!errors || errors.length === 0) return;\n\n\tconst errorInstances = errors.map((error) => new GraphQLResponseError(error));\n\n\tif (errorInstances.length === 1) {\n\t\tthrow errorInstances[0];\n\t}\n\n\tthrow new AggregateError(errorInstances);\n}\n\nclass GraphQLResponseError extends Error {\n\tlocations?: Array<{ line: number; column: number }>;\n\n\tconstructor(error: GraphQLResponseErrors[0]) {\n\t\tsuper(error.message);\n\t\tthis.locations = error.locations;\n\t}\n}\n\nfunction mapOwner(owner: Object_Owner_FieldsFragment): SuiClientTypes.ObjectOwner {\n\tswitch (owner.__typename) {\n\t\tcase 'AddressOwner':\n\t\t\treturn { $kind: 'AddressOwner', AddressOwner: owner.address?.address! };\n\t\tcase 'ConsensusAddressOwner':\n\t\t\treturn {\n\t\t\t\t$kind: 'ConsensusAddressOwner',\n\t\t\t\tConsensusAddressOwner: {\n\t\t\t\t\towner: owner?.address?.address!,\n\t\t\t\t\tstartVersion: String(owner.startVersion),\n\t\t\t\t},\n\t\t\t};\n\t\tcase 'ObjectOwner':\n\t\t\treturn { $kind: 'ObjectOwner', ObjectOwner: owner.address?.address! };\n\t\tcase 'Immutable':\n\t\t\treturn { $kind: 'Immutable', Immutable: true };\n\t\tcase 'Shared':\n\t\t\treturn {\n\t\t\t\t$kind: 'Shared',\n\t\t\t\tShared: { initialSharedVersion: String(owner.initialSharedVersion) },\n\t\t\t};\n\t}\n}\n\nfunction parseTransaction<Include extends SuiClientTypes.TransactionInclude = {}>(\n\ttransaction: Transaction_FieldsFragment,\n\tinclude?: Include,\n): SuiClientTypes.TransactionResult<Include> {\n\tconst objectTypes: Record<string, string> = {};\n\n\tif (include?.objectTypes) {\n\t\tconst effectsJson = transaction.effects?.effectsJson;\n\t\tif (effectsJson) {\n\t\t\tconst effects = TransactionEffectsType.fromJson(\n\t\t\t\teffectsJson as Parameters<typeof TransactionEffectsType.fromJson>[0],\n\t\t\t);\n\t\t\teffects.changedObjects?.forEach((change) => {\n\t\t\t\tif (change.objectId && change.objectType) {\n\t\t\t\t\tobjectTypes[change.objectId] = change.objectType;\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tconst objectChanges = transaction.effects?.objectChanges?.nodes;\n\t\tif (objectChanges) {\n\t\t\tfor (const change of objectChanges) {\n\t\t\t\tconst type = change.outputState?.asMoveObject?.contents?.type?.repr;\n\t\t\t\tif (change.address && type) {\n\t\t\t\t\tobjectTypes[change.address] = type;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tlet balanceChanges: SuiClientTypes.BalanceChange[] | undefined;\n\tif (include?.balanceChanges) {\n\t\tconst balanceChangesJson = transaction.effects?.balanceChangesJson;\n\t\tif (Array.isArray(balanceChangesJson)) {\n\t\t\tbalanceChanges = balanceChangesJson.map((json) => {\n\t\t\t\tconst change = BalanceChangeType.fromJson(\n\t\t\t\t\tjson as Parameters<typeof BalanceChangeType.fromJson>[0],\n\t\t\t\t);\n\t\t\t\treturn {\n\t\t\t\t\tcoinType: change.coinType!,\n\t\t\t\t\taddress: change.address!,\n\t\t\t\t\tamount: change.amount!,\n\t\t\t\t};\n\t\t\t});\n\t\t} else {\n\t\t\tbalanceChanges = [];\n\t\t}\n\t}\n\n\t// Get status from GraphQL response\n\tconst status: SuiClientTypes.ExecutionStatus =\n\t\ttransaction.effects?.status === ExecutionStatus.Success\n\t\t\t? { success: true, error: null }\n\t\t\t: {\n\t\t\t\t\tsuccess: false,\n\t\t\t\t\terror: parseGraphQLExecutionError(transaction.effects?.executionError),\n\t\t\t\t};\n\n\tlet transactionData: SuiClientTypes.TransactionData | undefined;\n\tif (include?.transaction && transaction.transactionJson) {\n\t\tconst grpcTx = GrpcTransactionType.fromJson(\n\t\t\ttransaction.transactionJson as Parameters<typeof GrpcTransactionType.fromJson>[0],\n\t\t);\n\t\tconst resolved = grpcTransactionToTransactionData(grpcTx);\n\t\ttransactionData = {\n\t\t\tgasData: resolved.gasData,\n\t\t\tsender: resolved.sender,\n\t\t\texpiration: resolved.expiration,\n\t\t\tcommands: resolved.commands,\n\t\t\tinputs: resolved.inputs,\n\t\t\tversion: resolved.version,\n\t\t};\n\t}\n\n\tconst bcsBytes =\n\t\tinclude?.bcs && transaction.transactionBcs ? fromBase64(transaction.transactionBcs) : undefined;\n\n\tconst result: SuiClientTypes.Transaction<Include> = {\n\t\tdigest: transaction.digest!,\n\t\tstatus,\n\t\teffects: (include?.effects\n\t\t\t? parseTransactionEffectsBcs(fromBase64(transaction.effects?.effectsBcs!))\n\t\t\t: undefined) as SuiClientTypes.Transaction<Include>['effects'],\n\t\tepoch: transaction.effects?.epoch?.epochId?.toString() ?? null,\n\t\tobjectTypes: (include?.objectTypes\n\t\t\t? objectTypes\n\t\t\t: undefined) as SuiClientTypes.Transaction<Include>['objectTypes'],\n\t\ttransaction: transactionData as SuiClientTypes.Transaction<Include>['transaction'],\n\t\tbcs: bcsBytes as SuiClientTypes.Transaction<Include>['bcs'],\n\t\tsignatures: transaction.signatures.map((sig) => sig.signatureBytes!),\n\t\tbalanceChanges: balanceChanges as SuiClientTypes.Transaction<Include>['balanceChanges'],\n\t\tevents: (include?.events\n\t\t\t? (transaction.effects?.events?.nodes.map((event) => {\n\t\t\t\t\tconst eventType = event.contents?.type?.repr!;\n\t\t\t\t\tconst [packageId, module] = eventType.split('::');\n\t\t\t\t\treturn {\n\t\t\t\t\t\tpackageId,\n\t\t\t\t\t\tmodule,\n\t\t\t\t\t\tsender: event.sender?.address!,\n\t\t\t\t\t\teventType,\n\t\t\t\t\t\tbcs: event.contents?.bcs ? fromBase64(event.contents.bcs) : new Uint8Array(),\n\t\t\t\t\t\tjson: (event.contents?.json as Record<string, unknown>) ?? null,\n\t\t\t\t\t};\n\t\t\t\t}) ?? [])\n\t\t\t: undefined) as SuiClientTypes.Transaction<Include>['events'],\n\t};\n\n\treturn status.success\n\t\t? { $kind: 'Transaction', Transaction: result, FailedTransaction: undefined as never }\n\t\t: { $kind: 'FailedTransaction', Transaction: undefined as never, FailedTransaction: result };\n}\n\nfunction parseNormalizedSuiMoveType(type: OpenMoveTypeSignature): SuiClientTypes.OpenSignature {\n\tlet reference: 'mutable' | 'immutable' | null = null;\n\n\tif (type.ref === '&') {\n\t\treference = 'immutable';\n\t} else if (type.ref === '&mut') {\n\t\treference = 'mutable';\n\t}\n\n\treturn {\n\t\treference,\n\t\tbody: parseNormalizedSuiMoveTypeBody(type.body),\n\t};\n}\n\nfunction parseGraphQLExecutionError(\n\texecutionError: GraphQLExecutionError | null | undefined,\n): SuiClientTypes.ExecutionError {\n\tconst name = mapGraphQLExecutionErrorKind(executionError);\n\n\tif (name === 'MoveAbort' && executionError?.abortCode != null) {\n\t\tconst location = parseGraphQLMoveLocation(executionError);\n\t\tconst cleverError = parseGraphQLCleverError(executionError);\n\t\tconst commandMatch = executionError.message?.match(/in (\\d+)\\w* command/);\n\t\tconst command = commandMatch ? parseInt(commandMatch[1], 10) - 1 : undefined;\n\n\t\treturn {\n\t\t\t$kind: 'MoveAbort',\n\t\t\tmessage: formatMoveAbortMessage({\n\t\t\t\tcommand,\n\t\t\t\tlocation: location\n\t\t\t\t\t? {\n\t\t\t\t\t\t\tpackage: location.package,\n\t\t\t\t\t\t\tmodule: location.module,\n\t\t\t\t\t\t\tfunctionName: location.functionName,\n\t\t\t\t\t\t\tinstruction: location.instruction,\n\t\t\t\t\t\t}\n\t\t\t\t\t: undefined,\n\t\t\t\tabortCode: executionError.abortCode!,\n\t\t\t\tcleverError: cleverError\n\t\t\t\t\t? {\n\t\t\t\t\t\t\tlineNumber: cleverError.lineNumber,\n\t\t\t\t\t\t\tconstantName: cleverError.constantName,\n\t\t\t\t\t\t\tvalue: cleverError.value,\n\t\t\t\t\t\t}\n\t\t\t\t\t: undefined,\n\t\t\t}),\n\t\t\tcommand,\n\t\t\tMoveAbort: {\n\t\t\t\tabortCode: executionError.abortCode!,\n\t\t\t\tlocation,\n\t\t\t\tcleverError,\n\t\t\t},\n\t\t};\n\t}\n\n\treturn {\n\t\t$kind: 'Unknown',\n\t\tmessage: executionError?.message ?? 'Transaction failed',\n\t\tUnknown: null,\n\t};\n}\n\nfunction mapGraphQLExecutionErrorKind(\n\texecutionError: GraphQLExecutionError | null | undefined,\n): string {\n\tif (executionError?.abortCode != null) {\n\t\treturn 'MoveAbort';\n\t}\n\n\tconst match = executionError?.message?.match(/^(\\w+)/);\n\treturn match?.[1] ?? 'Unknown';\n}\n\nfunction parseGraphQLMoveLocation(\n\texecutionError: GraphQLExecutionError,\n): SuiClientTypes.MoveLocation | undefined {\n\tconst hasLocation = executionError.module?.package?.address && executionError.module?.name;\n\tif (!hasLocation) {\n\t\treturn undefined;\n\t}\n\n\treturn {\n\t\tpackage: executionError.module?.package?.address,\n\t\tmodule: executionError.module?.name,\n\t\tfunctionName: executionError.function?.name,\n\t\tinstruction: executionError.instructionOffset ?? undefined,\n\t};\n}\n\nfunction parseGraphQLCleverError(\n\texecutionError: GraphQLExecutionError,\n): SuiClientTypes.CleverError | undefined {\n\tconst hasCleverError = executionError.identifier || executionError.constant;\n\tif (!hasCleverError) {\n\t\treturn undefined;\n\t}\n\n\treturn {\n\t\tconstantName: executionError.identifier ?? undefined,\n\t\tvalue: executionError.constant ?? undefined,\n\t\tlineNumber: executionError.sourceLineNumber ?? undefined,\n\t};\n}\n\nfunction parseNormalizedSuiMoveTypeBody(\n\ttype: OpenMoveTypeSignatureBody,\n): SuiClientTypes.OpenSignatureBody {\n\tswitch (type) {\n\t\tcase 'address':\n\t\t\treturn { $kind: 'address' };\n\t\tcase 'bool':\n\t\t\treturn { $kind: 'bool' };\n\t\tcase 'u8':\n\t\t\treturn { $kind: 'u8' };\n\t\tcase 'u16':\n\t\t\treturn { $kind: 'u16' };\n\t\tcase 'u32':\n\t\t\treturn { $kind: 'u32' };\n\t\tcase 'u64':\n\t\t\treturn { $kind: 'u64' };\n\t\tcase 'u128':\n\t\t\treturn { $kind: 'u128' };\n\t\tcase 'u256':\n\t\t\treturn { $kind: 'u256' };\n\t}\n\n\tif (typeof type === 'string') {\n\t\tthrow new Error(`Unknown type: ${type}`);\n\t}\n\n\tif ('vector' in type) {\n\t\treturn {\n\t\t\t$kind: 'vector',\n\t\t\tvector: parseNormalizedSuiMoveTypeBody(type.vector),\n\t\t};\n\t}\n\n\tif ('datatype' in type) {\n\t\treturn {\n\t\t\t$kind: 'datatype',\n\t\t\tdatatype: {\n\t\t\t\ttypeName: `${normalizeSuiAddress(type.datatype.package)}::${type.datatype.module}::${type.datatype.type}`,\n\t\t\t\ttypeParameters: type.datatype.typeParameters.map((t) => parseNormalizedSuiMoveTypeBody(t)),\n\t\t\t},\n\t\t};\n\t}\n\n\tif ('typeParameter' in type) {\n\t\treturn {\n\t\t\t$kind: 'typeParameter',\n\t\t\tindex: type.typeParameter,\n\t\t};\n\t}\n\n\tthrow new Error(`Unknown type: ${JSON.stringify(type)}`);\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"queries.d.mts","names":[],"sources":["../../../src/graphql/generated/queries.ts"],"sourcesContent":[],"mappings":";;;;cA05Ja,iDACH,MAAA,YACG,uBAAuB,SAAS;cAE/B,YAAY,uBAAuB,SAAS;;aAEtC;wCAEoB;uBAMR,uBAAuB,SAAS"}
1
+ {"version":3,"file":"queries.d.mts","names":[],"sources":["../../../src/graphql/generated/queries.ts"],"sourcesContent":[],"mappings":";;;;cA+5Ja,iDACH,MAAA,YACG,uBAAuB,SAAS;cAE/B,YAAY,uBAAuB,SAAS;;aAEtC;wCAEoB;uBAMR,uBAAuB,SAAS"}
@@ -393,6 +393,23 @@ const GetMoveFunctionDocument = new TypedDocumentString(`
393
393
  }
394
394
  }
395
395
  `);
396
+ const GetProtocolConfigDocument = new TypedDocumentString(`
397
+ query getProtocolConfig {
398
+ epoch {
399
+ protocolConfigs {
400
+ protocolVersion
401
+ featureFlags {
402
+ key
403
+ value
404
+ }
405
+ configs {
406
+ key
407
+ value
408
+ }
409
+ }
410
+ }
411
+ }
412
+ `);
396
413
  const GetReferenceGasPriceDocument = new TypedDocumentString(`
397
414
  query getReferenceGasPrice {
398
415
  epoch {
@@ -827,5 +844,5 @@ const VerifyZkLoginSignatureDocument = new TypedDocumentString(`
827
844
  `);
828
845
 
829
846
  //#endregion
830
- export { DefaultSuinsNameDocument, ExecuteTransactionDocument, ExecutionStatus, GetAllBalancesDocument, GetBalanceDocument, GetChainIdentifierDocument, GetCoinMetadataDocument, GetCoinsDocument, GetCurrentSystemStateDocument, GetDynamicFieldsDocument, GetMoveFunctionDocument, GetOwnedObjectsDocument, GetReferenceGasPriceDocument, GetTransactionBlockDocument, MultiGetObjectsDocument, ResolveTransactionDocument, SimulateTransactionDocument, VerifyZkLoginSignatureDocument, ZkLoginIntentScope };
847
+ export { DefaultSuinsNameDocument, ExecuteTransactionDocument, ExecutionStatus, GetAllBalancesDocument, GetBalanceDocument, GetChainIdentifierDocument, GetCoinMetadataDocument, GetCoinsDocument, GetCurrentSystemStateDocument, GetDynamicFieldsDocument, GetMoveFunctionDocument, GetOwnedObjectsDocument, GetProtocolConfigDocument, GetReferenceGasPriceDocument, GetTransactionBlockDocument, MultiGetObjectsDocument, ResolveTransactionDocument, SimulateTransactionDocument, VerifyZkLoginSignatureDocument, ZkLoginIntentScope };
831
848
  //# sourceMappingURL=queries.mjs.map