@privy-io/js-sdk-core 0.79.1 → 0.79.3

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.
@@ -0,0 +1 @@
1
+ let e=require("viem/chains");Object.defineProperty(exports,"tempo",{enumerable:!0,get:function(){return e.tempo}}),Object.defineProperty(exports,"tempoModerato",{enumerable:!0,get:function(){return e.tempoModerato}});
@@ -304,20 +304,21 @@ type OnNeedsRecovery = (input: {
304
304
  recoveryMethod: EmbeddedWalletRecoveryOptions;
305
305
  onRecovered: () => void;
306
306
  }) => Promise<void> | void;
307
- declare class EmbeddedWalletProvider extends EventEmitter implements EIP1193Provider {
307
+ declare abstract class EmbeddedWalletProvider extends EventEmitter implements EIP1193Provider {
308
308
  request(request: RequestArguments): Promise<any>;
309
309
  private applyDataSuffix;
310
- /**
311
- * Backfills a transaction that may not specify a `chainId` with the provider's `this._chainId`
312
- * and switches the provider to that chain. Works for both standard EVM and
313
- * Tempo (type 118) requests.
314
- */
315
310
  private ensureChainId;
311
+ private awaitClientReady;
316
312
  /**
317
313
  * If a chainId is provided that differs from the current `this._chainId`,
318
314
  * the new chain and StaticJsonRpcProvider will be set
319
315
  */
320
316
  private internalSwitchEthereumChain;
317
+ /**
318
+ * Rebuild `_client` for the current chain. Tempo chains need their definitions loaded first, so
319
+ * the client is built asynchronously and `_clientReady` is set until then.
320
+ */
321
+ private updateClient;
321
322
  private handlePopulateTransaction;
322
323
  private handleSignTransaction;
323
324
  private handleSendTransaction;
@@ -841,7 +842,7 @@ type SignTransactionRequestArguments<T extends SolanaTransactionInput = Transact
841
842
  *
842
843
  * Currently only supports signing messages.
843
844
  */
844
- declare class EmbeddedSolanaWalletProvider {
845
+ declare abstract class EmbeddedSolanaWalletProvider {
845
846
  request(request: SignMessageRequestArguments): Promise<{
846
847
  signature: string;
847
848
  }>;
@@ -864,10 +865,6 @@ declare class EmbeddedSolanaWalletProvider {
864
865
  * @deprecated
865
866
  */
866
867
  get _publicKey(): string;
867
- private connectAndRecover;
868
- private walletRpcContext;
869
- private signMessageRpc;
870
- private signSerializedTransaction;
871
868
  private signTransactionObject;
872
869
  private handleIFrameRpc;
873
870
  private handleSignAndSendTransaction;
@@ -1152,6 +1149,9 @@ declare class EmbeddedWalletApi {
1152
1149
  * Retrieve this user's embedded wallet.
1153
1150
  * If the wallet has never been used on this device recover.
1154
1151
  *
1152
+ * TEE wallet providers do not use the embedded wallet proxy, but their requests fail until
1153
+ * `signWithUserSigner` can sign.
1154
+ *
1155
1155
  * @param password Recovery password for the embedded wallet
1156
1156
  * @returns EmbeddedWalletProvider implementing EIP1193Provider
1157
1157
  */
@@ -1160,6 +1160,9 @@ declare class EmbeddedWalletApi {
1160
1160
  * Load this user's embedded ethereum wallet through the given entropy.
1161
1161
  * If the wallet has never been used on this device recover.
1162
1162
  *
1163
+ * TEE wallet providers do not use the embedded wallet proxy, but their requests fail until
1164
+ * `signWithUserSigner` can sign.
1165
+ *
1163
1166
  * @returns EmbeddedWalletProvider implementing EIP1193Provider
1164
1167
  */
1165
1168
  getEthereumProvider({ wallet, entropyId, entropyIdVerifier, recoveryPassword, recoveryAccessToken, recoverySecretOverride, recoveryKey, onNeedsRecovery }: {
@@ -1188,6 +1191,9 @@ declare class EmbeddedWalletApi {
1188
1191
  * Retrieve this users embedded Solana wallet.
1189
1192
  * If the wallet has never been used on this device recover.
1190
1193
  *
1194
+ * TEE wallet providers do not use the embedded wallet proxy, but their requests fail until
1195
+ * `signWithUserSigner` can sign.
1196
+ *
1191
1197
  * @returns EmbeddedSolanaWalletProvider
1192
1198
  */
1193
1199
  getSolanaProvider(account: LinkedAccountSolanaEmbeddedWallet, entropyId: string, entropyIdVerifier: EntropyIdVerifier, recoveryPassword?: string, recoveryAccessToken?: string, recoverySecretOverride?: string,
@@ -1470,6 +1476,7 @@ declare class OAuthApi {
1470
1476
  linkWithCode(authorizationCode: string, returnedStateCode: string, provider?: OAuthProviderID$1, codeType?: 'raw'): Promise<{
1471
1477
  user: import("@privy-io/api-types").User;
1472
1478
  identity_token: string | undefined;
1479
+ oauth_tokens: import("@privy-io/api-types").OAuthTokens | undefined;
1473
1480
  }>;
1474
1481
  /**
1475
1482
  * Un-links an OAuth account from an existing user
@@ -2476,7 +2483,7 @@ type UnsignedEthereumTransactionType = UnsignedEthereumTransaction;
2476
2483
  * Converts an unsigned transaction request to the format expected by the Wallet API.
2477
2484
  *
2478
2485
  * Routes Tempo (type 118 / 0x76) requests through the Tempo serializer and falls
2479
- * through to the standard EVM serializer for legacy/EIP-2930/EIP-1559 inputs.
2486
+ * through to the standard EVM serializer for legacy/EIP-1559/EIP-7702 inputs.
2480
2487
  */
2481
2488
  declare function toWalletApiUnsignedEthTransaction(transaction: StrictUnsignedTransactionRequest | StrictUnsignedTempoTransactionRequest): UnsignedEthereumTransactionType;
2482
2489
  //#endregion
@@ -3232,13 +3239,17 @@ declare function filterDepositConfig(config: CryptoDepositAccountConfig, source:
3232
3239
  /**
3233
3240
  * Picks the deposit address that should be shown for a selected source chain.
3234
3241
  *
3235
- * Create returns one address per source chain family. Prefer an account whose
3236
- * source filter mentions that chain, then fall back to address format vs VM.
3242
+ * Create returns one address per source chain family, so the address in the
3243
+ * selected chain's format is the one to show. Which assets and chains a user
3244
+ * can pick is decided by the request's source filter (see
3245
+ * `filterDepositConfig`), not here.
3246
+ * Returns undefined rather than an address in the wrong format.
3237
3247
  */
3238
3248
  declare function pickDepositAddressForChain({ accounts, selectedChain }: {
3239
3249
  accounts: CryptoDepositAddressRoute[];
3250
+ /** Only `vmType` is read; `caip2` is accepted for compatibility. */
3240
3251
  selectedChain: {
3241
- caip2: string;
3252
+ caip2?: string;
3242
3253
  vmType: string;
3243
3254
  };
3244
3255
  }): string | undefined;
@@ -3604,6 +3615,42 @@ declare const approveSpend: ({ sendTransaction, evmChainId, stablecoinAddress, s
3604
3615
  hash: string;
3605
3616
  }>;
3606
3617
  //#endregion
3618
+ //#region src/cards/statement-periods.d.ts
3619
+ type StatementMonth = {
3620
+ /** `YYYY-MM`, the value the statement endpoint takes as its whole period. */
3621
+ value: string;
3622
+ /** Localized "August 2026", the value the user picks by. */
3623
+ label: string;
3624
+ };
3625
+ /**
3626
+ * The months this card can have a statement for, newest first. Empty when it can have none yet.
3627
+ *
3628
+ * Bounded at both ends, because a period the provider has no statement for is an error rather than
3629
+ * an empty PDF:
3630
+ *
3631
+ * - **Newest.** Production only generates statements for complete months, so it starts at last
3632
+ * month; sandbox generates the current month so integrations can test without waiting for one to
3633
+ * close, so it starts there. Confirmed by Elvin, 2026-08-28.
3634
+ * - **Oldest.** Stops at the month the card was issued — a period before the card existed has no
3635
+ * statement. The issue month itself is offered: a card issued mid-month has a statement for that
3636
+ * month once it closes.
3637
+ *
3638
+ * Every month is read in UTC, the frame `created_at` is already in, and each period is anchored on
3639
+ * its 1st. Local months would make the bound depend on the viewer's offset: a card issued
3640
+ * `2026-08-01T00:30Z` reads as July from UTC-5, which would offer a period from before the card
3641
+ * existed — the failure this function exists to prevent. The 1st keeps subtracting a month from
3642
+ * rolling over a shorter one (e.g. the 31st minus a month).
3643
+ *
3644
+ * @param cardCreatedAt When the card was issued.
3645
+ * @param environment Which environment the card belongs to, which sets the newest month offered.
3646
+ * @param now Override for the current date. Present so callers can test period boundaries.
3647
+ */
3648
+ declare const buildRecentMonths: ({ cardCreatedAt, environment, now }: {
3649
+ cardCreatedAt: Date;
3650
+ environment: IntegrationEnvironment;
3651
+ now?: Date;
3652
+ }) => StatementMonth[];
3653
+ //#endregion
3607
3654
  //#region src/cards/card-funding-source.d.ts
3608
3655
  /**
3609
3656
  * Funds a card can spend: its wallet's stablecoin, or its shares in an Earn vault. `selected` marks
@@ -4251,4 +4298,4 @@ declare const THIRDWEB: "thirdweb";
4251
4298
  /** @deprecated {@link SmartWalletType} is a well-typed union, use the `'nexus'` literal instead */
4252
4299
  declare const NEXUS: "nexus";
4253
4300
  //#endregion
4254
- export { ALL_WALLET_CLIENT_TYPES, BICONOMY, COINBASE_SMART_WALLET, type CardFundingSource, type CardResponse, type CardSignUp, type CardSignUpEvmWallet, type CardSignUpHostedPage, type CardSignUpPlatform, type CardSignUpSpendApproval, type CardSignUpStep, type CardTransactionBadge, type CardTransactionRow, type CardsConfig, Cluster, type CoinbaseAssetId, CoinbaseWalletClientType, type CompletedDepositAddressOrder, ConnectedStandardSolanaWallet, ConnectorType, CookieWriteBehavior, type CountryCallingCode, type CountryCode, type CreateCryptoDepositAccountInput, type CreateCryptoDepositAccountResponse, type CreateSiwsMessageOpts, type CryptoDepositAccountConfig, type CryptoDepositAccountQuote, type CryptoDepositAccountQuoteInput, type CryptoDepositAccountSearchResult, type CryptoDepositAddressRoute, type CryptoDepositAddressStrategy, type CryptoDepositAsset, type CryptoDepositAssetFilter, DATA_SUFFIX_PLUGIN_ID, type DataSuffixPlugin, type DepositAddressOrder, type DepositAddressPollingResult, type DepositAddressQuote, type DepositConfig, type DevSpendApprovalTarget, type EIP1193Provider, type EmbeddedBitcoinWalletProvider, EmbeddedProviderError, EmbeddedWalletClientType, type EmbeddedWalletConfig, type EmbeddedWalletRecoveryOptions, type EntropyIdVerifier, type ErrorMessageMap, type EvmDevSpendApprovalTarget, ExternalWallet, ExternalWalletMetadata, FundingMethod, FundingProvider, type GenerateAuthorizationSignatureInput, type GenerateAuthorizationSignatureOutput, type GenerateDepositAddressInput, type GetCryptoDepositAccountNextOrderInput, type GetCryptoDepositAccountNextOrderResponse, type GetCryptoDepositAccountOrderInput, type GetCryptoDepositAccountOrderResponse, type GetDepositInput, IdentifierString, InMemoryCache, type IncompleteDepositAddressOrder, InjectedWalletClientType, KERNEL, LIGHT_ACCOUNT, LIST_CARDS_MAX_LIMIT, LocalStorage, type LogLevel, type Logger, type MfaMethod, type MfaPromise, type MfaSubmitArgs, type MfaSubmitPromise, MoonpayApiError, type MoonpayTransactionStatus, type MoonpayTransactionStatusResponse, NEXUS, type OAuthProviderID, OAuthProviderType, type OnNeedsRecovery, type ParsedSolanaOffchainMessage, PaymentOption, type PollOptions, type PollResult, type PreparedTransactionRequest, PrivyApiError, PrivyClientError, PrivyConnectorError, PrivyEmbeddedSolanaWalletProvider, PrivyEmbeddedWalletErrorCode, PrivyEmbeddedWalletProvider, type PrivyPlugin, PrivyProviderRpcError, ProviderErrors, type Quantity, type ResolveRefundAddressError, type ResolveRefundAddressResult, SAFE, SUPPORTED_CONNECTOR_TYPES, type SendSpendApproval, type SessionSignerInput, type SetRecoveryInput, SmartWalletType, SolanaClient, SolanaCluster, SolanaSignAndSendTransactionInput, SolanaSignAndSendTransactionMode, SolanaSignAndSendTransactionOptions, SolanaSignAndSendTransactionOutput, SolanaSignMessageInput, SolanaSignMessageOutput, SolanaSignTransactionInput, SolanaSignTransactionOptions, SolanaSignTransactionOutput, type SolanaSpendApprovalChain, SolanaStandardWallet, SolanaTransactionCommitment, SolanaUsdcAddressMap, type SpendApprovalConfig, type SpendApprovalProvider, type Storage, type SvmDevSpendApprovalTarget, THIRDWEB, type TelegramAuthInput, type TelegramAuthResult, type TelegramWebAppData, UnknownWalletClientType, type UnsignedTransactionRequest, type UnsignedTransactionRequestWithChainId, type UpdateWalletInput, UsdcAddressMap, type WaitForCompletionInput, type WaitForDepositInput, WalletBranding, WalletClientType, WalletConnectWalletClientType, acceptCardConsents, addSessionSigners, approveSpend, buildSolanaOffchainMessage, chainToMoonpayCurrency, chooseTempoEarnVault, cookies, countryCodesAndNumbers, create, createCard, createCardSignUp, createDataSuffixPlugin, createErrorFormatter, createSiwsMessage, index_d_exports as crossApp, index_d_exports$1 as cryptoDepositAccount, Privy as default, index_d_exports$2 as delegatedActions, index_d_exports$3 as depositAddress, deriveSolanaApplicationDomain, downloadCardStatement, errorIndicatesMaxMfaRetries, errorIndicatesMfaCanceled, errorIndicatesMfaRateLimit, errorIndicatesMfaTimeout, errorIndicatesMfaVerificationFailed, errorIndicatesRecoveryIsNeeded, formatLamportsAmount, formatPhoneNumber, formatSignedTransactionAmount, formatTokenAmount, formatTransactionDate, formatUsdAmount, formatWalletAddress, formatWeiAmount, fundingMethodToMoonpayPaymentMethod, generateAuthorizationSignature, generateWalletIdempotencyKey, getAllUserEmbeddedBitcoinWallets, getAllUserEmbeddedEthereumWallets, getAllUserEmbeddedSolanaWallets, getCardAssetDisplayName, getCardById, getCardCustomer, getCardDisclosure, getCardEphemeralKey, getCardsConfig, getCoinbaseOnRampUrl, getCountryCallingCode, getDataSuffixPlugin, getEntropyDetailsFromAccount, getEntropyDetailsFromUser, getFiatOnrampProviderBrand, getFiatOnrampProviderId, getIsTokenUsdc, getJsonRpcEndpointFromChain, getOrCreateCardCustomer, getPhoneCountryCodeAndNumber, getPlaceholderPhoneNumber, getSolanaClusterDisplayName, getSolanaRpcEndpointForCluster, getSolanaUsdcMintAddressForCluster, getSpendApproval, getTransactionBadge, getUserEmbeddedEthereumWallet, getUserEmbeddedSolanaWallet, getUserEmbeddedWallet, getUserSmartWallet, getWallet, getWalletAction, handleSignUpClose, isCardExpired, isEmbeddedWalletAccount, isExtensionContext, isSupportedChainIdForCoinbaseOnramp, isSupportedChainIdForMoonpay, isUnifiedWallet, lastFourDigits, listCardTransactions, listCards, listWalletActions, parseSolanaOffchainMessage, phoneNumberTypingFormatter, poll, rawSign, readSpendAllowance, readTempoEarnVault, removeSessionSigners, replaceCard, rpc, shouldWriteSessionCookies, throwIfInvalidRecoveryUpgradePath, toCoinbaseAssetId, toCoinbaseBlockchainFromChainId, toE164, toObjectKeys, toTransactionRow, toWalletApiUnsignedEthTransaction, transfer, updateCardPin, updateCardStatus, updateWallet, validatePhoneNumber };
4301
+ export { ALL_WALLET_CLIENT_TYPES, BICONOMY, COINBASE_SMART_WALLET, type CardFundingSource, type CardResponse, type CardSignUp, type CardSignUpEvmWallet, type CardSignUpHostedPage, type CardSignUpPlatform, type CardSignUpSpendApproval, type CardSignUpStep, type CardTransactionBadge, type CardTransactionRow, type CardsConfig, Cluster, type CoinbaseAssetId, CoinbaseWalletClientType, type CompletedDepositAddressOrder, ConnectedStandardSolanaWallet, ConnectorType, CookieWriteBehavior, type CountryCallingCode, type CountryCode, type CreateCryptoDepositAccountInput, type CreateCryptoDepositAccountResponse, type CreateSiwsMessageOpts, type CryptoDepositAccountConfig, type CryptoDepositAccountQuote, type CryptoDepositAccountQuoteInput, type CryptoDepositAccountSearchResult, type CryptoDepositAddressRoute, type CryptoDepositAddressStrategy, type CryptoDepositAsset, type CryptoDepositAssetFilter, DATA_SUFFIX_PLUGIN_ID, type DataSuffixPlugin, type DepositAddressOrder, type DepositAddressPollingResult, type DepositAddressQuote, type DepositConfig, type DevSpendApprovalTarget, type EIP1193Provider, type EmbeddedBitcoinWalletProvider, EmbeddedProviderError, EmbeddedWalletClientType, type EmbeddedWalletConfig, type EmbeddedWalletRecoveryOptions, type EntropyIdVerifier, type ErrorMessageMap, type EvmDevSpendApprovalTarget, ExternalWallet, ExternalWalletMetadata, FundingMethod, FundingProvider, type GenerateAuthorizationSignatureInput, type GenerateAuthorizationSignatureOutput, type GenerateDepositAddressInput, type GetCryptoDepositAccountNextOrderInput, type GetCryptoDepositAccountNextOrderResponse, type GetCryptoDepositAccountOrderInput, type GetCryptoDepositAccountOrderResponse, type GetDepositInput, IdentifierString, InMemoryCache, type IncompleteDepositAddressOrder, InjectedWalletClientType, KERNEL, LIGHT_ACCOUNT, LIST_CARDS_MAX_LIMIT, LocalStorage, type LogLevel, type Logger, type MfaMethod, type MfaPromise, type MfaSubmitArgs, type MfaSubmitPromise, MoonpayApiError, type MoonpayTransactionStatus, type MoonpayTransactionStatusResponse, NEXUS, type OAuthProviderID, OAuthProviderType, type OnNeedsRecovery, type ParsedSolanaOffchainMessage, PaymentOption, type PollOptions, type PollResult, type PreparedTransactionRequest, PrivyApiError, PrivyClientError, PrivyConnectorError, PrivyEmbeddedSolanaWalletProvider, PrivyEmbeddedWalletErrorCode, PrivyEmbeddedWalletProvider, type PrivyPlugin, PrivyProviderRpcError, ProviderErrors, type Quantity, type ResolveRefundAddressError, type ResolveRefundAddressResult, SAFE, SUPPORTED_CONNECTOR_TYPES, type SendSpendApproval, type SessionSignerInput, type SetRecoveryInput, SmartWalletType, SolanaClient, SolanaCluster, SolanaSignAndSendTransactionInput, SolanaSignAndSendTransactionMode, SolanaSignAndSendTransactionOptions, SolanaSignAndSendTransactionOutput, SolanaSignMessageInput, SolanaSignMessageOutput, SolanaSignTransactionInput, SolanaSignTransactionOptions, SolanaSignTransactionOutput, type SolanaSpendApprovalChain, SolanaStandardWallet, SolanaTransactionCommitment, SolanaUsdcAddressMap, type SpendApprovalConfig, type SpendApprovalProvider, type StatementMonth, type Storage, type SvmDevSpendApprovalTarget, THIRDWEB, type TelegramAuthInput, type TelegramAuthResult, type TelegramWebAppData, UnknownWalletClientType, type UnsignedTransactionRequest, type UnsignedTransactionRequestWithChainId, type UpdateWalletInput, UsdcAddressMap, type WaitForCompletionInput, type WaitForDepositInput, WalletBranding, WalletClientType, WalletConnectWalletClientType, acceptCardConsents, addSessionSigners, approveSpend, buildRecentMonths, buildSolanaOffchainMessage, chainToMoonpayCurrency, chooseTempoEarnVault, cookies, countryCodesAndNumbers, create, createCard, createCardSignUp, createDataSuffixPlugin, createErrorFormatter, createSiwsMessage, index_d_exports as crossApp, index_d_exports$1 as cryptoDepositAccount, Privy as default, index_d_exports$2 as delegatedActions, index_d_exports$3 as depositAddress, deriveSolanaApplicationDomain, downloadCardStatement, errorIndicatesMaxMfaRetries, errorIndicatesMfaCanceled, errorIndicatesMfaRateLimit, errorIndicatesMfaTimeout, errorIndicatesMfaVerificationFailed, errorIndicatesRecoveryIsNeeded, formatLamportsAmount, formatPhoneNumber, formatSignedTransactionAmount, formatTokenAmount, formatTransactionDate, formatUsdAmount, formatWalletAddress, formatWeiAmount, fundingMethodToMoonpayPaymentMethod, generateAuthorizationSignature, generateWalletIdempotencyKey, getAllUserEmbeddedBitcoinWallets, getAllUserEmbeddedEthereumWallets, getAllUserEmbeddedSolanaWallets, getCardAssetDisplayName, getCardById, getCardCustomer, getCardDisclosure, getCardEphemeralKey, getCardsConfig, getCoinbaseOnRampUrl, getCountryCallingCode, getDataSuffixPlugin, getEntropyDetailsFromAccount, getEntropyDetailsFromUser, getFiatOnrampProviderBrand, getFiatOnrampProviderId, getIsTokenUsdc, getJsonRpcEndpointFromChain, getOrCreateCardCustomer, getPhoneCountryCodeAndNumber, getPlaceholderPhoneNumber, getSolanaClusterDisplayName, getSolanaRpcEndpointForCluster, getSolanaUsdcMintAddressForCluster, getSpendApproval, getTransactionBadge, getUserEmbeddedEthereumWallet, getUserEmbeddedSolanaWallet, getUserEmbeddedWallet, getUserSmartWallet, getWallet, getWalletAction, handleSignUpClose, isCardExpired, isEmbeddedWalletAccount, isExtensionContext, isSupportedChainIdForCoinbaseOnramp, isSupportedChainIdForMoonpay, isUnifiedWallet, lastFourDigits, listCardTransactions, listCards, listWalletActions, parseSolanaOffchainMessage, phoneNumberTypingFormatter, poll, rawSign, readSpendAllowance, readTempoEarnVault, removeSessionSigners, replaceCard, rpc, shouldWriteSessionCookies, throwIfInvalidRecoveryUpgradePath, toCoinbaseAssetId, toCoinbaseBlockchainFromChainId, toE164, toObjectKeys, toTransactionRow, toWalletApiUnsignedEthTransaction, transfer, updateCardPin, updateCardStatus, updateWallet, validatePhoneNumber };
@@ -304,20 +304,21 @@ type OnNeedsRecovery = (input: {
304
304
  recoveryMethod: EmbeddedWalletRecoveryOptions;
305
305
  onRecovered: () => void;
306
306
  }) => Promise<void> | void;
307
- declare class EmbeddedWalletProvider extends EventEmitter implements EIP1193Provider {
307
+ declare abstract class EmbeddedWalletProvider extends EventEmitter implements EIP1193Provider {
308
308
  request(request: RequestArguments): Promise<any>;
309
309
  private applyDataSuffix;
310
- /**
311
- * Backfills a transaction that may not specify a `chainId` with the provider's `this._chainId`
312
- * and switches the provider to that chain. Works for both standard EVM and
313
- * Tempo (type 118) requests.
314
- */
315
310
  private ensureChainId;
311
+ private awaitClientReady;
316
312
  /**
317
313
  * If a chainId is provided that differs from the current `this._chainId`,
318
314
  * the new chain and StaticJsonRpcProvider will be set
319
315
  */
320
316
  private internalSwitchEthereumChain;
317
+ /**
318
+ * Rebuild `_client` for the current chain. Tempo chains need their definitions loaded first, so
319
+ * the client is built asynchronously and `_clientReady` is set until then.
320
+ */
321
+ private updateClient;
321
322
  private handlePopulateTransaction;
322
323
  private handleSignTransaction;
323
324
  private handleSendTransaction;
@@ -841,7 +842,7 @@ type SignTransactionRequestArguments<T extends SolanaTransactionInput = Transact
841
842
  *
842
843
  * Currently only supports signing messages.
843
844
  */
844
- declare class EmbeddedSolanaWalletProvider {
845
+ declare abstract class EmbeddedSolanaWalletProvider {
845
846
  request(request: SignMessageRequestArguments): Promise<{
846
847
  signature: string;
847
848
  }>;
@@ -864,10 +865,6 @@ declare class EmbeddedSolanaWalletProvider {
864
865
  * @deprecated
865
866
  */
866
867
  get _publicKey(): string;
867
- private connectAndRecover;
868
- private walletRpcContext;
869
- private signMessageRpc;
870
- private signSerializedTransaction;
871
868
  private signTransactionObject;
872
869
  private handleIFrameRpc;
873
870
  private handleSignAndSendTransaction;
@@ -1152,6 +1149,9 @@ declare class EmbeddedWalletApi {
1152
1149
  * Retrieve this user's embedded wallet.
1153
1150
  * If the wallet has never been used on this device recover.
1154
1151
  *
1152
+ * TEE wallet providers do not use the embedded wallet proxy, but their requests fail until
1153
+ * `signWithUserSigner` can sign.
1154
+ *
1155
1155
  * @param password Recovery password for the embedded wallet
1156
1156
  * @returns EmbeddedWalletProvider implementing EIP1193Provider
1157
1157
  */
@@ -1160,6 +1160,9 @@ declare class EmbeddedWalletApi {
1160
1160
  * Load this user's embedded ethereum wallet through the given entropy.
1161
1161
  * If the wallet has never been used on this device recover.
1162
1162
  *
1163
+ * TEE wallet providers do not use the embedded wallet proxy, but their requests fail until
1164
+ * `signWithUserSigner` can sign.
1165
+ *
1163
1166
  * @returns EmbeddedWalletProvider implementing EIP1193Provider
1164
1167
  */
1165
1168
  getEthereumProvider({ wallet, entropyId, entropyIdVerifier, recoveryPassword, recoveryAccessToken, recoverySecretOverride, recoveryKey, onNeedsRecovery }: {
@@ -1188,6 +1191,9 @@ declare class EmbeddedWalletApi {
1188
1191
  * Retrieve this users embedded Solana wallet.
1189
1192
  * If the wallet has never been used on this device recover.
1190
1193
  *
1194
+ * TEE wallet providers do not use the embedded wallet proxy, but their requests fail until
1195
+ * `signWithUserSigner` can sign.
1196
+ *
1191
1197
  * @returns EmbeddedSolanaWalletProvider
1192
1198
  */
1193
1199
  getSolanaProvider(account: LinkedAccountSolanaEmbeddedWallet, entropyId: string, entropyIdVerifier: EntropyIdVerifier, recoveryPassword?: string, recoveryAccessToken?: string, recoverySecretOverride?: string,
@@ -1470,6 +1476,7 @@ declare class OAuthApi {
1470
1476
  linkWithCode(authorizationCode: string, returnedStateCode: string, provider?: OAuthProviderID$1, codeType?: 'raw'): Promise<{
1471
1477
  user: import("@privy-io/api-types").User;
1472
1478
  identity_token: string | undefined;
1479
+ oauth_tokens: import("@privy-io/api-types").OAuthTokens | undefined;
1473
1480
  }>;
1474
1481
  /**
1475
1482
  * Un-links an OAuth account from an existing user
@@ -2476,7 +2483,7 @@ type UnsignedEthereumTransactionType = UnsignedEthereumTransaction;
2476
2483
  * Converts an unsigned transaction request to the format expected by the Wallet API.
2477
2484
  *
2478
2485
  * Routes Tempo (type 118 / 0x76) requests through the Tempo serializer and falls
2479
- * through to the standard EVM serializer for legacy/EIP-2930/EIP-1559 inputs.
2486
+ * through to the standard EVM serializer for legacy/EIP-1559/EIP-7702 inputs.
2480
2487
  */
2481
2488
  declare function toWalletApiUnsignedEthTransaction(transaction: StrictUnsignedTransactionRequest | StrictUnsignedTempoTransactionRequest): UnsignedEthereumTransactionType;
2482
2489
  //#endregion
@@ -3232,13 +3239,17 @@ declare function filterDepositConfig(config: CryptoDepositAccountConfig, source:
3232
3239
  /**
3233
3240
  * Picks the deposit address that should be shown for a selected source chain.
3234
3241
  *
3235
- * Create returns one address per source chain family. Prefer an account whose
3236
- * source filter mentions that chain, then fall back to address format vs VM.
3242
+ * Create returns one address per source chain family, so the address in the
3243
+ * selected chain's format is the one to show. Which assets and chains a user
3244
+ * can pick is decided by the request's source filter (see
3245
+ * `filterDepositConfig`), not here.
3246
+ * Returns undefined rather than an address in the wrong format.
3237
3247
  */
3238
3248
  declare function pickDepositAddressForChain({ accounts, selectedChain }: {
3239
3249
  accounts: CryptoDepositAddressRoute[];
3250
+ /** Only `vmType` is read; `caip2` is accepted for compatibility. */
3240
3251
  selectedChain: {
3241
- caip2: string;
3252
+ caip2?: string;
3242
3253
  vmType: string;
3243
3254
  };
3244
3255
  }): string | undefined;
@@ -3604,6 +3615,42 @@ declare const approveSpend: ({ sendTransaction, evmChainId, stablecoinAddress, s
3604
3615
  hash: string;
3605
3616
  }>;
3606
3617
  //#endregion
3618
+ //#region src/cards/statement-periods.d.ts
3619
+ type StatementMonth = {
3620
+ /** `YYYY-MM`, the value the statement endpoint takes as its whole period. */
3621
+ value: string;
3622
+ /** Localized "August 2026", the value the user picks by. */
3623
+ label: string;
3624
+ };
3625
+ /**
3626
+ * The months this card can have a statement for, newest first. Empty when it can have none yet.
3627
+ *
3628
+ * Bounded at both ends, because a period the provider has no statement for is an error rather than
3629
+ * an empty PDF:
3630
+ *
3631
+ * - **Newest.** Production only generates statements for complete months, so it starts at last
3632
+ * month; sandbox generates the current month so integrations can test without waiting for one to
3633
+ * close, so it starts there. Confirmed by Elvin, 2026-08-28.
3634
+ * - **Oldest.** Stops at the month the card was issued — a period before the card existed has no
3635
+ * statement. The issue month itself is offered: a card issued mid-month has a statement for that
3636
+ * month once it closes.
3637
+ *
3638
+ * Every month is read in UTC, the frame `created_at` is already in, and each period is anchored on
3639
+ * its 1st. Local months would make the bound depend on the viewer's offset: a card issued
3640
+ * `2026-08-01T00:30Z` reads as July from UTC-5, which would offer a period from before the card
3641
+ * existed — the failure this function exists to prevent. The 1st keeps subtracting a month from
3642
+ * rolling over a shorter one (e.g. the 31st minus a month).
3643
+ *
3644
+ * @param cardCreatedAt When the card was issued.
3645
+ * @param environment Which environment the card belongs to, which sets the newest month offered.
3646
+ * @param now Override for the current date. Present so callers can test period boundaries.
3647
+ */
3648
+ declare const buildRecentMonths: ({ cardCreatedAt, environment, now }: {
3649
+ cardCreatedAt: Date;
3650
+ environment: IntegrationEnvironment;
3651
+ now?: Date;
3652
+ }) => StatementMonth[];
3653
+ //#endregion
3607
3654
  //#region src/cards/card-funding-source.d.ts
3608
3655
  /**
3609
3656
  * Funds a card can spend: its wallet's stablecoin, or its shares in an Earn vault. `selected` marks
@@ -4251,4 +4298,4 @@ declare const THIRDWEB: "thirdweb";
4251
4298
  /** @deprecated {@link SmartWalletType} is a well-typed union, use the `'nexus'` literal instead */
4252
4299
  declare const NEXUS: "nexus";
4253
4300
  //#endregion
4254
- export { ALL_WALLET_CLIENT_TYPES, BICONOMY, COINBASE_SMART_WALLET, type CardFundingSource, type CardResponse, type CardSignUp, type CardSignUpEvmWallet, type CardSignUpHostedPage, type CardSignUpPlatform, type CardSignUpSpendApproval, type CardSignUpStep, type CardTransactionBadge, type CardTransactionRow, type CardsConfig, Cluster, type CoinbaseAssetId, CoinbaseWalletClientType, type CompletedDepositAddressOrder, ConnectedStandardSolanaWallet, ConnectorType, CookieWriteBehavior, type CountryCallingCode, type CountryCode, type CreateCryptoDepositAccountInput, type CreateCryptoDepositAccountResponse, type CreateSiwsMessageOpts, type CryptoDepositAccountConfig, type CryptoDepositAccountQuote, type CryptoDepositAccountQuoteInput, type CryptoDepositAccountSearchResult, type CryptoDepositAddressRoute, type CryptoDepositAddressStrategy, type CryptoDepositAsset, type CryptoDepositAssetFilter, DATA_SUFFIX_PLUGIN_ID, type DataSuffixPlugin, type DepositAddressOrder, type DepositAddressPollingResult, type DepositAddressQuote, type DepositConfig, type DevSpendApprovalTarget, type EIP1193Provider, type EmbeddedBitcoinWalletProvider, EmbeddedProviderError, EmbeddedWalletClientType, type EmbeddedWalletConfig, type EmbeddedWalletRecoveryOptions, type EntropyIdVerifier, type ErrorMessageMap, type EvmDevSpendApprovalTarget, ExternalWallet, ExternalWalletMetadata, FundingMethod, FundingProvider, type GenerateAuthorizationSignatureInput, type GenerateAuthorizationSignatureOutput, type GenerateDepositAddressInput, type GetCryptoDepositAccountNextOrderInput, type GetCryptoDepositAccountNextOrderResponse, type GetCryptoDepositAccountOrderInput, type GetCryptoDepositAccountOrderResponse, type GetDepositInput, IdentifierString, InMemoryCache, type IncompleteDepositAddressOrder, InjectedWalletClientType, KERNEL, LIGHT_ACCOUNT, LIST_CARDS_MAX_LIMIT, LocalStorage, type LogLevel, type Logger, type MfaMethod, type MfaPromise, type MfaSubmitArgs, type MfaSubmitPromise, MoonpayApiError, type MoonpayTransactionStatus, type MoonpayTransactionStatusResponse, NEXUS, type OAuthProviderID, OAuthProviderType, type OnNeedsRecovery, type ParsedSolanaOffchainMessage, PaymentOption, type PollOptions, type PollResult, type PreparedTransactionRequest, PrivyApiError, PrivyClientError, PrivyConnectorError, PrivyEmbeddedSolanaWalletProvider, PrivyEmbeddedWalletErrorCode, PrivyEmbeddedWalletProvider, type PrivyPlugin, PrivyProviderRpcError, ProviderErrors, type Quantity, type ResolveRefundAddressError, type ResolveRefundAddressResult, SAFE, SUPPORTED_CONNECTOR_TYPES, type SendSpendApproval, type SessionSignerInput, type SetRecoveryInput, SmartWalletType, SolanaClient, SolanaCluster, SolanaSignAndSendTransactionInput, SolanaSignAndSendTransactionMode, SolanaSignAndSendTransactionOptions, SolanaSignAndSendTransactionOutput, SolanaSignMessageInput, SolanaSignMessageOutput, SolanaSignTransactionInput, SolanaSignTransactionOptions, SolanaSignTransactionOutput, type SolanaSpendApprovalChain, SolanaStandardWallet, SolanaTransactionCommitment, SolanaUsdcAddressMap, type SpendApprovalConfig, type SpendApprovalProvider, type Storage, type SvmDevSpendApprovalTarget, THIRDWEB, type TelegramAuthInput, type TelegramAuthResult, type TelegramWebAppData, UnknownWalletClientType, type UnsignedTransactionRequest, type UnsignedTransactionRequestWithChainId, type UpdateWalletInput, UsdcAddressMap, type WaitForCompletionInput, type WaitForDepositInput, WalletBranding, WalletClientType, WalletConnectWalletClientType, acceptCardConsents, addSessionSigners, approveSpend, buildSolanaOffchainMessage, chainToMoonpayCurrency, chooseTempoEarnVault, cookies, countryCodesAndNumbers, create, createCard, createCardSignUp, createDataSuffixPlugin, createErrorFormatter, createSiwsMessage, index_d_exports as crossApp, index_d_exports$1 as cryptoDepositAccount, Privy as default, index_d_exports$2 as delegatedActions, index_d_exports$3 as depositAddress, deriveSolanaApplicationDomain, downloadCardStatement, errorIndicatesMaxMfaRetries, errorIndicatesMfaCanceled, errorIndicatesMfaRateLimit, errorIndicatesMfaTimeout, errorIndicatesMfaVerificationFailed, errorIndicatesRecoveryIsNeeded, formatLamportsAmount, formatPhoneNumber, formatSignedTransactionAmount, formatTokenAmount, formatTransactionDate, formatUsdAmount, formatWalletAddress, formatWeiAmount, fundingMethodToMoonpayPaymentMethod, generateAuthorizationSignature, generateWalletIdempotencyKey, getAllUserEmbeddedBitcoinWallets, getAllUserEmbeddedEthereumWallets, getAllUserEmbeddedSolanaWallets, getCardAssetDisplayName, getCardById, getCardCustomer, getCardDisclosure, getCardEphemeralKey, getCardsConfig, getCoinbaseOnRampUrl, getCountryCallingCode, getDataSuffixPlugin, getEntropyDetailsFromAccount, getEntropyDetailsFromUser, getFiatOnrampProviderBrand, getFiatOnrampProviderId, getIsTokenUsdc, getJsonRpcEndpointFromChain, getOrCreateCardCustomer, getPhoneCountryCodeAndNumber, getPlaceholderPhoneNumber, getSolanaClusterDisplayName, getSolanaRpcEndpointForCluster, getSolanaUsdcMintAddressForCluster, getSpendApproval, getTransactionBadge, getUserEmbeddedEthereumWallet, getUserEmbeddedSolanaWallet, getUserEmbeddedWallet, getUserSmartWallet, getWallet, getWalletAction, handleSignUpClose, isCardExpired, isEmbeddedWalletAccount, isExtensionContext, isSupportedChainIdForCoinbaseOnramp, isSupportedChainIdForMoonpay, isUnifiedWallet, lastFourDigits, listCardTransactions, listCards, listWalletActions, parseSolanaOffchainMessage, phoneNumberTypingFormatter, poll, rawSign, readSpendAllowance, readTempoEarnVault, removeSessionSigners, replaceCard, rpc, shouldWriteSessionCookies, throwIfInvalidRecoveryUpgradePath, toCoinbaseAssetId, toCoinbaseBlockchainFromChainId, toE164, toObjectKeys, toTransactionRow, toWalletApiUnsignedEthTransaction, transfer, updateCardPin, updateCardStatus, updateWallet, validatePhoneNumber };
4301
+ export { ALL_WALLET_CLIENT_TYPES, BICONOMY, COINBASE_SMART_WALLET, type CardFundingSource, type CardResponse, type CardSignUp, type CardSignUpEvmWallet, type CardSignUpHostedPage, type CardSignUpPlatform, type CardSignUpSpendApproval, type CardSignUpStep, type CardTransactionBadge, type CardTransactionRow, type CardsConfig, Cluster, type CoinbaseAssetId, CoinbaseWalletClientType, type CompletedDepositAddressOrder, ConnectedStandardSolanaWallet, ConnectorType, CookieWriteBehavior, type CountryCallingCode, type CountryCode, type CreateCryptoDepositAccountInput, type CreateCryptoDepositAccountResponse, type CreateSiwsMessageOpts, type CryptoDepositAccountConfig, type CryptoDepositAccountQuote, type CryptoDepositAccountQuoteInput, type CryptoDepositAccountSearchResult, type CryptoDepositAddressRoute, type CryptoDepositAddressStrategy, type CryptoDepositAsset, type CryptoDepositAssetFilter, DATA_SUFFIX_PLUGIN_ID, type DataSuffixPlugin, type DepositAddressOrder, type DepositAddressPollingResult, type DepositAddressQuote, type DepositConfig, type DevSpendApprovalTarget, type EIP1193Provider, type EmbeddedBitcoinWalletProvider, EmbeddedProviderError, EmbeddedWalletClientType, type EmbeddedWalletConfig, type EmbeddedWalletRecoveryOptions, type EntropyIdVerifier, type ErrorMessageMap, type EvmDevSpendApprovalTarget, ExternalWallet, ExternalWalletMetadata, FundingMethod, FundingProvider, type GenerateAuthorizationSignatureInput, type GenerateAuthorizationSignatureOutput, type GenerateDepositAddressInput, type GetCryptoDepositAccountNextOrderInput, type GetCryptoDepositAccountNextOrderResponse, type GetCryptoDepositAccountOrderInput, type GetCryptoDepositAccountOrderResponse, type GetDepositInput, IdentifierString, InMemoryCache, type IncompleteDepositAddressOrder, InjectedWalletClientType, KERNEL, LIGHT_ACCOUNT, LIST_CARDS_MAX_LIMIT, LocalStorage, type LogLevel, type Logger, type MfaMethod, type MfaPromise, type MfaSubmitArgs, type MfaSubmitPromise, MoonpayApiError, type MoonpayTransactionStatus, type MoonpayTransactionStatusResponse, NEXUS, type OAuthProviderID, OAuthProviderType, type OnNeedsRecovery, type ParsedSolanaOffchainMessage, PaymentOption, type PollOptions, type PollResult, type PreparedTransactionRequest, PrivyApiError, PrivyClientError, PrivyConnectorError, PrivyEmbeddedSolanaWalletProvider, PrivyEmbeddedWalletErrorCode, PrivyEmbeddedWalletProvider, type PrivyPlugin, PrivyProviderRpcError, ProviderErrors, type Quantity, type ResolveRefundAddressError, type ResolveRefundAddressResult, SAFE, SUPPORTED_CONNECTOR_TYPES, type SendSpendApproval, type SessionSignerInput, type SetRecoveryInput, SmartWalletType, SolanaClient, SolanaCluster, SolanaSignAndSendTransactionInput, SolanaSignAndSendTransactionMode, SolanaSignAndSendTransactionOptions, SolanaSignAndSendTransactionOutput, SolanaSignMessageInput, SolanaSignMessageOutput, SolanaSignTransactionInput, SolanaSignTransactionOptions, SolanaSignTransactionOutput, type SolanaSpendApprovalChain, SolanaStandardWallet, SolanaTransactionCommitment, SolanaUsdcAddressMap, type SpendApprovalConfig, type SpendApprovalProvider, type StatementMonth, type Storage, type SvmDevSpendApprovalTarget, THIRDWEB, type TelegramAuthInput, type TelegramAuthResult, type TelegramWebAppData, UnknownWalletClientType, type UnsignedTransactionRequest, type UnsignedTransactionRequestWithChainId, type UpdateWalletInput, UsdcAddressMap, type WaitForCompletionInput, type WaitForDepositInput, WalletBranding, WalletClientType, WalletConnectWalletClientType, acceptCardConsents, addSessionSigners, approveSpend, buildRecentMonths, buildSolanaOffchainMessage, chainToMoonpayCurrency, chooseTempoEarnVault, cookies, countryCodesAndNumbers, create, createCard, createCardSignUp, createDataSuffixPlugin, createErrorFormatter, createSiwsMessage, index_d_exports as crossApp, index_d_exports$1 as cryptoDepositAccount, Privy as default, index_d_exports$2 as delegatedActions, index_d_exports$3 as depositAddress, deriveSolanaApplicationDomain, downloadCardStatement, errorIndicatesMaxMfaRetries, errorIndicatesMfaCanceled, errorIndicatesMfaRateLimit, errorIndicatesMfaTimeout, errorIndicatesMfaVerificationFailed, errorIndicatesRecoveryIsNeeded, formatLamportsAmount, formatPhoneNumber, formatSignedTransactionAmount, formatTokenAmount, formatTransactionDate, formatUsdAmount, formatWalletAddress, formatWeiAmount, fundingMethodToMoonpayPaymentMethod, generateAuthorizationSignature, generateWalletIdempotencyKey, getAllUserEmbeddedBitcoinWallets, getAllUserEmbeddedEthereumWallets, getAllUserEmbeddedSolanaWallets, getCardAssetDisplayName, getCardById, getCardCustomer, getCardDisclosure, getCardEphemeralKey, getCardsConfig, getCoinbaseOnRampUrl, getCountryCallingCode, getDataSuffixPlugin, getEntropyDetailsFromAccount, getEntropyDetailsFromUser, getFiatOnrampProviderBrand, getFiatOnrampProviderId, getIsTokenUsdc, getJsonRpcEndpointFromChain, getOrCreateCardCustomer, getPhoneCountryCodeAndNumber, getPlaceholderPhoneNumber, getSolanaClusterDisplayName, getSolanaRpcEndpointForCluster, getSolanaUsdcMintAddressForCluster, getSpendApproval, getTransactionBadge, getUserEmbeddedEthereumWallet, getUserEmbeddedSolanaWallet, getUserEmbeddedWallet, getUserSmartWallet, getWallet, getWalletAction, handleSignUpClose, isCardExpired, isEmbeddedWalletAccount, isExtensionContext, isSupportedChainIdForCoinbaseOnramp, isSupportedChainIdForMoonpay, isUnifiedWallet, lastFourDigits, listCardTransactions, listCards, listWalletActions, parseSolanaOffchainMessage, phoneNumberTypingFormatter, poll, rawSign, readSpendAllowance, readTempoEarnVault, removeSessionSigners, replaceCard, rpc, shouldWriteSessionCookies, throwIfInvalidRecoveryUpgradePath, toCoinbaseAssetId, toCoinbaseBlockchainFromChainId, toE164, toObjectKeys, toTransactionRow, toWalletApiUnsignedEthTransaction, transfer, updateCardPin, updateCardStatus, updateWallet, validatePhoneNumber };