@mysten/sui 1.17.0 → 1.18.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 (177) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/dist/cjs/bcs/bcs.d.ts +95 -95
  3. package/dist/cjs/bcs/effects.d.ts +41 -41
  4. package/dist/cjs/bcs/index.d.ts +136 -136
  5. package/dist/cjs/client/client.d.ts +1 -0
  6. package/dist/cjs/client/types/generated.d.ts +76 -27
  7. package/dist/cjs/client/types/generated.js.map +1 -1
  8. package/dist/cjs/client/types/params.d.ts +5 -1
  9. package/dist/cjs/client/types/params.js.map +1 -1
  10. package/dist/cjs/cryptography/intent.d.ts +1 -1
  11. package/dist/cjs/cryptography/publickey.d.ts +4 -0
  12. package/dist/cjs/cryptography/publickey.js +6 -0
  13. package/dist/cjs/cryptography/publickey.js.map +2 -2
  14. package/dist/cjs/cryptography/signature.d.ts +9 -9
  15. package/dist/cjs/graphql/generated/2024.1/tada-env.d.ts +11380 -0
  16. package/dist/cjs/graphql/generated/2024.1/tada-env.js +13142 -0
  17. package/dist/cjs/graphql/generated/2024.1/tada-env.js.map +7 -0
  18. package/dist/cjs/graphql/generated/2024.1/tsconfig.tada.js +1 -1
  19. package/dist/cjs/graphql/generated/2024.1/tsconfig.tada.js.map +1 -1
  20. package/dist/cjs/graphql/generated/2024.4/tada-env.d.ts +11496 -0
  21. package/dist/cjs/graphql/generated/2024.4/tada-env.js +13288 -0
  22. package/dist/cjs/graphql/generated/2024.4/tada-env.js.map +7 -0
  23. package/dist/cjs/graphql/generated/2024.4/tsconfig.tada.js +1 -1
  24. package/dist/cjs/graphql/generated/2024.4/tsconfig.tada.js.map +1 -1
  25. package/dist/cjs/graphql/generated/latest/tada-env.d.ts +12540 -0
  26. package/dist/cjs/graphql/generated/latest/tada-env.js +14498 -0
  27. package/dist/cjs/graphql/generated/latest/tada-env.js.map +7 -0
  28. package/dist/cjs/graphql/generated/latest/tsconfig.tada.js +12 -0
  29. package/dist/cjs/graphql/generated/latest/tsconfig.tada.js.map +7 -0
  30. package/dist/cjs/graphql/schemas/2024.1/index.d.ts +6 -8999
  31. package/dist/cjs/graphql/schemas/2024.1/index.js.map +1 -1
  32. package/dist/cjs/graphql/schemas/2024.4/index.d.ts +6 -9053
  33. package/dist/cjs/graphql/schemas/2024.4/index.js.map +1 -1
  34. package/dist/cjs/graphql/schemas/latest/index.d.ts +10 -0
  35. package/dist/cjs/graphql/schemas/latest/index.js +31 -0
  36. package/dist/cjs/graphql/schemas/latest/index.js.map +7 -0
  37. package/dist/cjs/keypairs/ed25519/ed25519-hd-key.d.ts +0 -5
  38. package/dist/cjs/keypairs/ed25519/ed25519-hd-key.js +1 -25
  39. package/dist/cjs/keypairs/ed25519/ed25519-hd-key.js.map +3 -3
  40. package/dist/cjs/keypairs/ed25519/keypair.d.ts +1 -1
  41. package/dist/cjs/keypairs/ed25519/keypair.js +22 -18
  42. package/dist/cjs/keypairs/ed25519/keypair.js.map +3 -3
  43. package/dist/cjs/keypairs/ed25519/publickey.js +2 -12
  44. package/dist/cjs/keypairs/ed25519/publickey.js.map +3 -3
  45. package/dist/cjs/keypairs/passkey/keypair.d.ts +1 -1
  46. package/dist/cjs/keypairs/passkey/publickey.d.ts +4 -4
  47. package/dist/cjs/keypairs/secp256k1/keypair.d.ts +1 -1
  48. package/dist/cjs/keypairs/secp256r1/keypair.d.ts +1 -1
  49. package/dist/cjs/transactions/Arguments.d.ts +11 -980
  50. package/dist/cjs/transactions/Arguments.js +1 -3
  51. package/dist/cjs/transactions/Arguments.js.map +2 -2
  52. package/dist/cjs/transactions/ObjectCache.d.ts +2 -1
  53. package/dist/cjs/transactions/ObjectCache.js +8 -3
  54. package/dist/cjs/transactions/ObjectCache.js.map +2 -2
  55. package/dist/cjs/transactions/Transaction.d.ts +13 -33
  56. package/dist/cjs/transactions/Transaction.js +8 -8
  57. package/dist/cjs/transactions/Transaction.js.map +2 -2
  58. package/dist/cjs/transactions/TransactionData.d.ts +1 -1
  59. package/dist/cjs/transactions/executor/caching.d.ts +1 -1
  60. package/dist/cjs/transactions/executor/serial.d.ts +3 -3
  61. package/dist/cjs/transactions/executor/serial.js +3 -5
  62. package/dist/cjs/transactions/executor/serial.js.map +3 -3
  63. package/dist/cjs/verify/verify.d.ts +5 -1
  64. package/dist/cjs/verify/verify.js +10 -1
  65. package/dist/cjs/verify/verify.js.map +2 -2
  66. package/dist/cjs/version.d.ts +2 -2
  67. package/dist/cjs/version.js +2 -2
  68. package/dist/cjs/version.js.map +1 -1
  69. package/dist/cjs/zklogin/publickey.d.ts +6 -2
  70. package/dist/cjs/zklogin/publickey.js +22 -10
  71. package/dist/cjs/zklogin/publickey.js.map +2 -2
  72. package/dist/esm/bcs/bcs.d.ts +95 -95
  73. package/dist/esm/bcs/effects.d.ts +41 -41
  74. package/dist/esm/bcs/index.d.ts +136 -136
  75. package/dist/esm/client/client.d.ts +1 -0
  76. package/dist/esm/client/types/generated.d.ts +76 -27
  77. package/dist/esm/client/types/params.d.ts +5 -1
  78. package/dist/esm/cryptography/intent.d.ts +1 -1
  79. package/dist/esm/cryptography/publickey.d.ts +4 -0
  80. package/dist/esm/cryptography/publickey.js +6 -0
  81. package/dist/esm/cryptography/publickey.js.map +2 -2
  82. package/dist/esm/cryptography/signature.d.ts +9 -9
  83. package/dist/esm/graphql/generated/2024.1/tada-env.d.ts +11380 -0
  84. package/dist/esm/graphql/generated/2024.1/tada-env.js +13122 -0
  85. package/dist/esm/graphql/generated/2024.1/tada-env.js.map +7 -0
  86. package/dist/esm/graphql/generated/2024.1/tsconfig.tada.js +1 -1
  87. package/dist/esm/graphql/generated/2024.1/tsconfig.tada.js.map +1 -1
  88. package/dist/esm/graphql/generated/2024.4/tada-env.d.ts +11496 -0
  89. package/dist/esm/graphql/generated/2024.4/tada-env.js +13268 -0
  90. package/dist/esm/graphql/generated/2024.4/tada-env.js.map +7 -0
  91. package/dist/esm/graphql/generated/2024.4/tsconfig.tada.js +1 -1
  92. package/dist/esm/graphql/generated/2024.4/tsconfig.tada.js.map +1 -1
  93. package/dist/esm/graphql/generated/latest/tada-env.d.ts +12540 -0
  94. package/dist/esm/graphql/generated/latest/tada-env.js +14478 -0
  95. package/dist/esm/graphql/generated/latest/tada-env.js.map +7 -0
  96. package/dist/esm/graphql/generated/latest/tsconfig.tada.js +17 -0
  97. package/dist/esm/graphql/generated/latest/tsconfig.tada.js.map +7 -0
  98. package/dist/esm/graphql/schemas/2024.1/index.d.ts +6 -8999
  99. package/dist/esm/graphql/schemas/2024.1/index.js.map +1 -1
  100. package/dist/esm/graphql/schemas/2024.4/index.d.ts +6 -9053
  101. package/dist/esm/graphql/schemas/2024.4/index.js.map +1 -1
  102. package/dist/esm/graphql/schemas/latest/index.d.ts +10 -0
  103. package/dist/esm/graphql/schemas/latest/index.js +10 -0
  104. package/dist/esm/graphql/schemas/latest/index.js.map +7 -0
  105. package/dist/esm/keypairs/ed25519/ed25519-hd-key.d.ts +0 -5
  106. package/dist/esm/keypairs/ed25519/ed25519-hd-key.js +1 -15
  107. package/dist/esm/keypairs/ed25519/ed25519-hd-key.js.map +2 -2
  108. package/dist/esm/keypairs/ed25519/keypair.d.ts +1 -1
  109. package/dist/esm/keypairs/ed25519/keypair.js +22 -8
  110. package/dist/esm/keypairs/ed25519/keypair.js.map +2 -2
  111. package/dist/esm/keypairs/ed25519/publickey.js +2 -2
  112. package/dist/esm/keypairs/ed25519/publickey.js.map +2 -2
  113. package/dist/esm/keypairs/passkey/keypair.d.ts +1 -1
  114. package/dist/esm/keypairs/passkey/publickey.d.ts +4 -4
  115. package/dist/esm/keypairs/secp256k1/keypair.d.ts +1 -1
  116. package/dist/esm/keypairs/secp256r1/keypair.d.ts +1 -1
  117. package/dist/esm/transactions/Arguments.d.ts +11 -980
  118. package/dist/esm/transactions/Arguments.js +1 -3
  119. package/dist/esm/transactions/Arguments.js.map +2 -2
  120. package/dist/esm/transactions/ObjectCache.d.ts +2 -1
  121. package/dist/esm/transactions/ObjectCache.js +8 -3
  122. package/dist/esm/transactions/ObjectCache.js.map +2 -2
  123. package/dist/esm/transactions/Transaction.d.ts +13 -33
  124. package/dist/esm/transactions/Transaction.js +8 -8
  125. package/dist/esm/transactions/Transaction.js.map +2 -2
  126. package/dist/esm/transactions/TransactionData.d.ts +1 -1
  127. package/dist/esm/transactions/executor/caching.d.ts +1 -1
  128. package/dist/esm/transactions/executor/serial.d.ts +3 -3
  129. package/dist/esm/transactions/executor/serial.js +3 -5
  130. package/dist/esm/transactions/executor/serial.js.map +2 -2
  131. package/dist/esm/verify/verify.d.ts +5 -1
  132. package/dist/esm/verify/verify.js +10 -1
  133. package/dist/esm/verify/verify.js.map +2 -2
  134. package/dist/esm/version.d.ts +2 -2
  135. package/dist/esm/version.js +2 -2
  136. package/dist/esm/version.js.map +1 -1
  137. package/dist/esm/zklogin/publickey.d.ts +6 -2
  138. package/dist/esm/zklogin/publickey.js +21 -9
  139. package/dist/esm/zklogin/publickey.js.map +2 -2
  140. package/dist/tsconfig.esm.tsbuildinfo +1 -1
  141. package/dist/tsconfig.tsbuildinfo +1 -1
  142. package/graphql/schemas/latest/package.json +6 -0
  143. package/package.json +15 -13
  144. package/src/client/types/generated.ts +110 -59
  145. package/src/client/types/params.ts +5 -1
  146. package/src/cryptography/publickey.ts +7 -0
  147. package/src/graphql/generated/2024.1/tada-env.ts +13144 -0
  148. package/src/graphql/generated/2024.1/tsconfig.tada.json +1 -1
  149. package/src/graphql/generated/2024.4/tada-env.ts +13290 -0
  150. package/src/graphql/generated/2024.4/tsconfig.tada.json +1 -1
  151. package/src/graphql/generated/latest/schema.graphql +4808 -0
  152. package/src/graphql/generated/latest/tada-env.ts +14500 -0
  153. package/src/graphql/generated/latest/tsconfig.tada.json +11 -0
  154. package/src/graphql/schemas/2024.1/index.ts +1 -1
  155. package/src/graphql/schemas/2024.4/index.ts +1 -1
  156. package/src/graphql/schemas/latest/index.ts +17 -0
  157. package/src/keypairs/ed25519/ed25519-hd-key.ts +4 -14
  158. package/src/keypairs/ed25519/keypair.ts +23 -8
  159. package/src/keypairs/ed25519/publickey.ts +2 -2
  160. package/src/transactions/Arguments.ts +6 -5
  161. package/src/transactions/ObjectCache.ts +5 -1
  162. package/src/transactions/Transaction.ts +21 -15
  163. package/src/transactions/__tests__/bcs.test.ts +1 -1
  164. package/src/transactions/executor/serial.ts +3 -5
  165. package/src/verify/verify.ts +21 -3
  166. package/src/version.ts +2 -2
  167. package/src/zklogin/publickey.ts +19 -8
  168. package/dist/cjs/graphql/generated/2024.1/tada-env.d.js +0 -17
  169. package/dist/cjs/graphql/generated/2024.1/tada-env.d.js.map +0 -7
  170. package/dist/cjs/graphql/generated/2024.4/tada-env.d.js +0 -17
  171. package/dist/cjs/graphql/generated/2024.4/tada-env.d.js.map +0 -7
  172. package/dist/esm/graphql/generated/2024.1/tada-env.d.js +0 -1
  173. package/dist/esm/graphql/generated/2024.1/tada-env.d.js.map +0 -7
  174. package/dist/esm/graphql/generated/2024.4/tada-env.d.js +0 -1
  175. package/dist/esm/graphql/generated/2024.4/tada-env.d.js.map +0 -7
  176. package/src/graphql/generated/2024.1/tada-env.d.ts +0 -201
  177. package/src/graphql/generated/2024.4/tada-env.d.ts +0 -203
