@getpara/core-sdk 2.12.0 → 2.13.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 (197) hide show
  1. package/dist/cjs/ParaCore.js +793 -2003
  2. package/dist/cjs/constants.js +4 -1
  3. package/dist/cjs/services/AuthService.js +787 -0
  4. package/dist/cjs/services/BaseAuthFlowService.js +78 -0
  5. package/dist/cjs/services/ExternalWalletService.js +386 -0
  6. package/dist/cjs/services/LoginFlowService.js +163 -0
  7. package/dist/cjs/services/PollingService.js +448 -0
  8. package/dist/cjs/services/PortalUrlService.js +379 -0
  9. package/dist/cjs/services/PregenWalletService.js +442 -0
  10. package/dist/cjs/services/SessionManagementService.js +280 -0
  11. package/dist/cjs/services/SignupFlowService.js +185 -0
  12. package/dist/cjs/services/VerificationFlowService.js +242 -0
  13. package/dist/cjs/services/WalletService.js +577 -0
  14. package/dist/cjs/services/types/AuthServiceTypes.js +15 -0
  15. package/dist/cjs/services/types/BaseAuthFlowServiceTypes.js +15 -0
  16. package/dist/cjs/services/types/ExternalWalletServiceTypes.js +15 -0
  17. package/dist/cjs/services/types/LoginFlowServiceTypes.js +15 -0
  18. package/dist/cjs/services/types/PollingServiceTypes.js +15 -0
  19. package/dist/cjs/services/types/PortalUrlServiceTypes.js +15 -0
  20. package/dist/cjs/services/types/PregenWalletServiceTypes.js +15 -0
  21. package/dist/cjs/services/types/SessionManagementServiceTypes.js +15 -0
  22. package/dist/cjs/services/types/SignupFlowServiceTypes.js +15 -0
  23. package/dist/cjs/services/types/VerificationFlowServiceTypes.js +15 -0
  24. package/dist/cjs/services/types/WalletServiceTypes.js +15 -0
  25. package/dist/cjs/services/types/index.js +15 -0
  26. package/dist/cjs/state/CoreStateManager.js +297 -0
  27. package/dist/cjs/state/actors/authenticateWithEmailOrPhone.js +50 -0
  28. package/dist/cjs/state/actors/authenticateWithExternalWallet.js +50 -0
  29. package/dist/cjs/state/actors/authenticateWithFarcaster.js +50 -0
  30. package/dist/cjs/state/actors/authenticateWithFarcasterLegacy.js +50 -0
  31. package/dist/cjs/state/actors/authenticateWithTelegram.js +50 -0
  32. package/dist/cjs/state/actors/authenticateWithTelegramLegacy.js +50 -0
  33. package/dist/cjs/state/actors/checkUserState.js +53 -0
  34. package/dist/cjs/state/actors/claimWallets.js +56 -0
  35. package/dist/cjs/state/actors/connectExternalConnectors.js +54 -0
  36. package/dist/cjs/state/actors/connectExternalWallet.js +50 -0
  37. package/dist/cjs/state/actors/createGuestWallets.js +50 -0
  38. package/dist/cjs/state/actors/createWallets.js +73 -0
  39. package/dist/cjs/state/actors/polling.js +91 -0
  40. package/dist/cjs/state/actors/processAuthentication.js +50 -0
  41. package/dist/cjs/state/actors/setupAfterLogin.js +52 -0
  42. package/dist/cjs/state/actors/setupPara.js +50 -0
  43. package/dist/cjs/state/actors/signExternalWalletVerification.js +79 -0
  44. package/dist/cjs/state/actors/switchExternalWallet.js +50 -0
  45. package/dist/cjs/state/actors/verifyExternalWallet.js +50 -0
  46. package/dist/cjs/state/actors/verifyNewAccount.js +50 -0
  47. package/dist/cjs/state/actors/waitForExternalWalletProviders.js +54 -0
  48. package/dist/cjs/state/machines/authStateMachine.helpers.js +137 -0
  49. package/dist/cjs/state/machines/authStateMachine.js +1084 -0
  50. package/dist/cjs/state/machines/coreStateMachine.js +383 -0
  51. package/dist/cjs/state/machines/walletStateMachine.js +437 -0
  52. package/dist/cjs/state/types/auth.js +15 -0
  53. package/dist/cjs/state/types/core.js +15 -0
  54. package/dist/cjs/state/types/wallet.js +15 -0
  55. package/dist/cjs/types/{auth.js → accountLinking.js} +3 -3
  56. package/dist/cjs/types/authState.js +15 -0
  57. package/dist/cjs/types/coreApi.js +3 -1
  58. package/dist/cjs/types/index.js +2 -2
  59. package/dist/cjs/types/serviceInterfaces.js +15 -0
  60. package/dist/cjs/types/util.js +15 -0
  61. package/dist/cjs/utils/formatting.js +6 -0
  62. package/dist/cjs/utils/retryBackoff.js +30 -0
  63. package/dist/cjs/utils/stateErrorHelpers.js +60 -0
  64. package/dist/cjs/utils/stateListener.js +129 -0
  65. package/dist/esm/ParaCore.js +796 -2031
  66. package/dist/esm/constants.js +3 -1
  67. package/dist/esm/services/AuthService.js +717 -0
  68. package/dist/esm/services/BaseAuthFlowService.js +25 -0
  69. package/dist/esm/services/ExternalWalletService.js +327 -0
  70. package/dist/esm/services/LoginFlowService.js +97 -0
  71. package/dist/esm/services/PollingService.js +389 -0
  72. package/dist/esm/services/PortalUrlService.js +320 -0
  73. package/dist/esm/services/PregenWalletService.js +393 -0
  74. package/dist/esm/services/SessionManagementService.js +236 -0
  75. package/dist/esm/services/SignupFlowService.js +119 -0
  76. package/dist/esm/services/VerificationFlowService.js +178 -0
  77. package/dist/esm/services/WalletService.js +514 -0
  78. package/dist/esm/services/types/AuthServiceTypes.js +0 -0
  79. package/dist/esm/services/types/BaseAuthFlowServiceTypes.js +0 -0
  80. package/dist/esm/services/types/ExternalWalletServiceTypes.js +0 -0
  81. package/dist/esm/services/types/LoginFlowServiceTypes.js +0 -0
  82. package/dist/esm/services/types/PollingServiceTypes.js +0 -0
  83. package/dist/esm/services/types/PortalUrlServiceTypes.js +0 -0
  84. package/dist/esm/services/types/PregenWalletServiceTypes.js +0 -0
  85. package/dist/esm/services/types/SessionManagementServiceTypes.js +0 -0
  86. package/dist/esm/services/types/SignupFlowServiceTypes.js +0 -0
  87. package/dist/esm/services/types/VerificationFlowServiceTypes.js +0 -0
  88. package/dist/esm/services/types/WalletServiceTypes.js +0 -0
  89. package/dist/esm/services/types/index.js +0 -0
  90. package/dist/esm/state/CoreStateManager.js +261 -0
  91. package/dist/esm/state/actors/authenticateWithEmailOrPhone.js +10 -0
  92. package/dist/esm/state/actors/authenticateWithExternalWallet.js +10 -0
  93. package/dist/esm/state/actors/authenticateWithFarcaster.js +10 -0
  94. package/dist/esm/state/actors/authenticateWithFarcasterLegacy.js +10 -0
  95. package/dist/esm/state/actors/authenticateWithTelegram.js +10 -0
  96. package/dist/esm/state/actors/authenticateWithTelegramLegacy.js +10 -0
  97. package/dist/esm/state/actors/checkUserState.js +13 -0
  98. package/dist/esm/state/actors/claimWallets.js +16 -0
  99. package/dist/esm/state/actors/connectExternalConnectors.js +14 -0
  100. package/dist/esm/state/actors/connectExternalWallet.js +10 -0
  101. package/dist/esm/state/actors/createGuestWallets.js +10 -0
  102. package/dist/esm/state/actors/createWallets.js +20 -0
  103. package/dist/esm/state/actors/polling.js +55 -0
  104. package/dist/esm/state/actors/processAuthentication.js +10 -0
  105. package/dist/esm/state/actors/setupAfterLogin.js +12 -0
  106. package/dist/esm/state/actors/setupPara.js +10 -0
  107. package/dist/esm/state/actors/signExternalWalletVerification.js +15 -0
  108. package/dist/esm/state/actors/switchExternalWallet.js +10 -0
  109. package/dist/esm/state/actors/verifyExternalWallet.js +10 -0
  110. package/dist/esm/state/actors/verifyNewAccount.js +10 -0
  111. package/dist/esm/state/actors/waitForExternalWalletProviders.js +14 -0
  112. package/dist/esm/state/machines/authStateMachine.helpers.js +92 -0
  113. package/dist/esm/state/machines/authStateMachine.js +1039 -0
  114. package/dist/esm/state/machines/coreStateMachine.js +343 -0
  115. package/dist/esm/state/machines/walletStateMachine.js +382 -0
  116. package/dist/esm/state/types/auth.js +0 -0
  117. package/dist/esm/state/types/core.js +0 -0
  118. package/dist/esm/state/types/wallet.js +0 -0
  119. package/dist/esm/types/authState.js +0 -0
  120. package/dist/esm/types/coreApi.js +3 -1
  121. package/dist/esm/types/index.js +1 -1
  122. package/dist/esm/types/serviceInterfaces.js +0 -0
  123. package/dist/esm/types/util.js +0 -0
  124. package/dist/esm/utils/formatting.js +6 -0
  125. package/dist/esm/utils/retryBackoff.js +7 -0
  126. package/dist/esm/utils/stateErrorHelpers.js +37 -0
  127. package/dist/esm/utils/stateListener.js +106 -0
  128. package/dist/types/ParaCore.d.ts +190 -119
  129. package/dist/types/PlatformUtils.d.ts +23 -0
  130. package/dist/types/constants.d.ts +1 -0
  131. package/dist/types/index.d.ts +4 -2
  132. package/dist/types/services/AuthService.d.ts +72 -0
  133. package/dist/types/services/BaseAuthFlowService.d.ts +28 -0
  134. package/dist/types/services/ExternalWalletService.d.ts +44 -0
  135. package/dist/types/services/LoginFlowService.d.ts +9 -0
  136. package/dist/types/services/PollingService.d.ts +35 -0
  137. package/dist/types/services/PortalUrlService.d.ts +26 -0
  138. package/dist/types/services/PregenWalletService.d.ts +38 -0
  139. package/dist/types/services/SessionManagementService.d.ts +28 -0
  140. package/dist/types/services/SignupFlowService.d.ts +10 -0
  141. package/dist/types/services/VerificationFlowService.d.ts +17 -0
  142. package/dist/types/services/WalletService.d.ts +54 -0
  143. package/dist/types/services/types/AuthServiceTypes.d.ts +147 -0
  144. package/dist/types/services/types/BaseAuthFlowServiceTypes.d.ts +4 -0
  145. package/dist/types/services/types/ExternalWalletServiceTypes.d.ts +67 -0
  146. package/dist/types/services/types/LoginFlowServiceTypes.d.ts +19 -0
  147. package/dist/types/services/types/PollingServiceTypes.d.ts +82 -0
  148. package/dist/types/services/types/PortalUrlServiceTypes.d.ts +46 -0
  149. package/dist/types/services/types/PregenWalletServiceTypes.d.ts +73 -0
  150. package/dist/types/services/types/SessionManagementServiceTypes.d.ts +27 -0
  151. package/dist/types/services/types/SignupFlowServiceTypes.d.ts +18 -0
  152. package/dist/types/services/types/VerificationFlowServiceTypes.d.ts +90 -0
  153. package/dist/types/services/types/WalletServiceTypes.d.ts +109 -0
  154. package/dist/types/services/types/index.d.ts +11 -0
  155. package/dist/types/state/CoreStateManager.d.ts +36 -0
  156. package/dist/types/state/actors/authenticateWithEmailOrPhone.d.ts +8 -0
  157. package/dist/types/state/actors/authenticateWithExternalWallet.d.ts +8 -0
  158. package/dist/types/state/actors/authenticateWithFarcaster.d.ts +3 -0
  159. package/dist/types/state/actors/authenticateWithFarcasterLegacy.d.ts +3 -0
  160. package/dist/types/state/actors/authenticateWithTelegram.d.ts +3 -0
  161. package/dist/types/state/actors/authenticateWithTelegramLegacy.d.ts +8 -0
  162. package/dist/types/state/actors/checkUserState.d.ts +6 -0
  163. package/dist/types/state/actors/claimWallets.d.ts +8 -0
  164. package/dist/types/state/actors/connectExternalConnectors.d.ts +4 -0
  165. package/dist/types/state/actors/connectExternalWallet.d.ts +3 -0
  166. package/dist/types/state/actors/createGuestWallets.d.ts +3 -0
  167. package/dist/types/state/actors/createWallets.d.ts +10 -0
  168. package/dist/types/state/actors/polling.d.ts +3 -0
  169. package/dist/types/state/actors/processAuthentication.d.ts +10 -0
  170. package/dist/types/state/actors/setupAfterLogin.d.ts +5 -0
  171. package/dist/types/state/actors/setupPara.d.ts +2 -0
  172. package/dist/types/state/actors/signExternalWalletVerification.d.ts +7 -0
  173. package/dist/types/state/actors/switchExternalWallet.d.ts +3 -0
  174. package/dist/types/state/actors/verifyExternalWallet.d.ts +8 -0
  175. package/dist/types/state/actors/verifyNewAccount.d.ts +8 -0
  176. package/dist/types/state/actors/waitForExternalWalletProviders.d.ts +2 -0
  177. package/dist/types/state/machines/authStateMachine.d.ts +2570 -0
  178. package/dist/types/state/machines/authStateMachine.helpers.d.ts +57 -0
  179. package/dist/types/state/machines/coreStateMachine.d.ts +22033 -0
  180. package/dist/types/state/machines/walletStateMachine.d.ts +1049 -0
  181. package/dist/types/state/types/auth.d.ts +113 -0
  182. package/dist/types/state/types/core.d.ts +114 -0
  183. package/dist/types/state/types/wallet.d.ts +76 -0
  184. package/dist/types/types/authState.d.ts +66 -0
  185. package/dist/types/types/config.d.ts +5 -0
  186. package/dist/types/types/coreApi.d.ts +148 -298
  187. package/dist/types/types/index.d.ts +3 -1
  188. package/dist/types/types/methods.d.ts +1 -191
  189. package/dist/types/types/serviceInterfaces.d.ts +125 -0
  190. package/dist/types/types/util.d.ts +43 -0
  191. package/dist/types/types/wallet.d.ts +3 -1
  192. package/dist/types/utils/retryBackoff.d.ts +2 -0
  193. package/dist/types/utils/stateErrorHelpers.d.ts +2 -0
  194. package/dist/types/utils/stateListener.d.ts +47 -0
  195. package/package.json +5 -4
  196. /package/dist/esm/types/{auth.js → accountLinking.js} +0 -0
  197. /package/dist/types/types/{auth.d.ts → accountLinking.d.ts} +0 -0
