@privy-io/js-sdk-core 0.28.0 → 0.28.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 (268) hide show
  1. package/dist/{index.cjs.js → cjs/index.js} +1 -2
  2. package/dist/dts/AuthApi.d.mts +46 -0
  3. package/dist/dts/CustomProviderApi.d.mts +8 -0
  4. package/dist/dts/EmailApi.d.mts +451 -0
  5. package/dist/dts/EmbeddedWalletApi.d.mts +103 -0
  6. package/dist/dts/Error.d.mts +20 -0
  7. package/dist/dts/FarcasterApi.d.mts +467 -0
  8. package/dist/dts/GuestApi.d.mts +9 -0
  9. package/dist/dts/OAuthApi.d.mts +461 -0
  10. package/dist/dts/PasskeyApi.d.mts +80 -0
  11. package/dist/dts/PhoneApi.d.mts +451 -0
  12. package/dist/dts/Privy.d.mts +78 -0
  13. package/dist/dts/PrivyInternal.d.mts +1 -0
  14. package/dist/dts/RecoveryApi.d.mts +19 -0
  15. package/dist/dts/RecoveryICloudApi.d.mts +15 -0
  16. package/dist/dts/RecoveryOAuthApi.d.mts +16 -0
  17. package/dist/dts/Session.d.mts +88 -0
  18. package/dist/dts/SiweApi.d.mts +75 -0
  19. package/dist/dts/Token.d.mts +31 -0
  20. package/dist/dts/UserApi.d.mts +221 -0
  21. package/dist/dts/chains/arbitrum.d.mts +2 -0
  22. package/dist/dts/chains/arbitrumGoerli.d.mts +7 -0
  23. package/dist/dts/chains/arbitrumSepolia.d.mts +2 -0
  24. package/dist/dts/chains/avalanche.d.mts +5 -0
  25. package/dist/dts/chains/avalancheFuji.d.mts +5 -0
  26. package/dist/dts/chains/base.d.mts +2 -0
  27. package/dist/dts/chains/baseGoerli.d.mts +7 -0
  28. package/dist/dts/chains/baseSepolia.d.mts +5 -0
  29. package/dist/dts/chains/berachainArtio.d.mts +5 -0
  30. package/dist/dts/chains/celo.d.mts +2 -0
  31. package/dist/dts/chains/celoAlfajores.d.mts +2 -0
  32. package/dist/dts/chains/filecoin.d.mts +2 -0
  33. package/dist/dts/chains/filecoinCalibration.d.mts +2 -0
  34. package/dist/dts/chains/garnetHolesky.d.mts +2 -0
  35. package/dist/dts/chains/goerli.d.mts +5 -0
  36. package/dist/dts/chains/holesky.d.mts +2 -0
  37. package/dist/dts/chains/index.d.mts +34 -0
  38. package/dist/dts/chains/linea.d.mts +2 -0
  39. package/dist/dts/chains/lineaTestnet.d.mts +2 -0
  40. package/dist/dts/chains/mainnet.d.mts +2 -0
  41. package/dist/dts/chains/optimism.d.mts +2 -0
  42. package/dist/dts/chains/optimismGoerli.d.mts +5 -0
  43. package/dist/dts/chains/optimismSepolia.d.mts +2 -0
  44. package/dist/dts/chains/polygon.d.mts +2 -0
  45. package/dist/dts/chains/polygonAmoy.d.mts +2 -0
  46. package/dist/dts/chains/polygonMumbai.d.mts +5 -0
  47. package/dist/dts/chains/redstone.d.mts +2 -0
  48. package/dist/dts/chains/redstoneHolesky.d.mts +5 -0
  49. package/dist/dts/chains/sepolia.d.mts +2 -0
  50. package/dist/dts/chains/types.d.mts +59 -0
  51. package/dist/dts/chains/zora.d.mts +2 -0
  52. package/dist/dts/chains/zoraSepolia.d.mts +2 -0
  53. package/dist/dts/chains/zoraTestnet.d.mts +2 -0
  54. package/dist/dts/crypto/types.d.mts +1 -0
  55. package/dist/dts/embedded/EmbeddedSolanaWalletProvider.d.mts +11 -0
  56. package/dist/dts/embedded/EmbeddedWalletProvider.d.mts +47 -0
  57. package/dist/dts/embedded/EmbeddedWalletProxy.d.mts +1 -0
  58. package/dist/dts/embedded/EventCallbackQueue.d.mts +26 -0
  59. package/dist/dts/embedded/errors.d.mts +254 -0
  60. package/dist/dts/embedded/gas/arbitrum.d.mts +31 -0
  61. package/dist/dts/embedded/gas/bsc.d.mts +26 -0
  62. package/dist/dts/embedded/gas/op-stack.d.mts +42 -0
  63. package/dist/dts/embedded/gas/polygon.d.mts +42 -0
  64. package/dist/dts/embedded/index.d.mts +3 -0
  65. package/dist/dts/embedded/methods.d.mts +1 -0
  66. package/dist/dts/embedded/polygonGasStation.d.mts +15 -0
  67. package/dist/dts/embedded/types.d.mts +385 -0
  68. package/dist/dts/embedded/utils/ethers.d.mts +7 -0
  69. package/dist/dts/embedded/utils/gas.d.mts +45 -0
  70. package/dist/dts/embedded/utils/index.d.mts +36 -0
  71. package/dist/dts/index.d.mts +16 -0
  72. package/dist/dts/pkce.d.mts +33 -0
  73. package/dist/dts/storage/InMemoryStorage.d.mts +8 -0
  74. package/dist/dts/storage/LocalStorage.d.mts +7 -0
  75. package/dist/dts/storage/Storage.d.mts +6 -0
  76. package/dist/dts/toAbortSignalTimeout.d.mts +6 -0
  77. package/dist/dts/types.d.mts +54 -0
  78. package/dist/dts/utils/NonEmptyArray.d.mts +1 -0
  79. package/dist/dts/utils/getUserEmbeddedSolanaWallet.d.mts +12 -0
  80. package/dist/dts/utils/getUserEmbeddedWallet.d.mts +13 -0
  81. package/dist/dts/utils/toObjectKeys.d.mts +4 -0
  82. package/dist/esm/AuthApi.mjs +1 -0
  83. package/dist/{CustomProviderApi.js → esm/CustomProviderApi.mjs} +0 -1
  84. package/dist/{EmailApi.js → esm/EmailApi.mjs} +0 -1
  85. package/dist/esm/EmbeddedWalletApi.mjs +1 -0
  86. package/dist/{Error.js → esm/Error.mjs} +0 -1
  87. package/dist/{FarcasterApi.js → esm/FarcasterApi.mjs} +0 -1
  88. package/dist/{GuestApi.js → esm/GuestApi.mjs} +0 -1
  89. package/dist/esm/OAuthApi.mjs +1 -0
  90. package/dist/{PasskeyApi.js → esm/PasskeyApi.mjs} +0 -1
  91. package/dist/{PhoneApi.js → esm/PhoneApi.mjs} +0 -1
  92. package/dist/esm/Privy.mjs +1 -0
  93. package/dist/esm/PrivyInternal.mjs +1 -0
  94. package/dist/esm/RecoveryApi.mjs +1 -0
  95. package/dist/{RecoveryICloudApi.js → esm/RecoveryICloudApi.mjs} +0 -1
  96. package/dist/esm/RecoveryOAuthApi.mjs +1 -0
  97. package/dist/esm/Session.mjs +1 -0
  98. package/dist/{SiweApi.js → esm/SiweApi.mjs} +0 -1
  99. package/dist/{Token.js → esm/Token.mjs} +0 -1
  100. package/dist/{UserApi.js → esm/UserApi.mjs} +0 -1
  101. package/dist/{chains/arbitrum.js → esm/chains/arbitrum.mjs} +0 -1
  102. package/dist/{chains/arbitrumGoerli.js → esm/chains/arbitrumGoerli.mjs} +0 -1
  103. package/dist/{chains/arbitrumSepolia.js → esm/chains/arbitrumSepolia.mjs} +0 -1
  104. package/dist/{chains/avalanche.js → esm/chains/avalanche.mjs} +0 -1
  105. package/dist/{chains/avalancheFuji.js → esm/chains/avalancheFuji.mjs} +0 -1
  106. package/dist/{chains/base.js → esm/chains/base.mjs} +0 -1
  107. package/dist/{chains/baseGoerli.js → esm/chains/baseGoerli.mjs} +0 -1
  108. package/dist/{chains/baseSepolia.js → esm/chains/baseSepolia.mjs} +0 -1
  109. package/dist/{chains/berachainArtio.js → esm/chains/berachainArtio.mjs} +0 -1
  110. package/dist/{chains/celo.js → esm/chains/celo.mjs} +0 -1
  111. package/dist/{chains/celoAlfajores.js → esm/chains/celoAlfajores.mjs} +0 -1
  112. package/dist/{chains/filecoin.js → esm/chains/filecoin.mjs} +0 -1
  113. package/dist/{chains/filecoinCalibration.js → esm/chains/filecoinCalibration.mjs} +0 -1
  114. package/dist/{chains/garnetHolesky.js → esm/chains/garnetHolesky.mjs} +0 -1
  115. package/dist/{chains/goerli.js → esm/chains/goerli.mjs} +0 -1
  116. package/dist/{chains/holesky.js → esm/chains/holesky.mjs} +0 -1
  117. package/dist/esm/chains/index.mjs +1 -0
  118. package/dist/{chains/linea.js → esm/chains/linea.mjs} +0 -1
  119. package/dist/{chains/lineaTestnet.js → esm/chains/lineaTestnet.mjs} +0 -1
  120. package/dist/{chains/mainnet.js → esm/chains/mainnet.mjs} +0 -1
  121. package/dist/{chains/optimism.js → esm/chains/optimism.mjs} +0 -1
  122. package/dist/{chains/optimismGoerli.js → esm/chains/optimismGoerli.mjs} +0 -1
  123. package/dist/{chains/optimismSepolia.js → esm/chains/optimismSepolia.mjs} +0 -1
  124. package/dist/{chains/polygon.js → esm/chains/polygon.mjs} +0 -1
  125. package/dist/{chains/polygonAmoy.js → esm/chains/polygonAmoy.mjs} +0 -1
  126. package/dist/{chains/polygonMumbai.js → esm/chains/polygonMumbai.mjs} +0 -1
  127. package/dist/{chains/redstone.js → esm/chains/redstone.mjs} +0 -1
  128. package/dist/{chains/redstoneHolesky.js → esm/chains/redstoneHolesky.mjs} +0 -1
  129. package/dist/{chains/sepolia.js → esm/chains/sepolia.mjs} +0 -1
  130. package/dist/esm/chains/types.mjs +1 -0
  131. package/dist/{chains/zora.js → esm/chains/zora.mjs} +0 -1
  132. package/dist/{chains/zoraSepolia.js → esm/chains/zoraSepolia.mjs} +0 -1
  133. package/dist/{chains/zoraTestnet.js → esm/chains/zoraTestnet.mjs} +0 -1
  134. package/dist/esm/crypto/types.mjs +1 -0
  135. package/dist/esm/embedded/EmbeddedSolanaWalletProvider.mjs +1 -0
  136. package/dist/esm/embedded/EmbeddedWalletProvider.mjs +1 -0
  137. package/dist/esm/embedded/EmbeddedWalletProxy.mjs +1 -0
  138. package/dist/{embedded/EventCallbackQueue.js → esm/embedded/EventCallbackQueue.mjs} +0 -1
  139. package/dist/esm/embedded/errors.mjs +1 -0
  140. package/dist/esm/embedded/gas/arbitrum.mjs +1 -0
  141. package/dist/{embedded/gas/bsc.js → esm/embedded/gas/bsc.mjs} +0 -1
  142. package/dist/esm/embedded/gas/op-stack.mjs +1 -0
  143. package/dist/esm/embedded/gas/polygon.mjs +1 -0
  144. package/dist/esm/embedded/index.mjs +1 -0
  145. package/dist/{embedded/methods.js → esm/embedded/methods.mjs} +0 -1
  146. package/dist/esm/embedded/polygonGasStation.mjs +1 -0
  147. package/dist/{embedded/types.js → esm/embedded/types.mjs} +0 -1
  148. package/dist/{embedded/utils/ethers.js → esm/embedded/utils/ethers.mjs} +0 -1
  149. package/dist/esm/embedded/utils/gas.mjs +1 -0
  150. package/dist/esm/embedded/utils/index.mjs +1 -0
  151. package/dist/esm/index.mjs +1 -0
  152. package/dist/{pkce.js → esm/pkce.mjs} +0 -1
  153. package/dist/{storage/InMemoryStorage.js → esm/storage/InMemoryStorage.mjs} +0 -1
  154. package/dist/{storage/LocalStorage.js → esm/storage/LocalStorage.mjs} +0 -1
  155. package/dist/esm/storage/Storage.mjs +1 -0
  156. package/dist/{toAbortSignalTimeout.js → esm/toAbortSignalTimeout.mjs} +0 -1
  157. package/dist/{types.js → esm/types.mjs} +0 -1
  158. package/dist/esm/utils/NonEmptyArray.mjs +1 -0
  159. package/dist/{utils/getUserEmbeddedSolanaWallet.js → esm/utils/getUserEmbeddedSolanaWallet.mjs} +0 -1
  160. package/dist/{utils/getUserEmbeddedWallet.js → esm/utils/getUserEmbeddedWallet.mjs} +0 -1
  161. package/dist/{utils/toObjectKeys.js → esm/utils/toObjectKeys.mjs} +0 -1
  162. package/package.json +42 -36
  163. package/dist/AuthApi.js +0 -2
  164. package/dist/AuthApi.js.map +0 -1
  165. package/dist/CustomProviderApi.js.map +0 -1
  166. package/dist/EmailApi.js.map +0 -1
  167. package/dist/EmbeddedWalletApi.js +0 -2
  168. package/dist/EmbeddedWalletApi.js.map +0 -1
  169. package/dist/Error.js.map +0 -1
  170. package/dist/FarcasterApi.js.map +0 -1
  171. package/dist/GuestApi.js.map +0 -1
  172. package/dist/OAuthApi.js +0 -2
  173. package/dist/OAuthApi.js.map +0 -1
  174. package/dist/PasskeyApi.js.map +0 -1
  175. package/dist/PhoneApi.js.map +0 -1
  176. package/dist/Privy.js +0 -2
  177. package/dist/Privy.js.map +0 -1
  178. package/dist/PrivyInternal.js +0 -2
  179. package/dist/PrivyInternal.js.map +0 -1
  180. package/dist/RecoveryApi.js +0 -2
  181. package/dist/RecoveryApi.js.map +0 -1
  182. package/dist/RecoveryICloudApi.js.map +0 -1
  183. package/dist/RecoveryOAuthApi.js +0 -2
  184. package/dist/RecoveryOAuthApi.js.map +0 -1
  185. package/dist/Session.js +0 -2
  186. package/dist/Session.js.map +0 -1
  187. package/dist/SiweApi.js.map +0 -1
  188. package/dist/Token.js.map +0 -1
  189. package/dist/UserApi.js.map +0 -1
  190. package/dist/chains/arbitrum.js.map +0 -1
  191. package/dist/chains/arbitrumGoerli.js.map +0 -1
  192. package/dist/chains/arbitrumSepolia.js.map +0 -1
  193. package/dist/chains/avalanche.js.map +0 -1
  194. package/dist/chains/avalancheFuji.js.map +0 -1
  195. package/dist/chains/base.js.map +0 -1
  196. package/dist/chains/baseGoerli.js.map +0 -1
  197. package/dist/chains/baseSepolia.js.map +0 -1
  198. package/dist/chains/berachainArtio.js.map +0 -1
  199. package/dist/chains/celo.js.map +0 -1
  200. package/dist/chains/celoAlfajores.js.map +0 -1
  201. package/dist/chains/filecoin.js.map +0 -1
  202. package/dist/chains/filecoinCalibration.js.map +0 -1
  203. package/dist/chains/garnetHolesky.js.map +0 -1
  204. package/dist/chains/goerli.js.map +0 -1
  205. package/dist/chains/holesky.js.map +0 -1
  206. package/dist/chains/index.js +0 -2
  207. package/dist/chains/index.js.map +0 -1
  208. package/dist/chains/linea.js.map +0 -1
  209. package/dist/chains/lineaTestnet.js.map +0 -1
  210. package/dist/chains/mainnet.js.map +0 -1
  211. package/dist/chains/optimism.js.map +0 -1
  212. package/dist/chains/optimismGoerli.js.map +0 -1
  213. package/dist/chains/optimismSepolia.js.map +0 -1
  214. package/dist/chains/polygon.js.map +0 -1
  215. package/dist/chains/polygonAmoy.js.map +0 -1
  216. package/dist/chains/polygonMumbai.js.map +0 -1
  217. package/dist/chains/redstone.js.map +0 -1
  218. package/dist/chains/redstoneHolesky.js.map +0 -1
  219. package/dist/chains/sepolia.js.map +0 -1
  220. package/dist/chains/types.js +0 -2
  221. package/dist/chains/types.js.map +0 -1
  222. package/dist/chains/zora.js.map +0 -1
  223. package/dist/chains/zoraSepolia.js.map +0 -1
  224. package/dist/chains/zoraTestnet.js.map +0 -1
  225. package/dist/crypto/types.js +0 -2
  226. package/dist/crypto/types.js.map +0 -1
  227. package/dist/embedded/EmbeddedSolanaWalletProvider.js +0 -2
  228. package/dist/embedded/EmbeddedSolanaWalletProvider.js.map +0 -1
  229. package/dist/embedded/EmbeddedWalletProvider.js +0 -2
  230. package/dist/embedded/EmbeddedWalletProvider.js.map +0 -1
  231. package/dist/embedded/EmbeddedWalletProxy.js +0 -2
  232. package/dist/embedded/EmbeddedWalletProxy.js.map +0 -1
  233. package/dist/embedded/EventCallbackQueue.js.map +0 -1
  234. package/dist/embedded/errors.js +0 -2
  235. package/dist/embedded/errors.js.map +0 -1
  236. package/dist/embedded/gas/arbitrum.js +0 -2
  237. package/dist/embedded/gas/arbitrum.js.map +0 -1
  238. package/dist/embedded/gas/bsc.js.map +0 -1
  239. package/dist/embedded/gas/op-stack.js +0 -2
  240. package/dist/embedded/gas/op-stack.js.map +0 -1
  241. package/dist/embedded/gas/polygon.js +0 -2
  242. package/dist/embedded/gas/polygon.js.map +0 -1
  243. package/dist/embedded/index.js +0 -2
  244. package/dist/embedded/index.js.map +0 -1
  245. package/dist/embedded/methods.js.map +0 -1
  246. package/dist/embedded/polygonGasStation.js +0 -2
  247. package/dist/embedded/polygonGasStation.js.map +0 -1
  248. package/dist/embedded/types.js.map +0 -1
  249. package/dist/embedded/utils/ethers.js.map +0 -1
  250. package/dist/embedded/utils/gas.js +0 -2
  251. package/dist/embedded/utils/gas.js.map +0 -1
  252. package/dist/embedded/utils/index.js +0 -2
  253. package/dist/embedded/utils/index.js.map +0 -1
  254. package/dist/index.cjs.js.map +0 -1
  255. package/dist/index.js +0 -2
  256. package/dist/index.js.map +0 -1
  257. package/dist/pkce.js.map +0 -1
  258. package/dist/storage/InMemoryStorage.js.map +0 -1
  259. package/dist/storage/LocalStorage.js.map +0 -1
  260. package/dist/storage/Storage.js +0 -2
  261. package/dist/storage/Storage.js.map +0 -1
  262. package/dist/toAbortSignalTimeout.js.map +0 -1
  263. package/dist/types.js.map +0 -1
  264. package/dist/utils/NonEmptyArray.js +0 -2
  265. package/dist/utils/NonEmptyArray.js.map +0 -1
  266. package/dist/utils/getUserEmbeddedSolanaWallet.js.map +0 -1
  267. package/dist/utils/getUserEmbeddedWallet.js.map +0 -1
  268. package/dist/utils/toObjectKeys.js.map +0 -1
