@getpara/core-sdk 2.0.0-dev.0 → 2.0.0-dev.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.
Binary file
Binary file
@@ -1,11 +1,12 @@
1
- import { AuthMethod, BackupKitEmailProps, CurrentWalletIds, EmailTheme, WalletEntity, WalletType, WalletParams, OAuthMethod, OnRampPurchaseCreateParams, OnRampPurchase, TPregenIdentifierType, PregenIds, BiometricLocationHint, TelegramAuthResponse, VerifyTelegramRes, Auth, SupportedWalletTypes, AuthIdentifier, ExternalWalletLoginRes, SessionInfo, PrimaryAuth, PrimaryAuthType } from '@getpara/user-management-client';
1
+ import { AuthMethod, AuthExtras, CurrentWalletIds, EmailTheme, WalletEntity, WalletType, OAuthMethod, TPregenIdentifierType, PregenIds, BiometricLocationHint, TelegramAuthResponse, VerifyTelegramRes, Auth, SupportedWalletTypes, AuthIdentifier, AuthType, ExternalWalletLoginRes, ExternalWalletInfo, PrimaryAuthInfo, SessionInfo, PrimaryAuth, PrimaryAuthType } from '@getpara/user-management-client';
2
2
  import type { pki as pkiType } from 'node-forge';
3
- import { Ctx, Environment, Theme, FullSignatureRes, ExternalWalletInfo, GetWebAuthUrlForLoginParams, AccountSetupResponse, LoginResponse, WalletFilters, WalletTypeProp, Wallet, PortalUrlOptions, ConstructorOpts, RecoveryStatus, CoreAuthInfo, AuthExtras, VerifyExternalWallet, ExternalWalletConnectionType } from './types/index.js';
3
+ import { Ctx, Environment, Theme, FullSignatureRes, GetWebAuthUrlForLoginParams, AccountSetupResponse, LoginResponse, WalletFilters, WalletTypeProp, Wallet, PortalUrlOptions, ConstructorOpts, RecoveryStatus, CoreAuthInfo, PortalUrlType, PortalUrlOptionsV2, CoreMethodParams, CoreMethodResponse, OAuthUrlParams, NewCredentialUrlParams, LoginUrlParams, CoreInterface, VerifyExternalWalletV1, ExternalWalletConnectionType } from './types/index.js';
4
4
  import { PlatformUtils } from './PlatformUtils.js';