@@ -1,9 +1,10 @@
1
- import { BackupKitEmailProps, CurrentWalletIds, ExternalWalletInfo, OnRampPurchase, OnRampPurchaseCreateParams, PregenAuth, Setup2faResponse, VerifiedAuth, VerifyExternalWalletParams, WalletEntity, WalletParams, TWalletType, IssueJwtParams, IssueJwtResponse, TLinkedAccountType, LinkedAccounts, AuthMethod, ServerAuthStateSignup, ServerAuthStateLogin, ServerAuthStateDone } from '@getpara/user-management-client';
2
- import { AuthStateLogin, AuthStateVerify, OAuthResponse, AuthStateBaseParams, WithCustomTheme, WithUseShortUrls, Verify2faResponse, AuthStateSignup, AuthStateVerifyOrLogin, OAuthUrlParams, StorageType, PollParams, CoreAuthInfo, GetWalletBalanceParams, GetWalletBalanceResponse, FarcasterParams, TelegramParams, OAuthParams, NewCredentialUrlParams, AuthStateDone } from './methods.js';
1
+ import { ExternalWalletInfo, OnRampPurchase, OnRampPurchaseCreateParams, Setup2faResponse, VerifiedAuth, WalletEntity, WalletParams, TWalletType, IssueJwtParams, IssueJwtResponse, TLinkedAccountType, LinkedAccounts, AuthMethod } from '@getpara/user-management-client';
2
+ import type { OAuthResponse, WithCustomTheme, WithUseShortUrls, Verify2faParams, Verify2faResponse, AuthStateSignup, StorageType, CoreAuthInfo, TelegramParams } from './';
3
3
  import { ParaCore } from '../ParaCore.js';