@@ -0,0 +1,75 @@
1
+ import { type PrivyUser, type PrivyAuthenticatedUser } from '@privy-io/public-api';
2
+ import type { ExternalWallet } from './types';
3
+ /**
4
+ * [Sign-In With Ethereum](https://eips.ethereum.org/EIPS/eip-4361) auth flow.
5
+ *
6
+ * Privy's backend is able to issue access tokens using the [Sign-In With Ethereum](https://eips.ethereum.org/EIPS/eip-4361) spec.
7
+ * This enables developers to use Privy for reading/writing user *without* hosting their own backend to handle authentication. A big win for reducing operational complexity!
8
+ */
9
+ export default class SiweApi {
10
+ /**
11
+ * Unlink a wallet account from a user. Note that you can only unlink a wallet account if the user has at least one other account.
12
+ *
13
+ * @returns The user object.
14
+ */
15
+ unlinkWallet(
16
+ /**
17
+ * The address of the wallet to be unlinked
18
+ */
19
+ address: string): Promise<PrivyUser>;
20
+ /**
21
+ * Link a new wallet via the [Sign-In With Ethereum](https://eips.ethereum.org/EIPS/eip-4361) spec.
22
+ *
23
+ * @returns The user object.
24
+ */
25
+ linkWithSiwe(
26
+ /**
27
+ * Signature generated against standard [Sign-In With Ethereum](https://eips.ethereum.org/EIPS/eip-4361) message
28
+ */
29
+ signature: string,
30
+ /**
31
+ * Optional `ExternalWallet`, only needed if the wallet differs from the one cached during previous call to `generateMessage`
32
+ */
33
+ walletOverride?: ExternalWallet,
34
+ /**
35
+ * Optional [Sign-In With Ethereum](https://eips.ethereum.org/EIPS/eip-4361) message, only needed if the message differs from the one in memory that was cached in previous call to `generateMessage`
36
+ */
37
+ messageOverride?: string): Promise<PrivyUser>;
38
+ /**
39
+ * Authenticate with Privy via the [Sign-In With Ethereum](https://eips.ethereum.org/EIPS/eip-4361) spec.
40
+ *
41
+ * @returns Session information.
42
+ */
43
+ loginWithSiwe(
44
+ /**
45
+ * Signature generated against standard [Sign-In With Ethereum](https://eips.ethereum.org/EIPS/eip-4361) message
46
+ */
47
+ signature: string,
48
+ /**
49
+ * Optional `ExternalWallet`, only needed if the wallet differs from the one cached during previous call to `generateMessage`
50
+ */
51
+ walletOverride?: ExternalWallet,
52
+ /**
53
+ * Optional [Sign-In With Ethereum](https://eips.ethereum.org/EIPS/eip-4361) message, only needed if the message differs from the one in memory that was cached in previous call to `generateMessage`
54
+ */
55
+ messageOverride?: string,
56
+ /**
57
+ * Optional Whether or not to block sign ups (only allow existing users to log in).
58
+ */
59
+ mode?: 'login-or-sign-up' | 'no-signup'): Promise<PrivyAuthenticatedUser>;
60
+ /**
61
+ * Begin a login or link flow according to the [Sign-In With Ethereum](https://eips.ethereum.org/EIPS/eip-4361) spec.
62
+ *
63
+ * @returns [EIP-4361](https://eips.ethereum.org/EIPS/eip-4361) message and nonce used to create it
64
+ */
65
+ init(
66
+ /** Wallet to request a [Sign-In With Ethereum](https://eips.ethereum.org/EIPS/eip-4361) signature from */
67
+ wallet: ExternalWallet,
68
+ /** [RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986) authority that is requesting the signing */
69
+ domain: string,
70
+ /** [RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986) URI referring to the resource that is the subject of the signing */
71
+ uri: string): Promise<{
72
+ nonce: string;
73
+ message: string;
74
+ }>;
75
+ }
@@ -0,0 +1,31 @@
1
+ export declare class Token {
2
+ static parse(token: any): Token | null;
3
+ /**
4
+ * The raw token in string form.
5
+ */
6
+ value: string;
7
+ private _decoded;
8
+ constructor(value: string);
9
+ /**
10
+ * The subject is the user id to which this token is assigned.
11
+ */
12
+ get subject(): string;
13
+ /**
14
+ * The date in seconds since Epoch that this token expires.
15
+ */
16
+ get expiration(): number;
17
+ /**
18
+ * The party that issued the token, which should always be 'privy.io'
19
+ */
20
+ get issuer(): string;
21
+ /**
22
+ * The token audience, which will be the app ID for the customer app.'
23
+ */
24
+ get audience(): string;
25
+ /**
26
+ * Whether or not the token is to be considered expired.
27
+ *
28
+ * @param {number} seconds A number in seconds to reduce the expiration time by. Defaults to 0
29
+ */
30
+ isExpired(seconds?: number): boolean;
31
+ }
@@ -0,0 +1,221 @@
1
+ export default class UserApi {
2
+ /**
3
+ * Get the logged in user.
4
+ */
5
+ get(): Promise<{
6
+ user: {
7
+ id: string;
8
+ mfa_methods: ({
9
+ type: "sms";
10
+ verified_at: number;
11
+ } | {
12
+ type: "totp";
13
+ verified_at: number;
14
+ } | {
15
+ type: "passkey";
16
+ verified_at: number;
17
+ })[];
18
+ linked_accounts: ({
19
+ type: "email";
20
+ address: string;
21
+ verified_at: number;
22
+ first_verified_at: number | null;
23
+ latest_verified_at: number | null;
24
+ } | {
25
+ type: "phone";
26
+ verified_at: number;
27
+ first_verified_at: number | null;
28
+ latest_verified_at: number | null;
29
+ phoneNumber: string;
30
+ } | {
31
+ type: "wallet";
32
+ address: string;
33
+ verified_at: number;
34
+ first_verified_at: number | null;
35
+ latest_verified_at: number | null;
36
+ chain_type: "ethereum";
37
+ wallet_client: "unknown";
38
+ chain_id?: string | undefined;
39
+ wallet_client_type?: string | undefined;
40
+ connector_type?: string | undefined;
41
+ } | {
42
+ type: "smart_wallet";
43
+ address: string;
44
+ smart_wallet_type: "safe" | "kernel" | "biconomy" | "light_account";
45
+ verified_at: number;
46
+ first_verified_at: number | null;
47
+ latest_verified_at: number | null;
48
+ } | {
49
+ type: "wallet";
50
+ address: string;
51
+ verified_at: number;
52
+ first_verified_at: number | null;
53
+ latest_verified_at: number | null;
54
+ chain_type: "solana";
55
+ wallet_client: "unknown";
56
+ wallet_client_type?: string | undefined;
57
+ connector_type?: string | undefined;
58
+ } | {
59
+ type: "farcaster";
60
+ fid: number;
61
+ verified_at: number;
62
+ first_verified_at: number | null;
63
+ latest_verified_at: number | null;
64
+ owner_address: string;
65
+ username?: string | undefined;
66
+ display_name?: string | undefined;
67
+ bio?: string | undefined;
68
+ profile_picture?: string | undefined;
69
+ profile_picture_url?: string | undefined;
70
+ homepage_url?: string | undefined;
71
+ signer_public_key?: string | undefined;
72
+ } | {
73
+ type: "passkey";
74
+ verified_at: number;
75
+ first_verified_at: number | null;
76
+ latest_verified_at: number | null;
77
+ credential_id: string;
78
+ enrolled_in_mfa: boolean;
79
+ created_with_browser?: string | undefined;
80
+ created_with_os?: string | undefined;
81
+ created_with_device?: string | undefined;
82
+ authenticator_name?: string | undefined;
83
+ } | {
84
+ telegramUserId: string;
85
+ firstName: string | null | undefined;
86
+ type: "telegram";
87
+ verified_at: number;
88
+ first_verified_at: number | null;
89
+ latest_verified_at: number | null;
90
+ telegram_user_id: string;
91
+ username?: string | null | undefined;
92
+ first_name?: string | null | undefined;
93
+ last_name?: string | null | undefined;
94
+ photo_url?: string | null | undefined;
95
+ } | {
96
+ type: "wallet";
97
+ address: string;
98
+ chain_id: "eip155:1";
99
+ verified_at: number;
100
+ first_verified_at: number | null;
101
+ latest_verified_at: number | null;
102
+ chain_type: "ethereum";
103
+ wallet_client: "privy";
104
+ wallet_client_type: "privy";
105
+ connector_type: "embedded";
106
+ imported: boolean;
107
+ wallet_index: number;
108
+ recovery_method: "user-passcode" | "google-drive" | "icloud" | "privy";
109
+ } | {
110
+ type: "wallet";
111
+ address: string;
112
+ public_key: string;
113
+ chain_id: "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp";
114
+ verified_at: number;
115
+ first_verified_at: number | null;
116
+ latest_verified_at: number | null;
117
+ chain_type: "solana";
118
+ wallet_client_type: "privy";
119
+ connector_type: "embedded";
120
+ imported: boolean;
121
+ recovery_method: "privy";
122
+ } | {
123
+ type: "google_oauth";
124
+ name: string | null;
125
+ email: string;
126
+ verified_at: number;
127
+ first_verified_at: number | null;
128
+ latest_verified_at: number | null;
129
+ subject: string;
130
+ } | {
131
+ type: "twitter_oauth";
132
+ name: string | null;
133
+ username: string | null;
134
+ verified_at: number;
135
+ first_verified_at: number | null;
136
+ latest_verified_at: number | null;
137
+ profile_picture_url: string | null;
138
+ subject: string;
139
+ } | {
140
+ type: "discord_oauth";
141
+ email: string | null;
142
+ username: string | null;
143
+ verified_at: number;
144
+ first_verified_at: number | null;
145
+ latest_verified_at: number | null;
146
+ subject: string;
147
+ } | {
148
+ type: "github_oauth";
149
+ name: string | null;
150
+ email: string | null;
151
+ username: string | null;
152
+ verified_at: number;
153
+ first_verified_at: number | null;
154
+ latest_verified_at: number | null;
155
+ subject: string;
156
+ } | {
157
+ type: "linkedin_oauth";
158
+ email: string | null;
159
+ verified_at: number;
160
+ first_verified_at: number | null;
161
+ latest_verified_at: number | null;
162
+ subject: string;
163
+ name?: string | undefined;
164
+ vanity_name?: string | undefined;
165
+ } | {
166
+ type: "spotify_oauth";
167
+ name: string | null;
168
+ email: string | null;
169
+ verified_at: number;
170
+ first_verified_at: number | null;
171
+ latest_verified_at: number | null;
172
+ subject: string;
173
+ } | {
174
+ type: "instagram_oauth";
175
+ username: string | null;
176
+ verified_at: number;
177
+ first_verified_at: number | null;
178
+ latest_verified_at: number | null;
179
+ subject: string;
180
+ } | {
181
+ type: "tiktok_oauth";
182
+ name: string | null;
183
+ username: string | null;
184
+ verified_at: number;
185
+ first_verified_at: number | null;
186
+ latest_verified_at: number | null;
187
+ subject: string;
188
+ } | {
189
+ type: "apple_oauth";
190
+ email: string | null;
191
+ verified_at: number;
192
+ first_verified_at: number | null;
193
+ latest_verified_at: number | null;
194
+ subject: string;
195
+ } | {
196
+ type: "custom_auth";
197
+ verified_at: number;
198
+ first_verified_at: number | null;
199
+ latest_verified_at: number | null;
200
+ custom_user_id: string;
201
+ } | {
202
+ type: "cross_app";
203
+ provider_app_id: string;
204
+ verified_at: number;
205
+ first_verified_at: number | null;
206
+ latest_verified_at: number | null;
207
+ subject: string;
208
+ embedded_wallets: {
209
+ address: string;
210
+ }[];
211
+ smart_wallets: {
212
+ address: string;
213
+ }[];
214
+ })[];
215
+ created_at: number;
216
+ has_accepted_terms: boolean;
217
+ is_guest: boolean;
218
+ custom_metadata?: Record<string, string> | undefined;
219
+ } | null;
220
+ }>;
221
+ }
@@ -0,0 +1,2 @@
1
+ import type { Chain } from './index';
2
+ export declare const arbitrum: Chain;
@@ -0,0 +1,7 @@
1
+ import type { Chain } from './index';
2
+ /**
3
+ * These have been modified from the original WAGMI chain definition
4
+ *
5
+ * @deprecated Use `arbitrumSepolia` instead
6
+ */
7
+ export declare const arbitrumGoerli: Chain;
@@ -0,0 +1,2 @@
1
+ import type { Chain } from './types';
2
+ export declare const arbitrumSepolia: Chain;
@@ -0,0 +1,5 @@
1
+ import type { Chain } from './index';
2
+ /**
3
+ * These have been modified from the original WAGMI chain definition
4
+ */
5
+ export declare const avalanche: Chain;
@@ -0,0 +1,5 @@
1
+ import type { Chain } from './index';
2
+ /**
3
+ * These have been modified from the original WAGMI chain definition
4
+ */
5
+ export declare const avalancheFuji: Chain;
@@ -0,0 +1,2 @@
1
+ import type { Chain } from './index';
2
+ export declare const base: Chain;
@@ -0,0 +1,7 @@
1
+ import type { Chain } from './index';
2
+ /**
3
+ * These have been modified from the original WAGMI chain definition
4
+ *
5
+ * @deprecated Use `baseSepolia` instead
6
+ */
7
+ export declare const baseGoerli: Chain;
@@ -0,0 +1,5 @@
1
+ import type { Chain } from './types';
2
+ /**
3
+ * These have been modified from the original WAGMI chain definition
4
+ */
5
+ export declare const baseSepolia: Chain;
@@ -0,0 +1,5 @@
1
+ import type { Chain } from './types';
2
+ /**
3
+ * These have been modified from the original WAGMI chain definition
4
+ */
5
+ export declare const berachainArtio: Chain;
@@ -0,0 +1,2 @@
1
+ import type { Chain } from './index';
2
+ export declare const celo: Chain;
@@ -0,0 +1,2 @@
1
+ import type { Chain } from './index';
2
+ export declare const celoAlfajores: Chain;
@@ -0,0 +1,2 @@
1
+ import type { Chain } from './index';
2
+ export declare const filecoin: Chain;
@@ -0,0 +1,2 @@
1
+ import type { Chain } from './index';
2
+ export declare const filecoinCalibration: Chain;
@@ -0,0 +1,2 @@
1
+ import type { Chain } from './index';
2
+ export declare const garnetHolesky: Chain;
@@ -0,0 +1,5 @@
1
+ import type { Chain } from './index';
2
+ /**
3
+ * @deprecated Use `sepolia` instead
4
+ */
5
+ export declare const goerli: Chain;
@@ -0,0 +1,2 @@
1
+ import type { Chain } from './index';
2
+ export declare const holesky: Chain;
@@ -0,0 +1,34 @@
1
+ export type { Unit, Chain, RpcConfig } from './types';
2
+ export declare const chainDefs: {
3
+ readonly mainnet: import("./types").Chain;
4
+ readonly goerli: import("./types").Chain;
5
+ readonly sepolia: import("./types").Chain;
6
+ readonly arbitrum: import("./types").Chain;
7
+ readonly arbitrumGoerli: import("./types").Chain;
8
+ readonly arbitrumSepolia: import("./types").Chain;
9
+ readonly optimism: import("./types").Chain;
10
+ readonly optimismGoerli: import("./types").Chain;
11
+ readonly optimismSepolia: import("./types").Chain;
12
+ readonly polygon: import("./types").Chain;
13
+ readonly polygonMumbai: import("./types").Chain;
14
+ readonly celo: import("./types").Chain;
15
+ readonly celoAlfajores: import("./types").Chain;
16
+ readonly filecoin: import("./types").Chain;
17
+ readonly filecoinCalibration: import("./types").Chain;
18
+ readonly base: import("./types").Chain;
19
+ readonly baseGoerli: import("./types").Chain;
20
+ readonly baseSepolia: import("./types").Chain;
21
+ readonly linea: import("./types").Chain;
22
+ readonly lineaTestnet: import("./types").Chain;
23
+ readonly avalanche: import("./types").Chain;
24
+ readonly avalancheFuji: import("./types").Chain;
25
+ readonly holesky: import("./types").Chain;
26
+ readonly redstone: import("./types").Chain;
27
+ readonly garnetHolesky: import("./types").Chain;
28
+ readonly redstoneHolesky: import("./types").Chain;
29
+ readonly zora: import("./types").Chain;
30
+ readonly zoraSepolia: import("./types").Chain;
31
+ readonly zoraTestnet: import("./types").Chain;
32
+ };
33
+ export declare const DEFAULT_SUPPORTED_CHAINS: readonly [import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain, import("./types").Chain];
34
+ export declare const DEFAULT_SUPPORTED_CHAIN_IDS: Set<number>;
@@ -0,0 +1,2 @@
1
+ import type { Chain } from './index';
2
+ export declare const linea: Chain;
@@ -0,0 +1,2 @@
1
+ import type { Chain } from './index';
2
+ export declare const lineaTestnet: Chain;
@@ -0,0 +1,2 @@
1
+ import type { Chain } from './types';
2
+ export declare const mainnet: Chain;
@@ -0,0 +1,2 @@
1
+ import type { Chain } from './index';
2
+ export declare const optimism: Chain;
@@ -0,0 +1,5 @@
1
+ import type { Chain } from './index';
2
+ /**
3
+ * @deprecated Use `optimismSepolia` instead
4
+ */
5
+ export declare const optimismGoerli: Chain;
@@ -0,0 +1,2 @@
1
+ import type { Chain } from './types';
2
+ export declare const optimismSepolia: Chain;
@@ -0,0 +1,2 @@
1
+ import type { Chain } from './index';
2
+ export declare const polygon: Chain;
@@ -0,0 +1,2 @@
1
+ import type { Chain } from './index';
2
+ export declare const polygonAmoy: Chain;
@@ -0,0 +1,5 @@
1
+ import type { Chain } from './index';
2
+ /**
3
+ * @deprecated Use `polygonAmoy` instead
4
+ */
5
+ export declare const polygonMumbai: Chain;
@@ -0,0 +1,2 @@
1
+ import type { Chain } from './index';
2
+ export declare const redstone: Chain;
@@ -0,0 +1,5 @@
1
+ import type { Chain } from './index';
2
+ /**
3
+ * @deprecated Use garnetHolesky instead.
4
+ */
5
+ export declare const redstoneHolesky: Chain;
@@ -0,0 +1,2 @@
1
+ import type { Chain } from './index';
2
+ export declare const sepolia: Chain;
@@ -0,0 +1,59 @@
1
+ /**
2
+ * These types are fully compatible with WAGMI chain types, in case
3
+ * we need interop in the future.
4
+ */
5
+ type RpcUrls = {
6
+ http: readonly string[];
7
+ webSocket?: readonly string[];
8
+ };
9
+ type NativeCurrency = {
10
+ name: string;
11
+ /** 2-6 characters long */
12
+ symbol: string;
13
+ decimals: number;
14
+ };
15
+ type BlockExplorer = {
16
+ name: string;
17
+ url: string;
18
+ };
19
+ export type Unit = 'ether' | 'gwei' | 'wei' | number;
20
+ /** A subset of WAGMI's chain type
21
+ * https://github.com/wagmi-dev/references/blob/6aea7ee9c65cfac24f33173ab3c98176b8366f05/packages/chains/src/types.ts#L8
22
+ */
23
+ export type Chain = {
24
+ /** Id in number form */
25
+ id: number;
26
+ /** Human readable name */
27
+ name: string;
28
+ /** Internal network name */
29
+ network?: string;
30
+ /** Currency used by chain */
31
+ nativeCurrency: NativeCurrency;
32
+ /** Collection of block explorers */
33
+ blockExplorers?: {
34
+ [key: string]: BlockExplorer;
35
+ default: BlockExplorer;
36
+ };
37
+ /** Collection of RPC endpoints */
38
+ rpcUrls: {
39
+ [key: string]: RpcUrls;
40
+ default: RpcUrls;
41
+ };
42
+ /** Flag for test networks */
43
+ testnet?: boolean;
44
+ };
45
+ /**
46
+ * RPC overrides to support custom RPC URLs. Do not provide an RPC URL
47
+ * that can serve multiple networks. You should only provide RPC URLs that
48
+ * are specific to the network you'd like to override.
49
+ */
50
+ export type RpcConfig = {
51
+ /**
52
+ * Mapping of chainId to RPC URL. Overrides Privy default RPC URLs that are shared across projects. Set your own RPC URLs
53
+ * to avoid rate limits or other throughput bottlenecks.
54
+ */
55
+ rpcUrls: {
56
+ [key: number]: string;
57
+ };
58
+ };
59
+ export {};
@@ -0,0 +1,2 @@
1
+ import type { Chain } from './types';
2
+ export declare const zora: Chain;
@@ -0,0 +1,2 @@
1
+ import type { Chain } from './types';
2
+ export declare const zoraSepolia: Chain;
@@ -0,0 +1,2 @@
1
+ import type { Chain } from './types';
2
+ export declare const zoraTestnet: Chain;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,11 @@
1
+ type RequestArguments = {
2
+ method: 'signMessage';
3
+ params: any;
4
+ };
5
+ export declare class EmbeddedSolanaWalletProvider {
6
+ _publicKey: string;
7
+ request(request: RequestArguments): Promise<{
8
+ signature: string;
9
+ }>;
10
+ }
11
+ export {};
@@ -0,0 +1,47 @@
1
+ import EventEmitter from 'eventemitter3';
2
+ import { type ProviderRpcError } from './errors';
3
+ type ProviderConnectInfo = {
4
+ chainId: string;
5
+ };
6
+ type OnConnectEventHandler = (connectInfo: ProviderConnectInfo) => void;
7
+ type OnDisconnectEventHandler = (error: ProviderRpcError) => void;
8
+ type OnChainChangedEventHandler = (chainId: string | number) => void;
9
+ type OnAccountsChangedEventHandler = (accounts: string[]) => void;
10
+ type ProviderMessage = {
11
+ type: string;
12
+ data: unknown;
13
+ };
14
+ type OnMessageEventHandler = (message: ProviderMessage) => void;
15
+ type EIP1193OnEventHandler = OnConnectEventHandler | OnDisconnectEventHandler | OnChainChangedEventHandler | OnAccountsChangedEventHandler | OnMessageEventHandler;
16
+ interface EIP1193Provider {
17
+ request: (request: {
18
+ method: string;
19
+ params?: Array<unknown> | undefined;
20
+ }) => Promise<unknown>;
21
+ on: (eventName: string, listener: EIP1193OnEventHandler) => unknown;
22
+ removeListener: (eventName: string | symbol, listener: (...args: unknown[]) => void) => unknown;
23
+ }
24
+ type RequestArguments = {
25
+ method: string;
26
+ params?: Array<any> | undefined;
27
+ };
28
+ export declare class EmbeddedWalletProvider extends EventEmitter implements EIP1193Provider {
29
+ request(request: RequestArguments): Promise<any>;
30
+ /**
31
+ * Backfills a transaction that may not specify a `chainId` with the provider's `this._chianId`
32
+ */
33
+ private ensureChainId;
34
+ /**
35
+ * If a chainId is provided that differs from the current `this._chainId`,
36
+ * the new chain and StaticJsonRpcProvider will be set
37
+ */
38
+ private internalSwitchEthereumChain;
39
+ private handlePopulateTransaction;
40
+ private handleSendTransaction;
41
+ private handleEstimateGas;
42
+ private handleSwitchEthereumChain;
43
+ private handleIFrameRpc;
44
+ private handleJsonRpc;
45
+ toJSON(): string;
46
+ }
47
+ export {};
@@ -0,0 +1 @@
1
+ export declare const DEFAULT_WALLET_PROXY_TIMEOUT_MS = 15000;