@sentio/sdk 2.50.2-rc.1 → 2.51.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/lib/aptos/api.d.ts +46 -4
  2. package/lib/aptos/api.d.ts.map +1 -1
  3. package/lib/aptos/api.js +53 -21
  4. package/lib/aptos/api.js.map +1 -1
  5. package/lib/aptos/builtin/0x1.d.ts +1489 -23
  6. package/lib/aptos/builtin/0x1.d.ts.map +1 -1
  7. package/lib/aptos/builtin/0x1.js +5189 -17
  8. package/lib/aptos/builtin/0x1.js.map +1 -1
  9. package/lib/aptos/builtin/0x3.d.ts +284 -1
  10. package/lib/aptos/builtin/0x3.d.ts.map +1 -1
  11. package/lib/aptos/builtin/0x3.js +385 -3
  12. package/lib/aptos/builtin/0x3.js.map +1 -1
  13. package/lib/aptos/builtin/0x4.d.ts +200 -1
  14. package/lib/aptos/builtin/0x4.d.ts.map +1 -1
  15. package/lib/aptos/builtin/0x4.js +604 -3
  16. package/lib/aptos/builtin/0x4.js.map +1 -1
  17. package/lib/aptos/codegen/codegen.js +14 -10
  18. package/lib/aptos/codegen/codegen.js.map +1 -1
  19. package/lib/aptos/context.d.ts +9 -8
  20. package/lib/aptos/context.d.ts.map +1 -1
  21. package/lib/aptos/context.js +26 -25
  22. package/lib/aptos/context.js.map +1 -1
  23. package/lib/aptos/ext/coin.test.js.map +1 -1
  24. package/lib/aptos/ext/token.d.ts.map +1 -1
  25. package/lib/aptos/ext/token.js +74 -35
  26. package/lib/aptos/ext/token.js.map +1 -1
  27. package/lib/aptos/index.d.ts +1 -1
  28. package/lib/aptos/index.d.ts.map +1 -1
  29. package/lib/aptos/index.js +1 -1
  30. package/lib/aptos/index.js.map +1 -1
  31. package/lib/aptos/move-coder.d.ts +2 -0
  32. package/lib/aptos/move-coder.d.ts.map +1 -1
  33. package/lib/aptos/move-coder.js +15 -0
  34. package/lib/aptos/move-coder.js.map +1 -1
  35. package/lib/aptos/network.d.ts +4 -3
  36. package/lib/aptos/network.d.ts.map +1 -1
  37. package/lib/aptos/network.js +7 -9
  38. package/lib/aptos/network.js.map +1 -1
  39. package/lib/sui/builtin/0x1.d.ts +4 -4
  40. package/lib/sui/builtin/0x1.d.ts.map +1 -1
  41. package/lib/sui/builtin/0x1.js.map +1 -1
  42. package/lib/sui/builtin/0x2.d.ts +4 -4
  43. package/lib/sui/builtin/0x2.d.ts.map +1 -1
  44. package/lib/sui/builtin/0x2.js.map +1 -1
  45. package/package.json +7 -7
  46. package/src/aptos/abis/0x1.json +81 -174
  47. package/src/aptos/abis/0x3.json +283 -3
  48. package/src/aptos/abis/0x4.json +2 -2
  49. package/src/aptos/api.ts +88 -23
  50. package/src/aptos/builtin/0x1.ts +7796 -68
  51. package/src/aptos/builtin/0x3.ts +751 -3
  52. package/src/aptos/builtin/0x4.ts +915 -3
  53. package/src/aptos/codegen/codegen.ts +20 -12
  54. package/src/aptos/context.ts +28 -26
  55. package/src/aptos/ext/token.ts +88 -41
  56. package/src/aptos/index.ts +1 -1
  57. package/src/aptos/move-coder.ts +17 -0
  58. package/src/aptos/network.ts +9 -9
  59. package/src/sui/builtin/0x1.ts +16 -16
  60. package/src/sui/builtin/0x2.ts +13 -13