@@ -32,6 +32,10 @@ export declare abstract class PublicKey {
32
32
  * Verifies that the signature is valid for for the provided Transaction
33
33
  */
34
34
  verifyTransaction(transaction: Uint8Array, signature: Uint8Array | string): Promise<boolean>;
35
+ /**
36
+ * Verifies that the public key is associated with the provided address
37
+ */
38
+ verifyAddress(address: string): boolean;
35
39
  /**
36
40
  * Returns the bytes representation of the public key
37
41
  * prefixed with the signature scheme flag
@@ -88,6 +88,12 @@ class PublicKey {
88
88
  verifyTransaction(transaction, signature) {
89
89
  return this.verifyWithIntent(transaction, signature, "TransactionData");
90
90
  }
91
+ /**
92
+ * Verifies that the public key is associated with the provided address
93
+ */
94
+ verifyAddress(address) {
95
+ return this.toSuiAddress() === address;
96
+ }
91
97
  /**
92
98
  * Returns the bytes representation of the public key
93
99
  * prefixed with the signature scheme flag
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/cryptography/publickey.ts"],
4
- "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { toBase64 } from '@mysten/bcs';\nimport { blake2b } from '@noble/hashes/blake2b';\nimport { bytesToHex } from '@noble/hashes/utils';\n\nimport { bcs } from '../bcs/index.js';\nimport { normalizeSuiAddress, SUI_ADDRESS_LENGTH } from '../utils/sui-types.js';\nimport type { IntentScope } from './intent.js';\nimport { messageWithIntent } from './intent.js';\n\n/**\n * Value to be converted into public key.\n */\nexport type PublicKeyInitData = string | Uint8Array | Iterable<number>;\n\nexport function bytesEqual(a: Uint8Array, b: Uint8Array) {\n\tif (a === b) return true;\n\n\tif (a.length !== b.length) {\n\t\treturn false;\n\t}\n\n\tfor (let i = 0; i < a.length; i++) {\n\t\tif (a[i] !== b[i]) {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\n/**\n * A public key\n */\nexport abstract class PublicKey {\n\t/**\n\t * Checks if two public keys are equal\n\t */\n\tequals(publicKey: PublicKey) {\n\t\treturn bytesEqual(this.toRawBytes(), publicKey.toRawBytes());\n\t}\n\n\t/**\n\t * Return the base-64 representation of the public key\n\t */\n\ttoBase64() {\n\t\treturn toBase64(this.toRawBytes());\n\t}\n\n\ttoString(): never {\n\t\tthrow new Error(\n\t\t\t'`toString` is not implemented on public keys. Use `toBase64()` or `toRawBytes()` instead.',\n\t\t);\n\t}\n\n\t/**\n\t * Return the Sui representation of the public key encoded in\n\t * base-64. A Sui public key is formed by the concatenation\n\t * of the scheme flag with the raw bytes of the public key\n\t */\n\ttoSuiPublicKey(): string {\n\t\tconst bytes = this.toSuiBytes();\n\t\treturn toBase64(bytes);\n\t}\n\n\tverifyWithIntent(\n\t\tbytes: Uint8Array,\n\t\tsignature: Uint8Array | string,\n\t\tintent: IntentScope,\n\t): Promise<boolean> {\n\t\tconst intentMessage = messageWithIntent(intent, bytes);\n\t\tconst digest = blake2b(intentMessage, { dkLen: 32 });\n\n\t\treturn this.verify(digest, signature);\n\t}\n\n\t/**\n\t * Verifies that the signature is valid for for the provided PersonalMessage\n\t */\n\tverifyPersonalMessage(message: Uint8Array, signature: Uint8Array | string): Promise<boolean> {\n\t\treturn this.verifyWithIntent(\n\t\t\tbcs.vector(bcs.u8()).serialize(message).toBytes(),\n\t\t\tsignature,\n\t\t\t'PersonalMessage',\n\t\t);\n\t}\n\n\t/**\n\t * Verifies that the signature is valid for for the provided Transaction\n\t */\n\tverifyTransaction(transaction: Uint8Array, signature: Uint8Array | string): Promise<boolean> {\n\t\treturn this.verifyWithIntent(transaction, signature, 'TransactionData');\n\t}\n\n\t/**\n\t * Returns the bytes representation of the public key\n\t * prefixed with the signature scheme flag\n\t */\n\ttoSuiBytes(): Uint8Array {\n\t\tconst rawBytes = this.toRawBytes();\n\t\tconst suiBytes = new Uint8Array(rawBytes.length + 1);\n\t\tsuiBytes.set([this.flag()]);\n\t\tsuiBytes.set(rawBytes, 1);\n\n\t\treturn suiBytes;\n\t}\n\n\t/**\n\t * Return the Sui address associated with this Ed25519 public key\n\t */\n\ttoSuiAddress(): string {\n\t\t// Each hex char represents half a byte, hence hex address doubles the length\n\t\treturn normalizeSuiAddress(\n\t\t\tbytesToHex(blake2b(this.toSuiBytes(), { dkLen: 32 })).slice(0, SUI_ADDRESS_LENGTH * 2),\n\t\t);\n\t}\n\n\t/**\n\t * Return the byte array representation of the public key\n\t */\n\tabstract toRawBytes(): Uint8Array;\n\n\t/**\n\t * Return signature scheme flag of the public key\n\t */\n\tabstract flag(): number;\n\n\t/**\n\t * Verifies that the signature is valid for for the provided message\n\t */\n\tabstract verify(data: Uint8Array, signature: Uint8Array | string): Promise<boolean>;\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,iBAAyB;AACzB,qBAAwB;AACxB,mBAA2B;AAE3B,IAAAA,cAAoB;AACpB,uBAAwD;AAExD,oBAAkC;AAO3B,SAAS,WAAW,GAAe,GAAe;AACxD,MAAI,MAAM,EAAG,QAAO;AAEpB,MAAI,EAAE,WAAW,EAAE,QAAQ;AAC1B,WAAO;AAAA,EACR;AAEA,WAAS,IAAI,GAAG,IAAI,EAAE,QAAQ,KAAK;AAClC,QAAI,EAAE,CAAC,MAAM,EAAE,CAAC,GAAG;AAClB,aAAO;AAAA,IACR;AAAA,EACD;AACA,SAAO;AACR;AAKO,MAAe,UAAU;AAAA;AAAA;AAAA;AAAA,EAI/B,OAAO,WAAsB;AAC5B,WAAO,WAAW,KAAK,WAAW,GAAG,UAAU,WAAW,CAAC;AAAA,EAC5D;AAAA;AAAA;AAAA;AAAA,EAKA,WAAW;AACV,eAAO,qBAAS,KAAK,WAAW,CAAC;AAAA,EAClC;AAAA,EAEA,WAAkB;AACjB,UAAM,IAAI;AAAA,MACT;AAAA,IACD;AAAA,EACD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,iBAAyB;AACxB,UAAM,QAAQ,KAAK,WAAW;AAC9B,eAAO,qBAAS,KAAK;AAAA,EACtB;AAAA,EAEA,iBACC,OACA,WACA,QACmB;AACnB,UAAM,oBAAgB,iCAAkB,QAAQ,KAAK;AACrD,UAAM,aAAS,wBAAQ,eAAe,EAAE,OAAO,GAAG,CAAC;AAEnD,WAAO,KAAK,OAAO,QAAQ,SAAS;AAAA,EACrC;AAAA;AAAA;AAAA;AAAA,EAKA,sBAAsB,SAAqB,WAAkD;AAC5F,WAAO,KAAK;AAAA,MACX,gBAAI,OAAO,gBAAI,GAAG,CAAC,EAAE,UAAU,OAAO,EAAE,QAAQ;AAAA,MAChD;AAAA,MACA;AAAA,IACD;AAAA,EACD;AAAA;AAAA;AAAA;AAAA,EAKA,kBAAkB,aAAyB,WAAkD;AAC5F,WAAO,KAAK,iBAAiB,aAAa,WAAW,iBAAiB;AAAA,EACvE;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,aAAyB;AACxB,UAAM,WAAW,KAAK,WAAW;AACjC,UAAM,WAAW,IAAI,WAAW,SAAS,SAAS,CAAC;AACnD,aAAS,IAAI,CAAC,KAAK,KAAK,CAAC,CAAC;AAC1B,aAAS,IAAI,UAAU,CAAC;AAExB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA,EAKA,eAAuB;AAEtB,eAAO;AAAA,UACN,6BAAW,wBAAQ,KAAK,WAAW,GAAG,EAAE,OAAO,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,sCAAqB,CAAC;AAAA,IACtF;AAAA,EACD;AAgBD;",
4
+ "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { toBase64 } from '@mysten/bcs';\nimport { blake2b } from '@noble/hashes/blake2b';\nimport { bytesToHex } from '@noble/hashes/utils';\n\nimport { bcs } from '../bcs/index.js';\nimport { normalizeSuiAddress, SUI_ADDRESS_LENGTH } from '../utils/sui-types.js';\nimport type { IntentScope } from './intent.js';\nimport { messageWithIntent } from './intent.js';\n\n/**\n * Value to be converted into public key.\n */\nexport type PublicKeyInitData = string | Uint8Array | Iterable<number>;\n\nexport function bytesEqual(a: Uint8Array, b: Uint8Array) {\n\tif (a === b) return true;\n\n\tif (a.length !== b.length) {\n\t\treturn false;\n\t}\n\n\tfor (let i = 0; i < a.length; i++) {\n\t\tif (a[i] !== b[i]) {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\n/**\n * A public key\n */\nexport abstract class PublicKey {\n\t/**\n\t * Checks if two public keys are equal\n\t */\n\tequals(publicKey: PublicKey) {\n\t\treturn bytesEqual(this.toRawBytes(), publicKey.toRawBytes());\n\t}\n\n\t/**\n\t * Return the base-64 representation of the public key\n\t */\n\ttoBase64() {\n\t\treturn toBase64(this.toRawBytes());\n\t}\n\n\ttoString(): never {\n\t\tthrow new Error(\n\t\t\t'`toString` is not implemented on public keys. Use `toBase64()` or `toRawBytes()` instead.',\n\t\t);\n\t}\n\n\t/**\n\t * Return the Sui representation of the public key encoded in\n\t * base-64. A Sui public key is formed by the concatenation\n\t * of the scheme flag with the raw bytes of the public key\n\t */\n\ttoSuiPublicKey(): string {\n\t\tconst bytes = this.toSuiBytes();\n\t\treturn toBase64(bytes);\n\t}\n\n\tverifyWithIntent(\n\t\tbytes: Uint8Array,\n\t\tsignature: Uint8Array | string,\n\t\tintent: IntentScope,\n\t): Promise<boolean> {\n\t\tconst intentMessage = messageWithIntent(intent, bytes);\n\t\tconst digest = blake2b(intentMessage, { dkLen: 32 });\n\n\t\treturn this.verify(digest, signature);\n\t}\n\n\t/**\n\t * Verifies that the signature is valid for for the provided PersonalMessage\n\t */\n\tverifyPersonalMessage(message: Uint8Array, signature: Uint8Array | string): Promise<boolean> {\n\t\treturn this.verifyWithIntent(\n\t\t\tbcs.vector(bcs.u8()).serialize(message).toBytes(),\n\t\t\tsignature,\n\t\t\t'PersonalMessage',\n\t\t);\n\t}\n\n\t/**\n\t * Verifies that the signature is valid for for the provided Transaction\n\t */\n\tverifyTransaction(transaction: Uint8Array, signature: Uint8Array | string): Promise<boolean> {\n\t\treturn this.verifyWithIntent(transaction, signature, 'TransactionData');\n\t}\n\n\t/**\n\t * Verifies that the public key is associated with the provided address\n\t */\n\tverifyAddress(address: string): boolean {\n\t\treturn this.toSuiAddress() === address;\n\t}\n\n\t/**\n\t * Returns the bytes representation of the public key\n\t * prefixed with the signature scheme flag\n\t */\n\ttoSuiBytes(): Uint8Array {\n\t\tconst rawBytes = this.toRawBytes();\n\t\tconst suiBytes = new Uint8Array(rawBytes.length + 1);\n\t\tsuiBytes.set([this.flag()]);\n\t\tsuiBytes.set(rawBytes, 1);\n\n\t\treturn suiBytes;\n\t}\n\n\t/**\n\t * Return the Sui address associated with this Ed25519 public key\n\t */\n\ttoSuiAddress(): string {\n\t\t// Each hex char represents half a byte, hence hex address doubles the length\n\t\treturn normalizeSuiAddress(\n\t\t\tbytesToHex(blake2b(this.toSuiBytes(), { dkLen: 32 })).slice(0, SUI_ADDRESS_LENGTH * 2),\n\t\t);\n\t}\n\n\t/**\n\t * Return the byte array representation of the public key\n\t */\n\tabstract toRawBytes(): Uint8Array;\n\n\t/**\n\t * Return signature scheme flag of the public key\n\t */\n\tabstract flag(): number;\n\n\t/**\n\t * Verifies that the signature is valid for for the provided message\n\t */\n\tabstract verify(data: Uint8Array, signature: Uint8Array | string): Promise<boolean>;\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,iBAAyB;AACzB,qBAAwB;AACxB,mBAA2B;AAE3B,IAAAA,cAAoB;AACpB,uBAAwD;AAExD,oBAAkC;AAO3B,SAAS,WAAW,GAAe,GAAe;AACxD,MAAI,MAAM,EAAG,QAAO;AAEpB,MAAI,EAAE,WAAW,EAAE,QAAQ;AAC1B,WAAO;AAAA,EACR;AAEA,WAAS,IAAI,GAAG,IAAI,EAAE,QAAQ,KAAK;AAClC,QAAI,EAAE,CAAC,MAAM,EAAE,CAAC,GAAG;AAClB,aAAO;AAAA,IACR;AAAA,EACD;AACA,SAAO;AACR;AAKO,MAAe,UAAU;AAAA;AAAA;AAAA;AAAA,EAI/B,OAAO,WAAsB;AAC5B,WAAO,WAAW,KAAK,WAAW,GAAG,UAAU,WAAW,CAAC;AAAA,EAC5D;AAAA;AAAA;AAAA;AAAA,EAKA,WAAW;AACV,eAAO,qBAAS,KAAK,WAAW,CAAC;AAAA,EAClC;AAAA,EAEA,WAAkB;AACjB,UAAM,IAAI;AAAA,MACT;AAAA,IACD;AAAA,EACD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,iBAAyB;AACxB,UAAM,QAAQ,KAAK,WAAW;AAC9B,eAAO,qBAAS,KAAK;AAAA,EACtB;AAAA,EAEA,iBACC,OACA,WACA,QACmB;AACnB,UAAM,oBAAgB,iCAAkB,QAAQ,KAAK;AACrD,UAAM,aAAS,wBAAQ,eAAe,EAAE,OAAO,GAAG,CAAC;AAEnD,WAAO,KAAK,OAAO,QAAQ,SAAS;AAAA,EACrC;AAAA;AAAA;AAAA;AAAA,EAKA,sBAAsB,SAAqB,WAAkD;AAC5F,WAAO,KAAK;AAAA,MACX,gBAAI,OAAO,gBAAI,GAAG,CAAC,EAAE,UAAU,OAAO,EAAE,QAAQ;AAAA,MAChD;AAAA,MACA;AAAA,IACD;AAAA,EACD;AAAA;AAAA;AAAA;AAAA,EAKA,kBAAkB,aAAyB,WAAkD;AAC5F,WAAO,KAAK,iBAAiB,aAAa,WAAW,iBAAiB;AAAA,EACvE;AAAA;AAAA;AAAA;AAAA,EAKA,cAAc,SAA0B;AACvC,WAAO,KAAK,aAAa,MAAM;AAAA,EAChC;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,aAAyB;AACxB,UAAM,WAAW,KAAK,WAAW;AACjC,UAAM,WAAW,IAAI,WAAW,SAAS,SAAS,CAAC;AACnD,aAAS,IAAI,CAAC,KAAK,KAAK,CAAC,CAAC;AAC1B,aAAS,IAAI,UAAU,CAAC;AAExB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA,EAKA,eAAuB;AAEtB,eAAO;AAAA,UACN,6BAAW,wBAAQ,KAAK,WAAW,GAAG,EAAE,OAAO,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,sCAAqB,CAAC;AAAA,IACtF;AAAA,EACD;AAgBD;",
6
6
  "names": ["import_bcs"]
7
7
  }
@@ -21,11 +21,11 @@ export declare function toSerializedSignature({ signature, signatureScheme, publ
21
21
  export declare function parseSerializedSignature(serializedSignature: string): {
22
22
  signatureScheme: "Passkey";
23
23
  serializedSignature: string;
24
- signature: Uint8Array;
24
+ signature: Uint8Array<ArrayBufferLike>;
25
25
  authenticatorData: number[];
26
26
  clientDataJson: string;
27
- userSignature: Uint8Array;
28
- publicKey: Uint8Array;
27
+ userSignature: Uint8Array<ArrayBuffer>;
28
+ publicKey: Uint8Array<ArrayBuffer>;
29
29
  } | {
30
30
  serializedSignature: string;
31
31
  signatureScheme: "ZkLogin";
@@ -48,20 +48,20 @@ export declare function parseSerializedSignature(serializedSignature: string): {
48
48
  iss: string;
49
49
  addressSeed: bigint;
50
50
  };
51
- signature: Uint8Array;
52
- publicKey: Uint8Array;
51
+ signature: Uint8Array<ArrayBufferLike>;
52
+ publicKey: Uint8Array<ArrayBufferLike>;
53
53
  } | {
54
54
  serializedSignature: string;
55
55
  signatureScheme: "MultiSig";
56
56
  multisig: MultiSigStruct;
57
- bytes: Uint8Array;
57
+ bytes: Uint8Array<ArrayBufferLike>;
58
58
  signature?: undefined;
59
59
  publicKey?: undefined;
60
60
  } | {
61
61
  serializedSignature: string;
62
62
  signatureScheme: "ED25519" | "Secp256k1" | "Secp256r1";
63
- signature: Uint8Array;
64
- publicKey: Uint8Array;
65
- bytes: Uint8Array;
63
+ signature: Uint8Array<ArrayBuffer>;
64
+ publicKey: Uint8Array<ArrayBuffer>;
65
+ bytes: Uint8Array<ArrayBufferLike>;
66
66
  multisig?: undefined;
67
67
  };