4
4
  import { FullSignatureRes, Wallet } from './wallet.js';
5
- import { AccountLinkInProgress } from './auth.js';
6
- export declare const PARA_CORE_METHODS: readonly ["getAuthInfo", "signUpOrLogIn", "verifyNewAccount", "waitForLogin", "waitForSignup", "waitForWalletCreation", "getOAuthUrl", "verifyOAuth", "getFarcasterConnectUri", "verifyFarcaster", "verifyTelegram", "resendVerificationCode", "loginExternalWallet", "verifyExternalWallet", "setup2fa", "enable2fa", "verify2fa", "logout", "clearStorage", "isSessionActive", "isFullyLoggedIn", "refreshSession", "keepSessionAlive", "exportSession", "importSession", "getVerificationToken", "getWallets", "getWalletsByType", "fetchWallets", "createWallet", "createWalletPerType", "getPregenWallets", "hasPregenWallet", "updatePregenWalletIdentifier", "createPregenWallet", "createPregenWalletPerType", "claimPregenWallets", "createGuestWallets", "distributeNewWalletShare", "getUserShare", "setUserShare", "refreshShare", "signMessage", "signTransaction", "initiateOnRampTransaction", "getWalletBalance", "issueJwt", "getLinkedAccounts", "accountLinkInProgress", "addCredential", "exportPrivateKey"];
5
+ import { AccountLinkInProgress } from './accountLinking.js';
6
+ import type { WaitForLoginParams, WaitForLoginResponse, WaitForSignupParams, WaitForWalletCreationParams, WaitForWalletCreationResponse, GetOAuthUrlParams, AddCredentialParams, LoginExternalWalletParams, LoginExternalWalletResponse, ResendVerificationCodeParams, SignUpOrLogInParams, SignUpOrLogInResponse, VerifyOAuthProcessParams, VerifyExternalWalletParams, VerifyExternalWalletResponse, VerifyFarcasterParams, VerifyTelegramParams, ClaimPregenWalletsParams, ClaimPregenWalletsResponse, CreateGuestWalletsResponse, CreatePregenWalletParams, CreatePregenWalletPerTypeParams, CreatePregenWalletPerTypeResponse, CreatePregenWalletResponse, CreateWalletParams, CreateWalletPerTypeParams, CreateWalletPerTypeResponse, CreateWalletResponse, DistributeNewWalletShareParams, GetPregenWalletsParams, GetPregenWalletsResponse, GetWalletBalanceParams, HasPregenWalletParams, PollingCallbacks, RefreshShareParams, RefreshShareResponse, UpdatePregenWalletIdentifierParams, BaseVerifyExternalWalletParams, AuthenticateWithEmailOrPhoneParams, AuthenticateWithEmailOrPhoneResponse, AuthenticateWithOAuthParams, AuthenticateWithOAuthResponse } from '../services/types';
7
+ export declare const PARA_CORE_METHODS: readonly ["getAuthInfo", "signUpOrLogIn", "verifyNewAccount", "waitForLogin", "waitForSignup", "waitForWalletCreation", "getOAuthUrl", "verifyOAuth", "getFarcasterConnectUri", "verifyFarcaster", "verifyTelegram", "resendVerificationCode", "loginExternalWallet", "verifyExternalWallet", "setup2fa", "enable2fa", "verify2fa", "logout", "clearStorage", "isSessionActive", "isFullyLoggedIn", "refreshSession", "keepSessionAlive", "exportSession", "importSession", "getVerificationToken", "getWallets", "getWalletsByType", "fetchWallets", "createWallet", "createWalletPerType", "getPregenWallets", "hasPregenWallet", "updatePregenWalletIdentifier", "createPregenWallet", "createPregenWalletPerType", "claimPregenWallets", "createGuestWallets", "distributeNewWalletShare", "getUserShare", "setUserShare", "refreshShare", "signMessage", "signTransaction", "initiateOnRampTransaction", "getWalletBalance", "issueJwt", "getLinkedAccounts", "accountLinkInProgress", "addCredential", "exportPrivateKey", "authenticateWithEmailOrPhone", "authenticateWithOAuth"];
7
8
  export declare const PARA_INTERNAL_METHODS: readonly ["linkAccount", "unlinkAccount", "verifyEmailOrPhoneLink", "verifyOAuthLink", "verifyFarcasterLink", "verifyTelegramLink", "verifyExternalWalletLink", "accountLinkInProgress", "prepareLogin", "sendLoginCode", "supportedUserAuthMethods"];