5
- export declare abstract class ParaCore {
5
+ export declare abstract class ParaCore implements CoreInterface {
6
6
  #private;
7
7
  static version?: string;
8
8
  ctx: Ctx;
9
+ protected isNativePasskey: boolean;
9
10
  get authInfo(): CoreAuthInfo | undefined;
10
11
  get email(): AuthIdentifier<'email'> | undefined;
11
12
  get phone(): AuthIdentifier<'phone'> | undefined;
@@ -130,7 +131,7 @@ export declare abstract class ParaCore {
130
131
  * Remove all local storage and prefixed session storage.
131
132
  * @param {'local' | 'session' | 'secure' | 'all'} type - Type of storage to clear. Defaults to 'all'.
132
133
  */
133
- clearStorage: (type?: 'local' | 'session' | 'secure' | 'all') => Promise<void>;
134
+ clearStorage: (type?: CoreMethodParams<'clearStorage'>) => CoreMethodResponse<'clearStorage'>;
134
135
  private convertBigInt;
135
136
  private convertEncryptionKeyPair;
136
137
  private isPortal;
@@ -163,6 +164,7 @@ export declare abstract class ParaCore {
163
164
  getWallets(): Record<string, Wallet>;
164
165
  getAddress(walletId?: string): string | undefined;
165
166
  protected abstract getPlatformUtils(): PlatformUtils;
167
+ protected constructPortalUrlV2(type: PortalUrlType, opts?: PortalUrlOptionsV2): Promise<string>;
166
168
  private constructPortalUrl;
167
169
  /**
168
170
  * Constructs a new `ParaCore` instance.
@@ -193,6 +195,8 @@ export declare abstract class ParaCore {
193
195
  extras?: AuthExtras;
194
196
  userId?: string;
195
197
  }): Promise<typeof this.authInfo>;
198
+ protected assertUserId(): string;
199
+ protected assertIsAuthSet(allowed?: AuthType[]): PrimaryAuthInfo;
196
200
  /**
197
201
  * Sets the email associated with the `ParaCore` instance.
198
202
  * @param email - Email to set.
@@ -307,18 +311,21 @@ export declare abstract class ParaCore {
307
311
  shortenLoginLink(link: string): Promise<string>;
308
312
  /**
309
313
  * Generates a URL for registering a new WebAuth passkey.
314
+ * @deprecated
310
315
  * @param {GetWebAuthUrlForLoginParams} opts the options object
311
316
  * @returns - the URL for creating a new passkey
312
317
  */
313
318
  getWebAuthURLForLogin(opts: GetWebAuthUrlForLoginParams): Promise<string>;
314
319
  /**
315
320
  * Generates a URL for registering a new user password.
321
+ * @deprecated
316
322
  * @param {GetWebAuthUrlForLoginParams} opts the options object
317
323
  * @returns - the URL for creating a new password
318
324
  */
319
325
  getPasswordURLForLogin(opts: GetWebAuthUrlForLoginParams): Promise<string>;
320
326
  /**
321
327
  * Generates a URL for registering a new WebAuth passkey for a phone number.
328
+ * @deprecated
322
329
  * @param {Omit<GetWebAuthUrlForLoginParams, 'authType'>} opts the options object
323
330
  * @returns - web auth url
324
331
  */
@@ -333,11 +340,12 @@ export declare abstract class ParaCore {
333
340
  * Fetches the wallets associated with the user.
334
341
  * @returns {WalletEntity[]} wallets that were fetched.
335
342
  */
336
- fetchWallets(): Promise<WalletEntity[]>;
343
+ fetchWallets(): CoreMethodResponse<'fetchWallets'>;
337
344
  private populateWalletAddresses;
338
345
  private populatePregenWalletAddresses;
339
346
  /**
340
347
  * Checks if a user exists for an email address.
348
+ * @deprecated
341
349
  * @param {Object} opts the options object
342
350
  * @param {string} opts.email the email to check.
343
351
  * @returns true if user exists, false otherwise.
@@ -347,6 +355,7 @@ export declare abstract class ParaCore {
347
355
  }): Promise<boolean>;
348
356
  /**
349
357
  * Checks if a user exists for a phone number.
358
+ * @deprecated
350
359
  * @param {Object} opts the options object
351
360
  * @param {string} opts.phone - phone number to check.
352
361
  * @param {string} opts.countryCode - the country code.
@@ -355,12 +364,14 @@ export declare abstract class ParaCore {
355
364
  checkIfUserExistsByPhone(auth: Auth<'phone'>): Promise<boolean>;
356
365
  /**
357
366
  * Creates a new user.
367
+ * @deprecated
358
368
  * @param {Object} opts the options object
359
369
  * @param {string} opts.email the email to use.
360
370
  */
361
371
  createUser({ email }: Auth<'email'>): Promise<void>;
362
372
  /**
363
373
  * Creates a new user with a phone number.
374
+ * @deprecated
364
375
  * @param {Object} opts the options object
365
376
  * @param {string} opts.phone - the phone number to use for creating the user.
366
377
  * @param {string} opts.countryCode - the country code to use for creating the user.
@@ -368,6 +379,7 @@ export declare abstract class ParaCore {
368
379
  createUserByPhone(auth: Auth<'phone'>): Promise<void>;
369
380
  /**
370
381
  * Logs in or creates a new user using an external wallet address.
382
+ * @deprecated
371
383
  * @param {Object} opts the options object
372
384
  * @param {string} opts.address the external wallet address to use for identification.
373
385
  * @param {WalletType} opts.type type of external wallet to use for identification.
@@ -376,6 +388,7 @@ export declare abstract class ParaCore {
376
388
  externalWalletLogin(wallet: ExternalWalletInfo): Promise<ExternalWalletLoginRes>;
377
389
  /**
378
390
  * Passes the email code obtained from the user for verification.
391
+ * @deprecated
379
392
  * @param {Object} opts the options object
380
393
  * @param {string} verificationCode the six-digit code to check
381
394
  * @returns {string} the web auth url for creating a new credential
@@ -383,9 +396,11 @@ export declare abstract class ParaCore {
383
396
  verifyEmail({ verificationCode }: {
384
397
  verificationCode: string;
385
398
  }): Promise<string>;
386
- verifyExternalWallet({ address, signedMessage, cosmosPublicKeyHex, cosmosSigner, }: VerifyExternalWallet): Promise<string>;
399
+ /** @deprecated */
400
+ verifyExternalWallet({ address, signedMessage, cosmosPublicKeyHex, cosmosSigner, }: VerifyExternalWalletV1): Promise<string>;
387
401
  /**
388
402
  * Passes the phone code obtained from the user for verification.
403
+ * @deprecated
389
404
  * @param {Object} opts the options object
390
405
  * @param {string} verificationCode the six-digit code to check
391
406
  * @returns {string} the web auth url for creating a new credential
@@ -396,12 +411,14 @@ export declare abstract class ParaCore {
396
411
  /**
397
412
  * Validates the response received from an attempted Telegram login for authenticity, then
398
413
  * creates or retrieves the corresponding Para user and prepares the Para instance to sign in with that user.
414
+ * @deprecated
399
415
  * @param authResponse - the response JSON object received from the Telegram widget.
400
416
  * @returns `{ isValid: boolean; telegramUserId?: string; userId?: string; isNewUser?: boolean; supportedAuthMethods?: AuthMethod[]; biometricHints?: BiometricLocationHint[] }`
401
417
  */
402
418
  verifyTelegram(authObject: TelegramAuthResponse): Promise<VerifyTelegramRes>;
403
419
  /**
404
420
  * Performs 2FA verification.
421
+ * @deprecated
405
422
  * @param {Object} opts the options object
406
423
  * @param {string} opts.email the email to use for performing a 2FA verification.
407
424
  * @param {string} opts.verificationCode the verification code to received via 2FA.
@@ -418,6 +435,7 @@ export declare abstract class ParaCore {
418
435
  }>;
419
436
  /**
420
437
  * Performs 2FA verification.
438
+ * @deprecated
421
439
  * @param {Object} opts the options object
422
440
  * @param {string} opts.phone the phone number
423
441
  * @param {string} opts.countryCode - the country code
@@ -434,6 +452,7 @@ export declare abstract class ParaCore {
434
452
  }>;
435
453
  /**
436
454
  * Sets up two-factor authentication for the current user.
455
+ * @deprecated
437
456
  * @returns {string} uri - uri to use for setting up 2FA
438
457
  * */
439
458
  setup2FA(): Promise<{
@@ -441,6 +460,7 @@ export declare abstract class ParaCore {
441
460
  }>;
442
461
  /**
443
462
  * Enables 2FA.
463
+ * @deprecated
444
464
  * @param {Object} opts the options object
445
465
  * @param {string} opts.verificationCode - the verification code received via 2FA.
446
466
  */
@@ -449,6 +469,7 @@ export declare abstract class ParaCore {
449
469
  }): Promise<void>;
450
470
  /**
451
471
  * Determines if 2FA has been set up.
472
+ * @deprecated
452
473
  * @returns {Object} `{ isSetup: boolean }` - true if 2FA is setup, false otherwise
453
474
  */
454
475
  check2FAStatus(): Promise<{
@@ -457,13 +478,15 @@ export declare abstract class ParaCore {
457
478
  /**
458
479
  * Resend a verification email for the current user.
459
480
  */
460
- resendVerificationCode(): Promise<void>;
481
+ resendVerificationCode(): CoreMethodResponse<'resendVerificationCode'>;
461
482
  /**
462
483
  * Resend a verification SMS for the current user.
484
+ * @deprecated
463
485
  */
464
486
  resendVerificationCodeByPhone(): Promise<void>;
465
487
  /**
466
488
  * Returns a URL for setting up a new WebAuth passkey.
489
+ * @deprecated
467
490
  * @param {Object} opts the options object
468
491
  * @param {string} opts.authType - the auth type to use
469
492
  * @param {boolean} opts.isForNewDevice whether the passkey is for a new device of an existing user
@@ -472,6 +495,7 @@ export declare abstract class ParaCore {
472
495
  getSetUpBiometricsURL({ authType, isForNewDevice, }?: Pick<PortalUrlOptions, 'authType' | 'isForNewDevice'>): Promise<string>;
473
496
  /**
474
497
  * Returns a URL for setting up a new WebAuth passkey for a phone number.
498
+ * @deprecated
475
499
  * @param {Object} opts the options object
476
500
  * @param {boolean} opts.isForNewDevice whether the passkey is for a new device of an existing user
477
501
  * @returns {string} the URL
@@ -479,6 +503,7 @@ export declare abstract class ParaCore {
479
503
  getSetUpBiometricsURLForPhone({ isForNewDevice, }?: Pick<PortalUrlOptions, 'isForNewDevice'>): Promise<string>;
480
504
  /**
481
505
  * Returns a URL for setting up a new password.
506
+ * @deprecated
482
507
  * @param {Object} opts the options object
483
508
  * @param {string} opts.authType - the auth type to use
484
509
  * @param {boolean} opts.isForNewDevice whether the passkey is for a new device of an existing user
@@ -490,20 +515,23 @@ export declare abstract class ParaCore {
490
515
  * Checks if the current session is active.
491
516
  * @returns `true` if active, `false` otherwise
492
517
  */
493
- isSessionActive(): Promise<boolean>;
518
+ isSessionActive(): CoreMethodResponse<'isSessionActive'>;
494
519
  /**
495
520
  * Checks if a session is active and a wallet exists.
496
521
  * @returns `true` if active, `false` otherwise
497
522
  **/
498
- isFullyLoggedIn(): Promise<boolean>;
523
+ isFullyLoggedIn(): CoreMethodResponse<'isFullyLoggedIn'>;
524
+ /** @deprecated */
499
525
  protected supportedAuthMethods(auth: Auth<PrimaryAuthType | 'userId'>): Promise<Set<AuthMethod>>;
500
526
  /**
501
527
  * Get hints associated with the users stored biometrics.
528
+ * @deprecated
502
529
  * @returns Array containing useragents and AAGuids for stored biometrics
503
530
  */
504
531
  protected getUserBiometricLocationHints(): Promise<BiometricLocationHint[]>;
505
532
  /**
506
533
  * Initiates a login.
534
+ * @deprecated
507
535
  * @param {Object} opts the options object
508
536
  * @param {String} opts.email - the email to login with
509
537
  * @param {boolean} opts.useShortURL - whether to shorten the link
@@ -514,12 +542,14 @@ export declare abstract class ParaCore {
514
542
  }): Promise<string>;
515
543
  /**
516
544
  * Initiates a login.
545
+ * @deprecated
517
546
  * @param email - the email to login with
518
547
  * @returns - a set of supported auth methods for the user
519
548
  **/
520
549
  initiateUserLoginV2(auth: PrimaryAuth): Promise<Set<AuthMethod>>;
521
550
  /**
522
551
  * Initiates a login.
552
+ * @deprecated
523
553
  * @param opts the options object
524
554
  * @param opts.phone the phone number
525
555
  * @param opts.countryCode the country code
@@ -530,23 +560,29 @@ export declare abstract class ParaCore {
530
560
  useShortUrl?: boolean;
531
561
  }): Promise<string>;
532
562
  /**
563
+ * @deprecated
533
564
  * Waits for the session to be active.
534
565
  **/
535
566
  waitForAccountCreation({ popupWindow }?: {
536
567
  popupWindow?: Window | null;
537
568
  }): Promise<boolean>;
569
+ /**
570
+ * @deprecated
571
+ */
538
572
  waitForPasskeyAndCreateWallet({ popupWindow, }?: {
539
573
  popupWindow?: Window;
540
574
  }): Promise<AccountSetupResponse>;
541
575
  /**
542
576
  * Initiates a Farcaster login attempt and return the URI for the user to connect.
543
577
  * You can create a QR code with this URI that works with Farcaster's mobile app.
578
+ * @deprecated
544
579
  * @return {string} the Farcaster connect URI
545
580
  */
546
581
  getFarcasterConnectURL(): Promise<string>;
547
582
  /**
548
583
  * Awaits the response from a user's attempt to log in with Farcaster.
549
584
  * If successful, this returns the user's Farcaster username and profile picture and indicates whether the user already exists.
585
+ * @deprecated
550
586
  * @return {Object} `{userExists: boolean; username: string; pfpUrl?: string | null }` - the user's information and whether the user already exists.
551
587
  */
552
588
  waitForFarcasterStatus(): Promise<{
@@ -557,7 +593,7 @@ export declare abstract class ParaCore {
557
593
  }>;
558
594
  /**
559
595
  * Generates a URL for the user to log in with OAuth using a desire method.
560
- *
596
+ * @deprecated
561
597
  * @param {Object} opts the options object
562
598
  * @param {OAuthMethod} opts.method the third-party service to use for OAuth.
563
599
  * @param {string} [opts.deeplinkUrl] the deeplink to redirect to after the OAuth flow. This is for mobile only.
@@ -570,7 +606,7 @@ export declare abstract class ParaCore {
570
606
  /**
571
607
  * Awaits the response from a user's attempt to log in with OAuth.
572
608
  * If successful, this returns the user's email address and indicates whether the user already exists.
573
- *
609
+ * @deprecated
574
610
  * @param {Object} opts the options object.
575
611
  * @param {Window} [opts.popupWindow] the popup window being used for login.
576
612
  * @return {Object} `{ email?: string; isError?: boolean; userExists: boolean; }` the result data
@@ -584,7 +620,7 @@ export declare abstract class ParaCore {
584
620
  }>;
585
621
  /**
586
622
  * Waits for the session to be active and sets up the user.
587
- *
623
+ * @deprecated
588
624
  * @param {Object} opts the options object
589
625
  * @param {Window} [opts.popupWindow] the popup window being used for login.
590
626
  * @param {boolean} [opts.skipSessionRefresh] whether to skip refreshing the session.
@@ -602,9 +638,7 @@ export declare abstract class ParaCore {
602
638
  * @param {boolean} [shouldOpenPopup] - if `true`, the running device will open a popup to reauthenticate the user.
603
639
  * @returns a URL for the user to reauthenticate.
604
640
  **/
605
- refreshSession({ shouldOpenPopup }?: {
606
- shouldOpenPopup?: boolean;
607
- }): Promise<string>;
641
+ refreshSession({ shouldOpenPopup, }?: CoreMethodParams<'refreshSession'>): CoreMethodResponse<'refreshSession'>;
608
642
  /**
609
643
  * Call this method after login to ensure that the user ID is set
610
644
  * internally.
@@ -625,7 +659,7 @@ export declare abstract class ParaCore {
625
659
  * @param {any[]} opts.temporaryShares optional temporary shares to use for decryption.
626
660
  * @param {boolean} [opts.skipSessionRefresh] - whether or not to skip refreshing the session.
627
661
  **/
628
- setupAfterLogin({ temporaryShares, skipSessionRefresh, }?: {
662
+ protected setupAfterLogin({ temporaryShares, skipSessionRefresh, }?: {
629
663
  temporaryShares?: any[];
630
664
  skipSessionRefresh?: boolean;
631
665
  }): Promise<void>;
@@ -638,12 +672,7 @@ export declare abstract class ParaCore {
638
672
  * @param {boolean} opts.forceRefreshRecovery whether or not to force recovery secret regeneration. Used when regenerating recovery shares.
639
673
  * @returns {string} the recovery share.
640
674
  **/
641
- distributeNewWalletShare({ walletId, userShare, skipBiometricShareCreation, forceRefresh, }: {
642
- walletId: string;
643
- userShare?: string;
644
- skipBiometricShareCreation?: boolean;
645
- forceRefresh?: boolean;
646
- }): Promise<string>;
675
+ distributeNewWalletShare({ walletId, userShare, skipBiometricShareCreation, forceRefresh, }: CoreMethodParams<'distributeNewWalletShare'>): CoreMethodResponse<'distributeNewWalletShare'>;
647
676
  private waitForWalletAddress;
648
677
  /**
649
678
  * Waits for a pregen wallet address to be created.
@@ -662,14 +691,7 @@ export declare abstract class ParaCore {
662
691
  *
663
692
  * @deprecated alias for `createWalletPerType`
664
693
  **/
665
- createWalletPerMissingType: ({ skipDistribute, types, }?: {
666
- skipDistribute?: boolean;
667
- types?: WalletType[];
668
- }) => Promise<{
669
- wallets: Wallet[];
670
- walletIds: CurrentWalletIds;
671
- recoverySecret?: string;
672
- }>;
694
+ createWalletPerMissingType: ({ skipDistribute, types, }?: CoreMethodParams<'createWalletPerType'>) => CoreMethodResponse<'createWalletPerType'>;
673
695
  /**
674
696
  * Creates several new wallets with the desired types. If no types are provided, this method
675
697
  * will create one for each of the non-optional types specified in the instance's `supportedWalletTypes`
@@ -681,14 +703,7 @@ export declare abstract class ParaCore {
681
703
  * @param {WalletType[]} [opts.types] the types of wallets to create.
682
704
  * @returns {Object} the wallets created, their ids, and the recovery secret.
683
705
  **/
684
- createWalletPerType({ skipDistribute, types, }?: {
685
- skipDistribute?: boolean;
686
- types?: WalletType[];
687
- }): Promise<{
688
- wallets: Wallet[];
689
- walletIds: CurrentWalletIds;
690
- recoverySecret?: string;
691
- }>;
706
+ createWalletPerType({ skipDistribute, types, }?: CoreMethodParams<'createWalletPerType'>): CoreMethodResponse<'createWalletPerType'>;
692
707
  /**
693
708
  * Refresh the current user share for a wallet.
694
709
  *
@@ -701,19 +716,7 @@ export declare abstract class ParaCore {
701
716
  * @param {boolean} [opts.redistributeBackupEncryptedShares] whether or not to redistribute backup encrypted shares.
702
717
  * @returns {Object} the new user share and recovery secret.
703
718
  **/
704
- refreshShare({ walletId, share, oldPartnerId, newPartnerId, keyShareProtocolId, redistributeBackupEncryptedShares, }: {
705
- walletId: string;
706
- share: string;
707
- oldPartnerId?: string;
708
- newPartnerId?: string;
709
- keyShareProtocolId?: string;
710
- redistributeBackupEncryptedShares?: boolean;
711
- emailProps?: BackupKitEmailProps;
712
- }): Promise<{
713
- signer: string;
714
- recoverySecret?: string;
715
- protocolId: string;
716
- }>;
719
+ refreshShare({ walletId, share, oldPartnerId, newPartnerId, keyShareProtocolId, redistributeBackupEncryptedShares, }: CoreMethodParams<'refreshShare'>): CoreMethodResponse<'refreshShare'>;
717
720
  /**
718
721
  * Creates a new wallet.
719
722
  * @param {Object} opts the options object.
@@ -721,13 +724,10 @@ export declare abstract class ParaCore {
721
724
  * @param {boolean} opts.skipDistribute - if true, recovery share will not be distributed.
722
725
  * @returns {[Wallet, string | null]} `[wallet, recoveryShare]` - the wallet object and the new recovery share.
723
726
  **/
724
- createWallet({ type: _type, skipDistribute, }?: {
725
- type?: WalletType;
726
- skipDistribute?: boolean;
727
- }): Promise<[Wallet, string | null]>;
727
+ createWallet({ type: _type, skipDistribute, }?: CoreMethodParams<'createWallet'>): CoreMethodResponse<'createWallet'>;
728
728
  /**
729
729
  * Creates a new pregenerated wallet.
730
- *
730
+ * @deprecated
731
731
  * @param {Object} opts the options object.
732
732
  * @param {string} opts.pregenIdentifier the identifier associated with the new wallet.
733
733
  * @param {TPregenIdentifierType} [opts.pregenIdentifierType] the identifier type. Defaults to `EMAIL`.
@@ -743,6 +743,7 @@ export declare abstract class ParaCore {
743
743
  * Creates new pregenerated wallets for each desired type.
744
744
  * If no types are provided, this method will create one for each of the non-optional types
745
745
  * specified in the instance's `supportedWalletTypes` array that are not already present.
746
+ * @deprecated
746
747
  * @param {Object} opts the options object.
747
748
  * @param {string} opts.pregenIdentifier the identifier to associate each wallet with.
748
749
  * @param {TPregenIdentifierType} opts.pregenIdentifierType - either `'EMAIL'` or `'PHONE'`.
@@ -756,7 +757,7 @@ export declare abstract class ParaCore {
756
757
  }): Promise<Wallet[]>;
757
758
  /**
758
759
  * Claims a pregenerated wallet.
759
- *
760
+ * @deprecated
760
761
  * @param {Object} opts the options object.
761
762
  * @param {string} opts.pregenIdentifier string the identifier of the user claiming the wallet
762
763
  * @param {TPregenIdentifierType} opts.pregenIdentifierType type of the identifier of the user claiming the wallet
@@ -768,6 +769,7 @@ export declare abstract class ParaCore {
768
769
  }): Promise<string | undefined>;
769
770
  /**
770
771
  * Updates the identifier for a pregen wallet.
772
+ * @deprecated
771
773
  * @param {Object} opts the options object.
772
774
  * @param {string} opts.walletId the pregen wallet ID
773
775
  * @param {string} opts.newPregenIdentifier the new identtifier
@@ -780,6 +782,7 @@ export declare abstract class ParaCore {
780
782
  }): Promise<void>;
781
783
  /**
782
784
  * Checks if a pregen Wallet exists for the given identifier with the current partner.
785
+ * @deprecated
783
786
  * @param {Object} opts the options object.
784
787
  * @param {string} opts.pregenIdentifier string the identifier of the user claiming the wallet
785
788
  * @param {TPregenIdentifierType} opts.pregenIdentifierType type of the string of the identifier of the user claiming the wallet
@@ -791,6 +794,7 @@ export declare abstract class ParaCore {
791
794
  }): Promise<boolean>;
792
795
  /**
793
796
  * Get pregen wallets for the given identifier.
797
+ * @deprecated
794
798
  * @param {Object} opts the options object.
795
799
  * @param {string} opts.pregenIdentifier - the identifier of the user claiming the wallet
796
800
  * @param {TPregenIdentifierType} opts.pregenIdentifierType - type of the identifier of the user claiming the wallet
@@ -805,12 +809,12 @@ export declare abstract class ParaCore {
805
809
  * Encodes the current wallets encoded in Base 64.
806
810
  * @returns {string} the encoded wallet string
807
811
  **/
808
- getUserShare(): string | null;
812
+ getUserShare(): CoreMethodResponse<'getUserShare'>;
809
813
  /**
810
814
  * Sets the current wallets from a Base 64 string.
811
815
  * @param {string} base64Wallet the encoded wallet string
812
816
  **/
813
- setUserShare(base64Wallets: string | null): Promise<void>;
817
+ setUserShare(base64Wallets: CoreMethodParams<'setUserShare'>): CoreMethodResponse<'setUserShare'>;
814
818
  private getTransactionReviewUrl;
815
819
  private getOnRampTransactionUrl;
816
820
  /**
@@ -824,12 +828,7 @@ export declare abstract class ParaCore {
824
828
  * @param {number} [opts.timeout] optional timeout in milliseconds. If not present, defaults to 30 seconds.
825
829
  * @param {string} [opts.cosmosSignDocBase64] the Cosmos `SignDoc` in base64, if applicable
826
830
  **/
827
- signMessage({ walletId, messageBase64, timeoutMs, cosmosSignDocBase64, }: {
828
- walletId: string;
829
- messageBase64: string;
830
- timeoutMs?: number;
831
- cosmosSignDocBase64?: string;
832
- }): Promise<FullSignatureRes>;
831
+ signMessage({ walletId, messageBase64, timeoutMs, cosmosSignDocBase64, isCanceled, onCancel, onPoll, }: CoreMethodParams<'signMessage'>): CoreMethodResponse<'signMessage'>;
833
832
  private signMessageInner;
834
833
  /**
835
834
  * Signs a transaction.
@@ -839,12 +838,7 @@ export declare abstract class ParaCore {
839
838
  * @param {string} [opts.chainId] the EVM chain id of the chain the transaction is being sent on, if applicable
840
839
  * @param {number} [opts.timeoutMs] the amount of time to wait for the user to sign the transaction, in milliseconds
841
840
  **/
842
- signTransaction({ walletId, rlpEncodedTxBase64, chainId, timeoutMs, }: {
843
- walletId: string;
844
- rlpEncodedTxBase64: string;
845
- chainId: string;
846
- timeoutMs?: number;
847
- }): Promise<FullSignatureRes>;
841
+ signTransaction({ walletId, rlpEncodedTxBase64, chainId, timeoutMs, isCanceled, onCancel, onPoll, }: CoreMethodParams<'signTransaction'>): CoreMethodResponse<'signTransaction'>;
848
842
  /**
849
843
  * @deprecated
850
844
  * Sends a transaction.
@@ -866,13 +860,7 @@ export declare abstract class ParaCore {
866
860
  * @param {string} opts.walletId the wallet ID to use for the transaction, where funds will be sent or withdrawn.
867
861
  * @param {string} opts.externalWalletAddress the external wallet address to send funds to or withdraw funds from, if using an external wallet.
868
862
  **/
869
- initiateOnRampTransaction(options: WalletParams & {
870
- params: OnRampPurchaseCreateParams;
871
- shouldOpenPopup?: boolean;
872
- }): Promise<{
873
- onRampPurchase: OnRampPurchase;
874
- portalUrl: string;
875
- }>;
863
+ initiateOnRampTransaction(options: CoreMethodParams<'initiateOnRampTransaction'>): CoreMethodResponse<'initiateOnRampTransaction'>;
876
864
  /**
877
865
  * Returns `true` if session was successfully kept alive, `false` otherwise.
878
866
  **/
@@ -881,22 +869,37 @@ export declare abstract class ParaCore {
881
869
  * Serialize the current session for import by another Para instance.
882
870
  * @returns {string} the serialized session
883
871
  */
884
- exportSession(): string;
872
+ exportSession(): CoreMethodResponse<'exportSession'>;
885
873
  /**
886
874
  * Imports a session serialized by another Para instance.
887
875
  * @param {string} serializedInstanceBase64 the serialized session
888
876
  */
889
- importSession(serializedInstanceBase64: string): Promise<void>;
877
+ importSession(serializedInstanceBase64: CoreMethodParams<'importSession'>): CoreMethodResponse<'importSession'>;
878
+ /**
879
+ * @deprecated
880
+ */
890
881
  protected exitAccountCreation(): void;
882
+ /**
883
+ * @deprecated
884
+ */
891
885
  protected exitLogin(): void;
886
+ /**
887
+ * @deprecated
888
+ */
892
889
  protected exitFarcaster(): void;
890
+ /**
891
+ * @deprecated
892
+ */
893
893
  protected exitOAuth(): void;
894
+ /**
895
+ * @deprecated
896
+ */
894
897
  protected exitLoops(): void;
895
898
  /**
896
899
  * Retrieves a token to verify the current session.
897
900
  * @returns {Promise<string>} the ID
898
901
  **/
899
- getVerificationToken(): Promise<string>;
902
+ getVerificationToken(): CoreMethodResponse<'getVerificationToken'>;
900
903
  /**
901
904
  * Logs the user out.
902
905
  * @param {Object} opts the options object.
@@ -905,6 +908,7 @@ export declare abstract class ParaCore {
905
908
  logout({ clearPregenWallets }?: {
906
909
  clearPregenWallets?: boolean;
907
910
  }): Promise<void>;
911
+ /** @deprecated */
908
912
  protected getSupportedCreateAuthMethods(): Promise<Set<AuthMethod>>;
909
913
  /**
910
914
  * Converts to a string, removing sensitive data when logging this class.
@@ -912,4 +916,107 @@ export declare abstract class ParaCore {
912
916
  * Doesn't work for all types of logging.
913
917
  **/
914
918
  toString(): string;
919
+ /** NEW METHODS */
920
+ protected getNewCredentialAndUrl({ authMethod, isForNewDevice, portalTheme, shorten, }: NewCredentialUrlParams): Promise<{
921
+ credentialId: string;
922
+ url: string;
923
+ }>;
924
+ protected getLoginUrlV2({ authMethod, shorten, portalTheme, sessionId, }: LoginUrlParams): Promise<string>;
925
+ protected getOAuthUrlV2({ method, deeplinkUrl }: OAuthUrlParams): Promise<string>;
926
+ signUpOrLogInV2({ auth, ...urlOptions }: CoreMethodParams<'signUpOrLogInV2'>): CoreMethodResponse<'signUpOrLogInV2'>;
927
+ verifyNewAccountV2({ verificationCode, ...urlOptions }: CoreMethodParams<'verifyNewAccountV2'>): CoreMethodResponse<'verifyNewAccountV2'>;
928
+ verifyOAuthV2({ method, deeplinkUrl, isCanceled, onCancel, onPoll, onOAuthUrl, ...urlOptions }: CoreMethodParams<'verifyOAuthV2'>): CoreMethodResponse<'verifyOAuthV2'>;
929
+ verifyFarcasterV2({ isCanceled, onConnectUri, onCancel, onPoll, ...urlOptions }: CoreMethodParams<'verifyFarcasterV2'>): CoreMethodResponse<'verifyFarcasterV2'>;
930
+ /**
931
+ * Validates the response received from an attempted Telegram login for authenticity, then
932
+ * creates or retrieves the corresponding Para user and prepares the Para instance to sign in with that user.
933
+ * @param authResponse - the response JSON object received from the Telegram widget.
934
+ * @returns `{ isValid: boolean; telegramUserId?: string; userId?: string; isNewUser?: boolean; supportedAuthMethods?: AuthMethod[]; biometricHints?: BiometricLocationHint[] }`
935
+ */
936
+ verifyTelegramV2({ telegramAuthResponse, ...urlOptions }: CoreMethodParams<'verifyTelegramV2'>): CoreMethodResponse<'verifyTelegramV2'>;
937
+ /**
938
+ * Waits for the session to be active and sets up the user.
939
+ *
940
+ * @param {Object} opts the options object
941
+ * @param {Window} [opts.popupWindow] the popup window being used for login.
942
+ * @param {boolean} [opts.skipSessionRefresh] whether to skip refreshing the session.
943
+ * @returns {Object} `{ isComplete: boolean; isError: boolean; needsWallet: boolean; partnerId: string; }` the result data
944
+ **/
945
+ waitForLoginV2({ isCanceled, onCancel, onPoll, skipSessionRefresh, }?: CoreMethodParams<'waitForLoginV2'>): CoreMethodResponse<'waitForLoginV2'>;
946
+ waitForSignupV2({ isCanceled, onCancel, onPoll, }: CoreMethodParams<'waitForSignupV2'>): CoreMethodResponse<'waitForSignupV2'>;
947
+ waitForWalletCreationV2({ isCanceled, onCancel, }?: CoreMethodParams<'waitForWalletCreationV2'>): CoreMethodResponse<'waitForWalletCreationV2'>;
948
+ loginExternalWalletV2({ externalWallet, ...urlOptions }: CoreMethodParams<'loginExternalWalletV2'>): CoreMethodResponse<'loginExternalWalletV2'>;
949
+ verifyExternalWalletV2({ externalWallet, signedMessage, cosmosPublicKeyHex, cosmosSigner, ...urlOptions }: CoreMethodParams<'verifyExternalWalletV2'>): CoreMethodResponse<'verifyExternalWalletV2'>;
950
+ /**
951
+ * Performs 2FA verification.
952
+ * @param {Object} opts the options object
953
+ * @param {string} opts.email the email to use for performing a 2FA verification.
954
+ * @param {string} opts.verificationCode the verification code to received via 2FA.
955
+ * @returns {Object} `{ address, initiatedAt, status, userId, walletId }`
956
+ */
957
+ verify2faV2({ auth, verificationCode }: CoreMethodParams<'verify2faV2'>): CoreMethodResponse<'verify2faV2'>;
958
+ /**
959
+ * Sets up two-factor authentication for the current user.
960
+ * @returns {string} uri - uri to use for setting up 2FA
961
+ * */
962
+ setup2faV2(): CoreMethodResponse<'setup2faV2'>;
963
+ /**
964
+ * Enables 2FA.
965
+ * @param {Object} opts the options object
966
+ * @param {string} opts.verificationCode - the verification code received via 2FA.
967
+ */
968
+ enable2faV2({ verificationCode }: CoreMethodParams<'enable2faV2'>): CoreMethodResponse<'enable2faV2'>;
969
+ /**
970
+ * Creates a new pregenerated wallet.
971
+ *
972
+ * @param {Object} opts the options object.
973
+ * @param {string} opts.pregenIdentifier the identifier associated with the new wallet.
974
+ * @param {TPregenIdentifierType} [opts.pregenIdentifierType] the identifier type. Defaults to `EMAIL`.
975
+ * @param {WalletType} [opts.type] the type of wallet to create. Defaults to the first non-optional type in the instance's `supportedWalletTypes` array.
976
+ * @returns {Wallet} the created wallet.
977
+ **/
978
+ createPregenWalletV2(opts: CoreMethodParams<'createPregenWalletV2'>): CoreMethodResponse<'createPregenWalletV2'>;
979
+ /**
980
+ * Creates new pregenerated wallets for each desired type.
981
+ * If no types are provided, this method will create one for each of the non-optional types
982
+ * specified in the instance's `supportedWalletTypes` array that are not already present.
983
+ * @param {Object} opts the options object.
984
+ * @param {string} opts.pregenIdentifier the identifier to associate each wallet with.
985
+ * @param {TPregenIdentifierType} opts.pregenIdentifierType - either `'EMAIL'` or `'PHONE'`.
986
+ * @param {WalletType[]} [opts.types] the wallet types to create. Defaults to any types the instance supports that are not already present.
987
+ * @returns {Wallet[]} an array containing the created wallets.
988
+ **/
989
+ createPregenWalletPerTypeV2({ types, pregenId, }: CoreMethodParams<'createPregenWalletPerTypeV2'>): CoreMethodResponse<'createPregenWalletPerTypeV2'>;
990
+ /**
991
+ * Claims a pregenerated wallet.
992
+ * @param {Object} opts the options object.
993
+ * @param {string} opts.pregenIdentifier string the identifier of the user claiming the wallet
994
+ * @param {TPregenIdentifierType} opts.pregenIdentifierType type of the identifier of the user claiming the wallet
995
+ * @returns {[Wallet, string | null]} `[wallet, recoveryShare]` - the wallet object and the new recovery share.
996
+ **/
997
+ claimPregenWalletsV2({ pregenId, }?: CoreMethodParams<'claimPregenWalletsV2'>): CoreMethodResponse<'claimPregenWalletsV2'>;
998
+ /**
999
+ * Updates the identifier for a pregen wallet.
1000
+ * @param {Object} opts the options object.
1001
+ * @param {string} opts.walletId the pregen wallet ID
1002
+ * @param {string} opts.newPregenIdentifier the new identtifier
1003
+ * @param {TPregenIdentifierType} opts.newPregenIdentifierType: the new identifier type
1004
+ **/
1005
+ updatePregenWalletIdentifierV2({ walletId, newPregenId, }: CoreMethodParams<'updatePregenWalletIdentifierV2'>): CoreMethodResponse<'updatePregenWalletIdentifierV2'>;
1006
+ /**
1007
+ * Checks if a pregen Wallet exists for the given identifier with the current partner.
1008
+ * @param {Object} opts the options object.
1009
+ * @param {string} opts.pregenIdentifier string the identifier of the user claiming the wallet
1010
+ * @param {TPregenIdentifierType} opts.pregenIdentifierType type of the string of the identifier of the user claiming the wallet
1011
+ * @returns {boolean} whether the pregen wallet exists
1012
+ **/
1013
+ hasPregenWalletV2({ pregenId }: CoreMethodParams<'hasPregenWalletV2'>): CoreMethodResponse<'hasPregenWalletV2'>;
1014
+ /**
1015
+ * Get pregen wallets for the given identifier.
1016
+ * @param {Object} opts the options object.
1017
+ * @param {string} opts.pregenIdentifier - the identifier of the user claiming the wallet
1018
+ * @param {TPregenIdentifierType} opts.pregenIdentifierType - type of the identifier of the user claiming the wallet
1019
+ * @returns {Promise<WalletEntity[]>} the array of found wallets
1020
+ **/
1021
+ getPregenWalletsV2({ pregenId, }?: CoreMethodParams<'getPregenWalletsV2'>): CoreMethodResponse<'getPregenWalletsV2'>;
915
1022
  }
@@ -15,3 +15,4 @@ export declare const LOCAL_STORAGE_SESSION_COOKIE: string;
15
15
  export declare const SESSION_STORAGE_LOGIN_ENCRYPTION_KEY_PAIR: string;
16
16
  export declare const POLLING_INTERVAL_MS = 2000;
17
17
  export declare const SHORT_POLLING_INTERVAL_MS = 1000;
18
+ export declare const POLLING_TIMEOUT_MS = 300000;