@@ -28,6 +28,8 @@ class AptosNetworkCodegen extends BaseAptosCodegen {
28
28
  constructor(network: AptosNetwork) {
29
29
  const endpoint = getRpcEndpoint(network)
30
30
  super(endpoint)
31
+ const generator = this
32
+
31
33
  this.moduleGenerator = new (class extends SharedNetworkCodegen<
32
34
  AptosNetwork,
33
35
  MoveModuleBytecode,
@@ -37,12 +39,24 @@ class AptosNetworkCodegen extends BaseAptosCodegen {
37
39
  SYSTEM_PACKAGE = '@sentio/sdk/aptos'
38
40
  PREFIX = 'Aptos'
39
41
  NETWORK = AptosNetwork
42
+
43
+ protected generateExtra(address: string | undefined, module: InternalMoveModule): string {
44
+ return generator.generateExtra(address, module)
45
+ }
46
+
47
+ generateStructs(module: InternalMoveModule, struct: InternalMoveStruct, events: Set<string>) {
48
+ return generator.generateStructs(module, struct, events)
49
+ }
40
50
  })(network, this.chainAdapter)
41
51
  }
42
52
 
53
+ protected getGetDefaultCoder() {
54
+ return `defaultMoveCoderForClient(client)`
55
+ }
43
56
  generateModule(module: InternalMoveModule, allEventStructs: Map<string, InternalMoveStruct>) {
44
57
  return this.moduleGenerator.generateModule(module, allEventStructs)
45
58
  }
59
+
46
60
  generateImports() {
47
61
  return (
48
62
  this.moduleGenerator.generateImports() +
@@ -51,8 +65,8 @@ class AptosNetworkCodegen extends BaseAptosCodegen {
51
65
  import {
52
66
  MoveCoder, TypedEventInstance } from "@typemove/${this.PREFIX.toLowerCase()}"
53
67
 
54
- import { defaultMoveCoder } from "${this.defaultCoderPackage()}"
55
- import { Aptos, Account as AptosAccount, MoveAddressType, PendingTransactionResponse, InputGenerateTransactionOptions, MoveStructId } from '@aptos-labs/ts-sdk'`
68
+ import { defaultMoveCoder, defaultMoveCoderForClient } from "${this.defaultCoderPackage()}"
69
+ import { Aptos, Account as AptosAccount, MoveAddressType, PendingTransactionResponse, InputGenerateTransactionOptions, MoveStructId, InputViewFunctionData } from '@aptos-labs/ts-sdk'`
56
70
  )
57
71
  }
58
72
  generateLoadAll(isSystem: boolean): string {
@@ -63,8 +77,7 @@ class AptosNetworkCodegen extends BaseAptosCodegen {
63
77
  const MAINNET_CODEGEN = new AptosNetworkCodegen(AptosNetwork.MAIN_NET)
64
78
  const TESTNET_CODEGEN = new AptosNetworkCodegen(AptosNetwork.TEST_NET)
65
79
  const MOVEMENT_MAINNET_CODEGEN = new AptosNetworkCodegen(AptosNetwork.MOVEMENT_MAIN_NET)
66
- // const M2_TESTNET_CODEGEN = new AptosNetworkCodegen(AptosNetwork.MOVEMENT_TEST_NET)
67
- const MOVEMENT_PROTO_CODEGEN = new AptosNetworkCodegen(AptosNetwork.MOVEMENT_PORTO)
80
+ const MOVEMENT_TESTNET_CODEGEN = new AptosNetworkCodegen(AptosNetwork.MOVEMENT_TEST_NET)
68
81
 
69
82
  class AptosCodegen {
70
83
  async generate(srcDir: string, outputDir: string, builtin = false): Promise<number> {
@@ -75,14 +88,9 @@ class AptosCodegen {
75
88
  path.join(outputDir, 'movement-mainnet'),
76
89
  builtin
77
90
  )
78
- // const num4 = await M2_TESTNET_CODEGEN.generate(
79
- // path.join(srcDir, 'm2-testnet'),
80
- // path.join(outputDir, 'm2-testnet'),
81
- // builtin
82
- // )
83
- const num5 = await MOVEMENT_PROTO_CODEGEN.generate(
84
- path.join(srcDir, 'movement-porto'),
85
- path.join(outputDir, 'movement-porto'),
91
+ const num5 = await MOVEMENT_TESTNET_CODEGEN.generate(
92
+ path.join(srcDir, 'movement-testnet'),
93
+ path.join(outputDir, 'movement-testnet'),
86
94
  builtin
87
95
  )
88
96
  return num1 + num2 + num3 + num5
@@ -1,6 +1,6 @@
1
1
  import { RecordMetaData } from '@sentio/protos'
2
2
  import { type Labels, normalizeLabels } from '../index.js'
3
- import { MoveCoder } from './index.js'
3
+ import { MoveCoder, RichAptosClientWithContext } from './index.js'
4
4
  import {
5
5
  Aptos,
6
6
  Event,
@@ -13,14 +13,33 @@ import { defaultMoveCoder } from './move-coder.js'
13
13
  import { AptosNetwork } from './network.js'
14
14
  import { Endpoints } from '@sentio/runtime'
15
15
  import { ServerError, Status } from 'nice-grpc'
16
- import { MoveAccountContext, MoveContext } from '../move/index.js'
16
+ import { MoveContext } from '../move/index.js'
17
17
 
18
- export class AptosContext extends MoveContext<AptosNetwork, MoveModuleBytecode, Event | MoveResource> {
19
- moduleName: string
18
+ export abstract class AptosBaseContext extends MoveContext<AptosNetwork, MoveModuleBytecode, Event | MoveResource> {
20
19
  version: bigint
20
+ coder: MoveCoder
21
+
22
+ protected constructor(network: AptosNetwork, version: bigint, labels?: Labels) {
23
+ super(labels)
24
+ this.network = network
25
+ this.coder = defaultMoveCoder(this.network)
26
+ this.version = version
27
+ }
28
+
29
+ getClient(): Aptos {
30
+ let chainServer = Endpoints.INSTANCE.chainServer.get(this.network)
31
+ if (!chainServer) {
32
+ throw new ServerError(Status.INTERNAL, 'RPC endpoint not provided')
33
+ }
34
+ chainServer = chainServer + '/v1'
35
+ return new RichAptosClientWithContext(this, new AptosConfig({ fullnode: chainServer }))
36
+ }
37
+ }
38
+
39
+ export class AptosContext extends AptosBaseContext {
40
+ moduleName: string
21
41
  transaction: UserTransactionResponse
22
42
  eventIndex: number
23
- coder: MoveCoder
24
43
 
25
44
  constructor(
26
45
  moduleName: string,
@@ -31,13 +50,10 @@ export class AptosContext extends MoveContext<AptosNetwork, MoveModuleBytecode,
31
50
  eventIndex: number,
32
51
  baseLabels: Labels | undefined
33
52
  ) {
34
- super(baseLabels)
53
+ super(network, version, baseLabels)
35
54
  this.address = address.toLowerCase()
36
- this.network = network
37
55
  this.moduleName = moduleName
38
- this.version = version
39
56
  this.eventIndex = eventIndex
40
- this.coder = defaultMoveCoder(network)
41
57
  if (transaction) {
42
58
  this.transaction = transaction
43
59
  }
@@ -71,22 +87,17 @@ export class AptosContext extends MoveContext<AptosNetwork, MoveModuleBytecode,
71
87
  throw new ServerError(Status.INTERNAL, 'RPC endpoint not provided')
72
88
  }
73
89
  chainServer = chainServer + '/v1'
74
- return new Aptos(new AptosConfig({ fullnode: chainServer }))
90
+ return new RichAptosClientWithContext(this, new AptosConfig({ fullnode: chainServer }))
75
91
  }
76
92
  }
77
93
 
78
- export class AptosResourcesContext extends MoveAccountContext<AptosNetwork, MoveModuleBytecode, Event | MoveResource> {
79
- version: bigint
94
+ export class AptosResourcesContext extends AptosBaseContext {
80
95
  timestampInMicros: number
81
- coder: MoveCoder
82
96
 
83
97
  constructor(network: AptosNetwork, address: string, version: bigint, timestampInMicros: number, baseLabels?: Labels) {
84
- super(baseLabels)
98
+ super(network, version, baseLabels)
85
99
  this.address = address
86
- this.network = network
87
- this.version = version
88
100
  this.timestampInMicros = timestampInMicros
89
- this.coder = defaultMoveCoder(network)
90
101
  }
91
102
 
92
103
  getChainId() {
@@ -110,13 +121,4 @@ export class AptosResourcesContext extends MoveAccountContext<AptosNetwork, Move
110
121
  labels: normalizeLabels(labels)
111
122
  }
112
123
  }
113
-
114
- getClient(): Aptos {
115
- let chainServer = Endpoints.INSTANCE.chainServer.get(this.network)
116
- if (!chainServer) {
117
- throw new ServerError(Status.INTERNAL, 'RPC endpoint not provided')
118
- }
119
- chainServer = chainServer + '/v1'
120
- return new Aptos(new AptosConfig({ fullnode: chainServer }))
121
- }
122
124
  }
@@ -2,14 +2,15 @@ import { getPriceByType } from '../../utils/index.js'
2
2
  import fetch from 'node-fetch'
3
3
  import { accountTypeString, parseMoveType, SPLITTER } from '@typemove/move'
4
4
  import { AptosNetwork, getClient } from '../network.js'
5
- import { coin } from '../builtin/0x1.js'
5
+ import { coin, fungible_asset, type_info } from '../builtin/0x1.js'
6
6
  import { MoveStructId } from '@aptos-labs/ts-sdk'
7
7
  import { AptosChainId } from '@sentio/chain'
8
8
  import { DEFAULT_TOKEN_LIST, InternalTokenInfo } from './token-list.js'
9
9
  import { BaseCoinInfo } from '../../move/ext/index.js'
10
+ import { RichAptosClient } from '../api.js'
10
11
 
11
12
  export interface TokenInfo extends BaseCoinInfo {
12
- type: `0x${string}` // either tokenAddress or faAddress
13
+ type: `0x${string}` // either tokenAddress or faAddress, if both are present, tokenAddress is used
13
14
  tokenAddress?: `0x${string}`
14
15
  faAddress?: `0x${string}`
15
16
  name: string
@@ -92,48 +93,97 @@ export function isWhiteListToken(token: string): boolean {
92
93
  return TOKEN_MAP.has(accountTypeString(token))
93
94
  }
94
95
 
95
- const TOKEN_METADATA_CACHE = new Map<string, Promise<any | null>>()
96
+ const TOKEN_METADATA_CACHE = new Map<string, Promise<TokenInfo>>()
97
+
98
+ // Go to more common method
99
+ function toTypeString(ty: type_info.TypeInfo) {
100
+ const module = Buffer.from(ty.module_name.replace('0x', ''), 'hex')
101
+ const name = Buffer.from(ty.struct_name.replace('0x', ''), 'hex')
102
+ return `${ty.account_address}::${module.toString('utf-8')}::${name.toString('utf-8')}`
103
+ }
104
+
105
+ async function getFungibleTokenInfo(client: RichAptosClient, faAddress: `0x${string}`): Promise<TokenInfo> {
106
+ const meta = await client.getTypedAccountResource({
107
+ accountAddress: faAddress,
108
+ resourceType: fungible_asset.Metadata.type()
109
+ })
110
+ if (!meta) {
111
+ throw Error('fa token not existed: ' + faAddress)
112
+ }
113
+
114
+ const paired = await coin.view.pairedCoin(client, { functionArguments: [faAddress] })
115
+ let type = faAddress
116
+ let tokeType
117
+ if (paired[0].vec[0]) {
118
+ tokeType = type = toTypeString(paired[0].vec[0]) as `0x${string}`
119
+ }
120
+
121
+ return {
122
+ type: type,
123
+ category: 'Native',
124
+ tokenAddress: tokeType,
125
+ faAddress: faAddress as `0x${string}`,
126
+ name: meta.name,
127
+ symbol: meta.symbol,
128
+ decimals: meta.decimals,
129
+ bridge: 'Native',
130
+ logoUrl: meta.icon_uri,
131
+ websiteUrl: meta.project_uri
132
+ }
133
+ }
134
+
135
+ async function getCoinTokenInfo(client: RichAptosClient, type: MoveStructId): Promise<TokenInfo> {
136
+ const account = type.split(SPLITTER)[0]
137
+
138
+ const info = await client.getTypedAccountResource({
139
+ accountAddress: account,
140
+ resourceType: coin.CoinInfo.type(parseMoveType(type))
141
+ })
142
+
143
+ if (!info) {
144
+ throw Error('coin not existed: ' + type)
145
+ }
146
+
147
+ const paired = await coin.view.pairedMetadata(client, { typeArguments: [type] })
148
+ let faAddress
149
+ if (paired[0].vec[0]) {
150
+ faAddress = paired[0].vec[0] as `0x${string}`
151
+ }
152
+
153
+ return {
154
+ type: type as `0x${string}`,
155
+ category: 'Native',
156
+ tokenAddress: type as `0x${string}`,
157
+ faAddress,
158
+ name: info.name,
159
+ symbol: info.symbol,
160
+ decimals: info.decimals,
161
+ bridge: 'Native'
162
+ }
163
+ }
96
164
 
97
165
  // token: address of the fungible asset, e.g. "0xa", or the coin type, e.g. "0x1::aptos::AptosCoin"
98
166
  export async function getTokenInfoWithFallback(token: string, network?: AptosNetwork): Promise<TokenInfo> {
99
167
  const r = TOKEN_MAP.get(token)
100
- if (!r) {
101
- network = network || AptosNetwork.MAIN_NET
102
- const key = network + '_' + token
103
- let promise = TOKEN_METADATA_CACHE.get(key)
104
- if (!promise) {
105
- const client = getClient(network)
106
- // client.getDigitalAssetData()
107
-
108
- let account = token
109
- let metadataType: MoveStructId = `0x1::fungible_asset::Metadata`
110
- if (account.includes(SPLITTER)) {
111
- account = account.split(SPLITTER)[0]
112
- metadataType = coin.CoinInfo.type(parseMoveType(token)).getSignature() as MoveStructId
113
- }
114
-
115
- promise = client.getAccountResource({ accountAddress: account, resourceType: metadataType })
116
- TOKEN_METADATA_CACHE.set(key, promise)
117
- }
118
- const meta = await promise
119
- if (meta === null) {
120
- throw Error('Coin not existed ' + key)
121
- }
122
-
123
- // const parts = type.split(SPLITTER)
124
- return {
125
- type: token as `0x${string}`,
126
- category: 'Native',
127
- tokenAddress: token as `0x${string}`,
128
- name: meta.name,
129
- symbol: meta.symbol,
130
- decimals: meta.decimals,
131
- bridge: 'Native',
132
- logoUrl: meta.icon_uri,
133
- websiteUrl: meta.project_uri
168
+ if (r) {
169
+ return r
170
+ }
171
+ network = network || AptosNetwork.MAIN_NET
172
+ const key = network + '_' + token
173
+ let promise = TOKEN_METADATA_CACHE.get(key)
174
+ const isFungibleAsset = !token.includes(SPLITTER)
175
+ const client = getClient(network)
176
+
177
+ if (!promise) {
178
+ if (isFungibleAsset) {
179
+ promise = getFungibleTokenInfo(client, token as `0x${string}`)
180
+ } else {
181
+ promise = getCoinTokenInfo(client, token as MoveStructId)
134
182
  }
183
+ TOKEN_METADATA_CACHE.set(key, promise)
135
184
  }
136
- return r
185
+
186
+ return promise
137
187
  }
138
188
 
139
189
  export async function getPriceForToken(
@@ -141,9 +191,6 @@ export async function getPriceForToken(
141
191
  timestamp: number,
142
192
  network = AptosChainId.APTOS_MAINNET
143
193
  ): Promise<number> {
144
- // if (!isWhiteListToken(token)) {
145
- // return 0.0
146
- // }
147
194
  const date = new Date(timestamp / 1000)
148
195
  try {
149
196
  return (await getPriceByType(network, token, date)) || 0
@@ -13,7 +13,7 @@ export * from './api.js'
13
13
 
14
14
  export { AptosPlugin } from './aptos-plugin.js'
15
15
 
16
- export { defaultMoveCoder } from './move-coder.js'
16
+ export { defaultMoveCoder, defaultMoveCoderForClient } from './move-coder.js'
17
17
 
18
18
  export { MoveCoder } from '@typemove/aptos'
19
19
 
@@ -1,14 +1,31 @@
1
1
  import { AptosNetwork, getClient } from './network.js'
2
2
  import { MoveCoder } from '@typemove/aptos'
3
+ import { Aptos } from '@aptos-labs/ts-sdk'
3
4
 
4
5
  const CODERS = new Map<AptosNetwork, MoveCoder>()
6
+ const URL_CODERS = new Map<string, MoveCoder>()
5
7
 
6
8
  export function defaultMoveCoder(network: AptosNetwork = AptosNetwork.MAIN_NET): MoveCoder {
7
9
  let coder = CODERS.get(network)
8
10
  if (!coder) {
11
+ const client = getClient(network)
9
12
  coder = new MoveCoder(getClient(network))
10
13
  CODERS.set(network, coder)
14
+ URL_CODERS.set(client.config.fullnode || '', coder)
11
15
  }
12
16
 
13
17
  return coder
14
18
  }
19
+
20
+ // TODO this function need to use used inside context, otherwise can't be init
21
+ export function defaultMoveCoderForClient(client: Aptos): MoveCoder {
22
+ if (!client.config.fullnode) {
23
+ throw new Error('Fullnode is not defined')
24
+ }
25
+ let coder = URL_CODERS.get(client.config.fullnode)
26
+ if (!coder) {
27
+ coder = new MoveCoder(client)
28
+ URL_CODERS.set(client.config.fullnode, coder)
29
+ }
30
+ return coder
31
+ }
@@ -2,19 +2,21 @@ import { AptosChainId } from '@sentio/chain'
2
2
  import { Aptos, AptosConfig } from '@aptos-labs/ts-sdk'
3
3
  import { Labels } from '../core/index.js'
4
4
  import { Endpoints } from '@sentio/runtime'
5
+ import { RichAptosClient } from './api.js'
5
6
 
6
7
  export type AptosNetwork = AptosChainId
8
+
7
9
  export const AptosNetwork = <const>{
8
10
  MAIN_NET: AptosChainId.APTOS_MAINNET,
9
11
  TEST_NET: AptosChainId.APTOS_TESTNET,
10
- // DEV_NET: AptosChainId.APTOS_DEVNET,
12
+
11
13
  MOVEMENT_MAIN_NET: AptosChainId.APTOS_MOVEMENT_MAINNET,
12
- MOVEMENT_PORTO: AptosChainId.APTOS_MOVEMENT_PORTO
14
+ MOVEMENT_TEST_NET: AptosChainId.APTOS_MOVEMENT_TESTNET
13
15
  }
14
16
 
15
17
  export const MovementNetwork = <const>{
16
18
  MAIN_NET: AptosChainId.APTOS_MOVEMENT_MAINNET,
17
- PORTO: AptosChainId.APTOS_MOVEMENT_PORTO
19
+ TEST_NET: AptosChainId.APTOS_MOVEMENT_TESTNET
18
20
  }
19
21
 
20
22
  export class AptosBindOptions {
@@ -31,16 +33,14 @@ export function getRpcEndpoint(network: AptosNetwork): string {
31
33
  return 'https://mainnet.aptoslabs.com/v1'
32
34
  case AptosNetwork.TEST_NET:
33
35
  return 'https://testnet.aptoslabs.com/v1'
34
- case AptosChainId.APTOS_MOVEMENT_TESTNET:
35
- return 'https://aptos.testnet.suzuka.movementlabs.xyz/v1'
36
36
  case AptosNetwork.MOVEMENT_MAIN_NET:
37
37
  return 'https://mainnet.movementnetwork.xyz/v1'
38
- case AptosNetwork.MOVEMENT_PORTO:
39
- return 'https://aptos.testnet.porto.movementlabs.xyz/v1'
38
+ case AptosNetwork.MOVEMENT_TEST_NET:
39
+ return 'https://aptos.testnet.bardock.movementlabs.xyz/v1'
40
40
  }
41
41
  }
42
42
 
43
- export function getClient(network: AptosNetwork): Aptos {
43
+ export function getClient(network: AptosNetwork): RichAptosClient {
44
44
  let chainServer = Endpoints.INSTANCE.chainServer.get(network)
45
45
  if (!chainServer) {
46
46
  chainServer = getRpcEndpoint(network)
@@ -48,5 +48,5 @@ export function getClient(network: AptosNetwork): Aptos {
48
48
  } else {
49
49
  chainServer = chainServer + '/v1'
50
50
  }
51
- return new Aptos(new AptosConfig({ fullnode: chainServer }))
51
+ return new RichAptosClient(new AptosConfig({ fullnode: chainServer }))
52
52
  }
@@ -1963,7 +1963,7 @@ export namespace option {
1963
1963
  client: SuiClient,
1964
1964
  args: [option.Option<T0>],
1965
1965
  typeArguments: [TypeDescriptor<T0> | string],
1966
- ): Promise<TypedDevInspectResults<[T0[] | string]>> {
1966
+ ): Promise<TypedDevInspectResults<[T0[]]>> {
1967
1967
  const tx = new Transaction();
1968
1968
  builder.toVec(tx, args, typeArguments);
1969
1969
  const inspectRes = await client.devInspectTransactionBlock({
@@ -1971,9 +1971,9 @@ export namespace option {
1971
1971
  sender: ZERO_ADDRESS,
1972
1972
  });
1973
1973
 
1974
- return (await getMoveCoder(client)).decodeDevInspectResult<
1975
- [T0[] | string]
1976
- >(inspectRes);
1974
+ return (await getMoveCoder(client)).decodeDevInspectResult<[T0[]]>(
1975
+ inspectRes,
1976
+ );
1977
1977
  }
1978
1978
  }
1979
1979
  }
@@ -5527,7 +5527,7 @@ export namespace vector {
5527
5527
  client: SuiClient,
5528
5528
  args: [],
5529
5529
  typeArguments: [TypeDescriptor<T0> | string],
5530
- ): Promise<TypedDevInspectResults<[T0[] | string]>> {
5530
+ ): Promise<TypedDevInspectResults<[T0[]]>> {
5531
5531
  const tx = new Transaction();
5532
5532
  builder.empty(tx, args, typeArguments);
5533
5533
  const inspectRes = await client.devInspectTransactionBlock({
@@ -5535,15 +5535,15 @@ export namespace vector {
5535
5535
  sender: ZERO_ADDRESS,
5536
5536
  });
5537
5537
 
5538
- return (await getMoveCoder(client)).decodeDevInspectResult<
5539
- [T0[] | string]
5540
- >(inspectRes);
5538
+ return (await getMoveCoder(client)).decodeDevInspectResult<[T0[]]>(
5539
+ inspectRes,
5540
+ );
5541
5541
  }
5542
5542
  export async function flatten<T0 = any>(
5543
5543
  client: SuiClient,
5544
5544
  args: [string[]],
5545
5545
  typeArguments: [TypeDescriptor<T0> | string],
5546
- ): Promise<TypedDevInspectResults<[T0[] | string]>> {
5546
+ ): Promise<TypedDevInspectResults<[T0[]]>> {
5547
5547
  const tx = new Transaction();
5548
5548
  builder.flatten(tx, args, typeArguments);
5549
5549
  const inspectRes = await client.devInspectTransactionBlock({
@@ -5551,9 +5551,9 @@ export namespace vector {
5551
5551
  sender: ZERO_ADDRESS,
5552
5552
  });
5553
5553
 
5554
- return (await getMoveCoder(client)).decodeDevInspectResult<
5555
- [T0[] | string]
5556
- >(inspectRes);
5554
+ return (await getMoveCoder(client)).decodeDevInspectResult<[T0[]]>(
5555
+ inspectRes,
5556
+ );
5557
5557
  }
5558
5558
  export async function indexOf<T0 = any>(
5559
5559
  client: SuiClient,
@@ -5687,7 +5687,7 @@ export namespace vector {
5687
5687
  client: SuiClient,
5688
5688
  args: [T0],
5689
5689
  typeArguments: [TypeDescriptor<T0> | string],
5690
- ): Promise<TypedDevInspectResults<[T0[] | string]>> {
5690
+ ): Promise<TypedDevInspectResults<[T0[]]>> {
5691
5691
  const tx = new Transaction();
5692
5692
  builder.singleton(tx, args, typeArguments);
5693
5693
  const inspectRes = await client.devInspectTransactionBlock({
@@ -5695,9 +5695,9 @@ export namespace vector {
5695
5695
  sender: ZERO_ADDRESS,
5696
5696
  });
5697
5697
 
5698
- return (await getMoveCoder(client)).decodeDevInspectResult<
5699
- [T0[] | string]
5700
- >(inspectRes);
5698
+ return (await getMoveCoder(client)).decodeDevInspectResult<[T0[]]>(
5699
+ inspectRes,
5700
+ );
5701
5701
  }
5702
5702
  export async function swap<T0 = any>(
5703
5703
  client: SuiClient,
@@ -22698,7 +22698,7 @@ export namespace vec_map {
22698
22698
  client: SuiClient,
22699
22699
  args: [vec_map.VecMap<T0, T1>],
22700
22700
  typeArguments: [TypeDescriptor<T0> | string, TypeDescriptor<T1> | string],
22701
- ): Promise<TypedDevInspectResults<[T0[] | string, T1[] | string]>> {
22701
+ ): Promise<TypedDevInspectResults<[T0[], T1[]]>> {
22702
22702
  const tx = new Transaction();
22703
22703
  builder.intoKeysValues(tx, args, typeArguments);
22704
22704
  const inspectRes = await client.devInspectTransactionBlock({
@@ -22706,9 +22706,9 @@ export namespace vec_map {
22706
22706
  sender: ZERO_ADDRESS,
22707
22707
  });
22708
22708
 
22709
- return (await getMoveCoder(client)).decodeDevInspectResult<
22710
- [T0[] | string, T1[] | string]
22711
- >(inspectRes);
22709
+ return (await getMoveCoder(client)).decodeDevInspectResult<[T0[], T1[]]>(
22710
+ inspectRes,
22711
+ );
22712
22712
  }
22713
22713
  export async function isEmpty<T0 = any, T1 = any>(
22714
22714
  client: SuiClient,
@@ -22730,7 +22730,7 @@ export namespace vec_map {
22730
22730
  client: SuiClient,
22731
22731
  args: [string],
22732
22732
  typeArguments: [TypeDescriptor<T0> | string, TypeDescriptor<T1> | string],
22733
- ): Promise<TypedDevInspectResults<[T0[] | string]>> {
22733
+ ): Promise<TypedDevInspectResults<[T0[]]>> {
22734
22734
  const tx = new Transaction();
22735
22735
  builder.keys(tx, args, typeArguments);
22736
22736
  const inspectRes = await client.devInspectTransactionBlock({
@@ -22738,9 +22738,9 @@ export namespace vec_map {
22738
22738
  sender: ZERO_ADDRESS,
22739
22739
  });
22740
22740
 
22741
- return (await getMoveCoder(client)).decodeDevInspectResult<
22742
- [T0[] | string]
22743
- >(inspectRes);
22741
+ return (await getMoveCoder(client)).decodeDevInspectResult<[T0[]]>(
22742
+ inspectRes,
22743
+ );
22744
22744
  }
22745
22745
  export async function pop<T0 = any, T1 = any>(
22746
22746
  client: SuiClient,
@@ -22849,7 +22849,7 @@ export class vec_set extends SuiBaseProcessor {
22849
22849
 
22850
22850
  export namespace vec_set {
22851
22851
  export interface VecSet<T0> {
22852
- contents: T0[] | string;
22852
+ contents: T0[];
22853
22853
  }
22854
22854
 
22855
22855
  export namespace VecSet {
@@ -23141,7 +23141,7 @@ export namespace vec_set {
23141
23141
  client: SuiClient,
23142
23142
  args: [vec_set.VecSet<T0>],
23143
23143
  typeArguments: [TypeDescriptor<T0> | string],
23144
- ): Promise<TypedDevInspectResults<[T0[] | string]>> {
23144
+ ): Promise<TypedDevInspectResults<[T0[]]>> {
23145
23145
  const tx = new Transaction();
23146
23146
  builder.intoKeys(tx, args, typeArguments);
23147
23147
  const inspectRes = await client.devInspectTransactionBlock({
@@ -23149,9 +23149,9 @@ export namespace vec_set {
23149
23149
  sender: ZERO_ADDRESS,
23150
23150
  });
23151
23151
 
23152
- return (await getMoveCoder(client)).decodeDevInspectResult<
23153
- [T0[] | string]
23154
- >(inspectRes);
23152
+ return (await getMoveCoder(client)).decodeDevInspectResult<[T0[]]>(
23153
+ inspectRes,
23154
+ );
23155
23155
  }
23156
23156
  export async function isEmpty<T0 = any>(
23157
23157
  client: SuiClient,