8
9
  export type CoreMethodName = (typeof PARA_CORE_METHODS)[number];
9
10
  export type CoreMethodParams<method extends CoreMethodName & keyof CoreMethods> = CoreMethods[method] extends {
@@ -33,6 +34,89 @@ export type InternalMethodResponse<method extends InternalMethodName & keyof Int
33
34
  } ? R : Promise<R> : void;
34
35
  export type InternalMethod<method extends InternalMethodName & keyof InternalMethods> = InternalMethodIsGetter<method> extends true ? Awaited<InternalMethodResponse<method>> : InternalMethodParams<method> extends void | never ? () => InternalMethodResponse<method> : (_?: InternalMethodParams<method>) => InternalMethodResponse<method>;
35
36
  export type InternalAction<method extends InternalMethodName & keyof InternalMethods> = InternalMethodParams<method> extends void | never ? (_?: ParaCore) => InternalMethodResponse<method> : (_?: ParaCore, __?: InternalMethodParams<method>) => InternalMethodResponse<method>;
37
+ export type LogoutParams = {
38
+ /**
39
+ * Whether to remove all pregen wallets from storage.
40
+ */
41
+ clearPregenWallets?: boolean;
42
+ };
43
+ export type Enable2faParams = {
44
+ /**
45
+ * The two-factor authentication code entered by the user.
46
+ */
47
+ verificationCode: string;
48
+ };
49
+ export type SignMessageParams = PollingCallbacks & {
50
+ /**
51
+ * The ID of the wallet to use for signing.
52
+ */
53
+ walletId: string;
54
+ /**
55
+ * The message to sign as a base64-encoded string.
56
+ */
57
+ messageBase64: string;
58
+ /**
59
+ * The duration in milliseconds to wait before the signing operation times out.
60
+ */
61
+ timeoutMs?: number;
62
+ /**
63
+ * For Cosmos transactions, the `SignDoc` as a base64-encoded string.
64
+ */
65
+ cosmosSignDocBase64?: string;
66
+ /**
67
+ * A callback that returns a boolean, indicating whether the signing operation should be cancelled.
68
+ */
69
+ isCanceled?: () => boolean;
70
+ };
71
+ export type SignTransactionParams = PollingCallbacks & {
72
+ /**
73
+ * The ID of the wallet to use for signing.
74
+ */
75
+ walletId: string;
76
+ /**
77
+ * The transaction to sign as a base64-encoded string.
78
+ */
79
+ rlpEncodedTxBase64: string;
80
+ /**
81
+ * For EVM transactions, the chain ID.
82
+ */
83
+ chainId: string;
84
+ /**
85
+ * The duration in milliseconds to wait before the signing operation times out.
86
+ */
87
+ timeoutMs?: number;
88
+ /**
89
+ * A callback that returns a boolean, indicating whether the signing operation should be cancelled.
90
+ */
91
+ isCanceled?: () => boolean;
92
+ };
93
+ export type GetLinkedAccountsParams = {
94
+ withMetadata?: boolean;
95
+ };
96
+ export type GetLinkedAccountsResponse = LinkedAccounts & {
97
+ userId: string;
98
+ };
99
+ export type ExportPrivateKeyParams = {
100
+ walletId?: string;
101
+ shouldOpenPopup?: boolean;
102
+ } | undefined;
103
+ export type ExportPrivateKeyResponse = {
104
+ popupWindow?: Window;
105
+ url: string;
106
+ };
107
+ export type LinkAccountParams = {
108
+ auth: VerifiedAuth;
109
+ } | {
110
+ externalWallet: ExternalWalletInfo;
111
+ } | {
112
+ type: TLinkedAccountType | 'X';
113
+ };
114
+ export type UnlinkAccountParams = {
115
+ linkedAccountId: string;
116
+ };
117
+ export type VerifyEmailOrPhoneLinkParams = {
118
+ verificationCode?: string;
119
+ };
36
120
  export type CoreMethods = Record<CoreMethodName, {
37
121
  params?: unknown;
38
122
  response?: unknown;
@@ -49,13 +133,8 @@ export type CoreMethods = Record<CoreMethodName, {
49
133
  sync: true;
50
134
  };
51
135
  signUpOrLogIn: {
52
- params: WithCustomTheme & WithUseShortUrls & {
53
- /**
54
- * The user's email address or phone number, in the form `{ email: '...' } | { phone: '+1...' }`}
55
- */
56
- auth: VerifiedAuth;
57
- };
58
- response: AuthStateVerify | AuthStateLogin;
136
+ params: SignUpOrLogInParams;
137
+ response: SignUpOrLogInResponse;
59
138
  };
60
139
  verifyNewAccount: {
61
140
  params: WithCustomTheme & WithUseShortUrls & {
@@ -67,64 +146,23 @@ export type CoreMethods = Record<CoreMethodName, {
67
146
  response: AuthStateSignup;
68
147
  };
69
148
  waitForLogin: {
70
- params: PollParams & {
71
- /**
72
- * Whether to skip the session refresh
73
- */
74
- skipSessionRefresh?: boolean;
75
- /**
76
- * A function returning a boolean, indicating whether the login process should be cancelled.
77
- */
78
- isCanceled?: () => boolean;
79
- };
80
- response: {
81
- /**
82
- * Whether the signed-in user still needs to create one or more wallets for this application.
83
- */
84
- needsWallet?: boolean;
85
- /**
86
- * The partner ID for the current application.
87
- */
88
- partnerId?: string;
89
- };
149
+ params: WaitForLoginParams;
150
+ response: WaitForLoginResponse;
90
151
  };
91
152
  waitForSignup: {
92
- params: PollParams & {
93
- /**
94
- * A function returning a boolean, indicating whether the signup process should be cancelled.
95
- */
96
- isCanceled?: () => boolean;
97
- };
153
+ params: WaitForSignupParams;
98
154
  response: true;
99
155
  };
100
156
  waitForWalletCreation: {
101
- params: PollParams & {
102
- /**
103
- * A function returning a boolean, indicating whether wallet creation should be cancelled.
104
- */
105
- isCanceled?: () => boolean;
106
- };
107
- response: {
108
- /**
109
- * The IDs of the newly created wallets.
110
- */
111
- walletIds: CurrentWalletIds;
112
- /**
113
- * The recovery secret for the new wallets, if available.
114
- */
115
- recoverySecret?: string;
116
- };
157
+ params: WaitForWalletCreationParams;
158
+ response: WaitForWalletCreationResponse;
117
159
  };
118
160
  getOAuthUrl: {
119
- params: OAuthUrlParams & {
120
- sessionLookupId?: string;
121
- encryptionKey?: string;
122
- portalCallbackParams?: Record<string, string>;
123
- };
161
+ params: GetOAuthUrlParams;
124
162
  response: string;
125
163
  };
126
164
  verifyOAuth: {
127
- params: AuthStateBaseParams & OAuthParams;
165
+ params: VerifyOAuthProcessParams;
128
166
  response: OAuthResponse;
129
167
  };
130
168
  getFarcasterConnectUri: {
@@ -132,51 +170,27 @@ export type CoreMethods = Record<CoreMethodName, {
132
170
  response: string;
133
171
  };
134
172
  verifyFarcaster: {
135
- params: AuthStateBaseParams & FarcasterParams;
173
+ params: VerifyFarcasterParams;
136
174
  response: OAuthResponse;
137
175
  };
138
176
  verifyTelegram: {
139
- params: AuthStateBaseParams & TelegramParams;
177
+ params: VerifyTelegramParams;
140
178
  response: OAuthResponse;
141
179
  };
142
180
  loginExternalWallet: {
143
- params: AuthStateBaseParams & {
144
- /**
145
- * The external wallet information to use for login.
146
- */
147
- externalWallet: ExternalWalletInfo | ExternalWalletInfo[];
148
- /**
149
- * The chain ID used to generate the SIWE message.
150
- */
151
- chainId?: string;
152
- /**
153
- * The URI used to generate the SIWE message.
154
- */
155
- uri?: string;
156
- };
157
- response: AuthStateVerifyOrLogin;
181
+ params: LoginExternalWalletParams;
182
+ response: LoginExternalWalletResponse;
158
183
  };
159
184
  verifyExternalWallet: {
160
- params: (AuthStateBaseParams & {
161
- serverAuthState: ServerAuthStateSignup | ServerAuthStateLogin | ServerAuthStateDone;
162
- }) | (AuthStateBaseParams & VerifyExternalWalletParams & {
163
- serverAuthState?: undefined;
164
- });
165
- response: AuthStateSignup | AuthStateLogin | AuthStateDone;
185
+ params: VerifyExternalWalletParams;
186
+ response: VerifyExternalWalletResponse;
166
187
  };
167
188
  resendVerificationCode: {
168
- params: {
169
- type?: 'SIGNUP' | 'LINK_ACCOUNT' | 'LOGIN';
170
- } | undefined;
189
+ params: ResendVerificationCodeParams;
171
190
  response: void;
172
191
  };
173
192
  logout: {
174
- params: {
175
- /**
176
- * Whether to remove all pregen wallets from storage.
177
- */
178
- clearPregenWallets?: boolean;
179
- };
193
+ params: LogoutParams;
180
194
  response: void;
181
195
  };
182
196
  clearStorage: {
@@ -224,25 +238,11 @@ export type CoreMethods = Record<CoreMethodName, {
224
238
  response: Setup2faResponse;
225
239
  };
226
240
  enable2fa: {
227
- params: {
228
- /**
229
- * The two-factor authentication code entered by the user.
230
- */
231
- verificationCode: string;
232
- };
241
+ params: Enable2faParams;
233
242
  response: void;
234
243
  };
235
244
  verify2fa: {
236
- params: {
237
- /**
238
- * The email or phone number for the user to verify, in the form `{ email: '...' } | { phone: '+1...' }`
239
- */
240
- auth: VerifiedAuth;
241
- /**
242
- * The two-factor authentication code entered by the user.
243
- */
244
- verificationCode: string;
245
- };
245
+ params: Verify2faParams;
246
246
  response: Verify2faResponse;
247
247
  };
248
248
  getWallets: {
@@ -260,127 +260,43 @@ export type CoreMethods = Record<CoreMethodName, {
260
260
  response: WalletEntity[];
261
261
  };
262
262
  createWallet: {
263
- params: {
264
- type?: Uppercase<TWalletType>;
265
- skipDistribute?: boolean;
266
- };
267
- response: [Wallet, string | undefined];
263
+ params: CreateWalletParams;
264
+ response: CreateWalletResponse;
268
265
  };
269
266
  createWalletPerType: {
270
- params: {
271
- /**
272
- * Array of the wallet types to create
273
- */
274
- types?: Uppercase<TWalletType>[];
275
- /**
276
- * If `true`, skip distributing the new wallets shares.
277
- */
278
- skipDistribute?: boolean;
279
- };
280
- response: {
281
- /**
282
- * Array of the created wallets
283
- */
284
- wallets: Wallet[];
285
- /**
286
- * The `CurrentWalletIds` value for the new wallets
287
- */
288
- walletIds: CurrentWalletIds;
289
- /**
290
- * The recovery secret for the new wallets, if available.
291
- */
292
- recoverySecret?: string;
293
- };
267
+ params: CreateWalletPerTypeParams;
268
+ response: CreateWalletPerTypeResponse;
294
269
  };
295
270
  getPregenWallets: {
296
- params: {
297
- /**
298
- * The pregen ID for the wallets to fetch. If not provided, all available wallets will be retrieved.
299
- */
300
- pregenId?: PregenAuth;
301
- };
302
- response: WalletEntity[];
271
+ params: GetPregenWalletsParams;
272
+ response: GetPregenWalletsResponse;
303
273
  };
304
274
  updatePregenWalletIdentifier: {
305
- params: {
306
- /**
307
- * The ID of the pregen wallet to update.
308
- */
309
- walletId: string;
310
- /**
311
- * The new identifer for the wallet.
312
- */
313
- newPregenId: PregenAuth;
314
- };
275
+ params: UpdatePregenWalletIdentifierParams;
315
276
  response: void;
316
277
  };
317
278
  hasPregenWallet: {
318
- params: {
319
- /**
320
- * The pregen ID for the wallet to check.
321
- */
322
- pregenId: PregenAuth;
323
- };
279
+ params: HasPregenWalletParams;
324
280
  response: boolean;
325
281
  };
326
282
  createPregenWallet: {
327
- params: {
328
- /**
329
- * The type of wallet to create, 'EVM' | 'SOLANA' | 'COSMOS'
330
- */
331
- type: TWalletType;
332
- /**
333
- * The pregen identifier for the wallet, in the form: `{ email: string } | { phone: string } | { telegramUserId: string } | { farcasterUsername: string } | { xUsername: string } | { discordUsername: string } | { customId: string }`
334
- */
335
- pregenId: PregenAuth;
336
- };
337
- response: Wallet;
283
+ params: CreatePregenWalletParams;
284
+ response: CreatePregenWalletResponse;
338
285
  };
339
286
  createPregenWalletPerType: {
340
- params: {
341
- /**
342
- * The wallet types to create. If not provided, defaults to your application's `supportedWalletTypes` setting.
343
- */
344
- types?: TWalletType[];
345
- /**
346
- * The pregen identifier for the wallets, in the form: `{ email: string } | { phone: string } | { telegramUserId: string } | { farcasterUsername: string } | { xUsername: string } | { discordUsername: string } | { customId: string }`
347
- */
348
- pregenId: PregenAuth;
349
- };
350
- response: Wallet[];
287
+ params: CreatePregenWalletPerTypeParams;
288
+ response: CreatePregenWalletPerTypeResponse;
351
289
  };
352
290
  claimPregenWallets: {
353
- params: {
354
- /**
355
- * The pregen identifier for the wallet to claim. If not provided, will attempt to claim all wallets in storage.
356
- */
357
- pregenId?: PregenAuth;
358
- };
359
- response: string | undefined;
291
+ params: ClaimPregenWalletsParams;
292
+ response: ClaimPregenWalletsResponse;
360
293
  };
361
294
  createGuestWallets: {
362
295
  params: void;
363
- response: Wallet[];
296
+ response: CreateGuestWalletsResponse;
364
297
  };
365
298
  distributeNewWalletShare: {
366
- params: {
367
- /**
368
- * The ID of the wallet whose share to distribute.
369
- */
370
- walletId: string;
371
- /**
372
- * The user share string.
373
- */
374
- userShare?: string;
375
- /**
376
- * If `true`, skip biometric share creation.
377
- */
378
- skipBiometricShareCreation?: boolean;
379
- /**
380
- * If `true`, force a session refresh.
381
- */
382
- forceRefresh?: boolean;
383
- };
299
+ params: DistributeNewWalletShareParams;
384
300
  response: string;
385
301
  };
386
302
  getUserShare: {
@@ -393,69 +309,15 @@ export type CoreMethods = Record<CoreMethodName, {
393
309
  response: void;
394
310
  };
395
311
  refreshShare: {
396
- params: {
397
- walletId: string;
398
- share: string;
399
- oldPartnerId?: string;
400
- newPartnerId?: string;
401
- keyShareProtocolId?: string;
402
- redistributeBackupEncryptedShares?: boolean;
403
- emailProps?: BackupKitEmailProps;
404
- };
405
- response: {
406
- protocolId: string;
407
- recoverySecret?: string;
408
- signer: string;
409
- };
312
+ params: RefreshShareParams;
313
+ response: RefreshShareResponse;
410
314
  };
411
315
  signMessage: {
412
- params: PollParams & {
413
- /**
414
- * The ID of the wallet to use for signing.
415
- */
416
- walletId: string;
417
- /**
418
- * The message to sign as a base64-encoded string.
419
- */
420
- messageBase64: string;
421
- /**
422
- * The duration in milliseconds to wait before the signing operation times out.
423
- */
424
- timeoutMs?: number;
425
- /**
426
- * For Cosmos transactions, the `SignDoc` as a base64-encoded string.
427
- */
428
- cosmosSignDocBase64?: string;
429
- /**
430
- * A callback that returns a boolean, indicating whether the signing operation should be cancelled.
431
- */
432
- isCanceled?: () => boolean;
433
- };
316
+ params: SignMessageParams;
434
317
  response: FullSignatureRes;
435
318
  };
436
319
  signTransaction: {
437
- params: PollParams & {
438
- /**
439
- * The ID of the wallet to use for signing.
440
- */
441
- walletId: string;
442
- /**
443
- * The transaction to sign as a base64-encoded string.
444
- */
445
- rlpEncodedTxBase64: string;
446
- /**
447
- * For EVM transactions, the chain ID.
448
- */
449
- chainId: string;
450
- /**
451
- * The duration in milliseconds to wait before the signing operation times out.
452
- */
453
- timeoutMs?: number;
454
- /**
455
- * A callback that returns a boolean, indicating whether the signing operation should be cancelled.
456
- */
457
- isCanceled?: () => boolean;
458
- };
320
+ params: SignTransactionParams;
459
321
  response: FullSignatureRes;
460
322
  };
461
323
  initiateOnRampTransaction: {
@@ -482,64 +344,52 @@ export type CoreMethods = Record<CoreMethodName, {
482
344
  };
483
345
  getWalletBalance: {
484
346
  params: GetWalletBalanceParams;
485
- response: GetWalletBalanceResponse;
347
+ response: string;
486
348
  };
487
349
  issueJwt: {
488
350
  params: IssueJwtParams;
489
351
  response: IssueJwtResponse;
490
352
  };
491
353
  getLinkedAccounts: {
492
- params: {
493
- withMetadata?: boolean;
494
- };
495
- response: LinkedAccounts & {
496
- userId: string;
497
- };
354
+ params: GetLinkedAccountsParams;
355
+ response: GetLinkedAccountsResponse;
498
356
  };
499
357
  addCredential: {
500
- params: Pick<NewCredentialUrlParams, 'authMethod'>;
501
- response: Promise<string>;
358
+ params: AddCredentialParams;
359
+ response: string;
502
360
  };
503
361
  exportPrivateKey: {
504
- params: {
505
- walletId?: string;
506
- shouldOpenPopup?: boolean;
507
- } | undefined;
508
- response: {
509
- popupWindow?: Window;
510
- url: string;
511
- };
362
+ params: ExportPrivateKeyParams;
363
+ response: ExportPrivateKeyResponse;
364
+ };
365
+ authenticateWithEmailOrPhone: {
366
+ params: AuthenticateWithEmailOrPhoneParams;
367
+ response: AuthenticateWithEmailOrPhoneResponse;
368
+ };
369
+ authenticateWithOAuth: {
370
+ params: AuthenticateWithOAuthParams;
371
+ response: AuthenticateWithOAuthResponse;
512
372
  };
513
373
  };
514
374
  export type InternalMethods = {
515
375
  linkAccount: {
516
- params: {
517
- auth: VerifiedAuth;
518
- } | {
519
- externalWallet: ExternalWalletInfo;
520
- } | {
521
- type: TLinkedAccountType | 'X';
522
- };
376
+ params: LinkAccountParams;
523
377
  response: AccountLinkInProgress;
524
378
  };
525
379
  unlinkAccount: {
526
- params: {
527
- linkedAccountId: string;
528
- };
380
+ params: UnlinkAccountParams;
529
381
  response: LinkedAccounts;
530
382
  };
531
383
  verifyEmailOrPhoneLink: {
532
- params: {
533
- verificationCode?: string;
534
- };
384
+ params: VerifyEmailOrPhoneLinkParams;
535
385
  response: LinkedAccounts;
536
386
  };
537
387
  verifyOAuthLink: {
538
- params: OAuthParams;
388
+ params: VerifyOAuthProcessParams;
539
389
  response: LinkedAccounts;
540
390
  };
541
391
  verifyFarcasterLink: {
542
- params: FarcasterParams;
392
+ params: VerifyFarcasterParams;
543
393
  response: LinkedAccounts;
544
394
  };
545
395
  verifyTelegramLink: {
@@ -547,7 +397,7 @@ export type InternalMethods = {
547
397
  response: LinkedAccounts;
548
398
  };
549
399
  verifyExternalWalletLink: {
550
- params: Omit<VerifyExternalWalletParams, 'externalWallet'>;
400
+ params: Omit<BaseVerifyExternalWalletParams, 'externalWallet'>;
551
401
  response: LinkedAccounts;
552
402
  };
553
403
  prepareLogin: {
@@ -1,7 +1,9 @@
1
- export * from './auth.js';
1
+ export * from './accountLinking.js';
2
2
  export * from './config.js';
3
3
  export * from './coreApi.js';
4
4
  export * from './wallet.js';
5
5
  export * from './methods.js';
6
6
  export * from './popup.js';
7
7
  export * from './events.js';
8
+ export type * from './util';
9
+ export type * from './authState';