import { Algorithm } from '@phantom/sdk-types'; /** Refresh the id_token when fewer than this many ms remain before expiry. */ declare const TOKEN_REFRESH_BUFFER_MS: number; declare const DEFAULT_AUTHENTICATOR_ALGORITHM: Algorithm; declare const PHANTOM_ICON: "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4IiBoZWlnaHQ9IjEwOCIgdmlld0JveD0iMCAwIDEwOCAxMDgiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxyZWN0IHdpZHRoPSIxMDgiIGhlaWdodD0iMTA4IiByeD0iMjYiIGZpbGw9IiNBQjlGRjIiLz4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00Ni41MjY3IDY5LjkyMjlDNDIuMDA1NCA3Ni44NTA5IDM0LjQyOTIgODUuNjE4MiAyNC4zNDggODUuNjE4MkMxOS41ODI0IDg1LjYxODIgMTUgODMuNjU2MyAxNSA3NS4xMzQyQzE1IDUzLjQzMDUgNDQuNjMyNiAxOS44MzI3IDcyLjEyNjggMTkuODMyN0M4Ny43NjggMTkuODMyNyA5NCAzMC42ODQ2IDk0IDQzLjAwNzlDOTQgNTguODI1OCA4My43MzU1IDc2LjkxMjIgNzMuNTMyMSA3Ni45MTIyQzcwLjI5MzkgNzYuOTEyMiA2OC43MDUzIDc1LjEzNDIgNjguNzA1MyA3Mi4zMTRDNjguNzA1MyA3MS41NzgzIDY4LjgyNzUgNzAuNzgxMiA2OS4wNzE5IDY5LjkyMjlDNjUuNTg5MyA3NS44Njk5IDU4Ljg2ODUgODEuMzg3OCA1Mi41NzU0IDgxLjM4NzhDNDcuOTkzIDgxLjM4NzggNDUuNjcxMyA3OC41MDYzIDQ1LjY3MTMgNzQuNDU5OEM0NS42NzEzIDcyLjk4ODQgNDUuOTc2OCA3MS40NTU2IDQ2LjUyNjcgNjkuOTIyOVpNODMuNjc2MSA0Mi41Nzk0QzgzLjY3NjEgNDYuMTcwNCA4MS41NTc1IDQ3Ljk2NTggNzkuMTg3NSA0Ny45NjU4Qzc2Ljc4MTYgNDcuOTY1OCA3NC42OTg5IDQ2LjE3MDQgNzQuNjk4OSA0Mi41Nzk0Qzc0LjY5ODkgMzguOTg4NSA3Ni43ODE2IDM3LjE5MzEgNzkuMTg3NSAzNy4xOTMxQzgxLjU1NzUgMzcuMTkzMSA4My42NzYxIDM4Ljk4ODUgODMuNjc2MSA0Mi41Nzk0Wk03MC4yMTAzIDQyLjU3OTVDNzAuMjEwMyA0Ni4xNzA0IDY4LjA5MTYgNDcuOTY1OCA2NS43MjE2IDQ3Ljk2NThDNjMuMzE1NyA0Ny45NjU4IDYxLjIzMyA0Ni4xNzA0IDYxLjIzMyA0Mi41Nzk1QzYxLjIzMyAzOC45ODg1IDYzLjMxNTcgMzcuMTkzMSA2NS43MjE2IDM3LjE5MzFDNjguMDkxNiAzNy4xOTMxIDcwLjIxMDMgMzguOTg4NSA3MC4yMTAzIDQyLjU3OTVaIiBmaWxsPSIjRkZGREY4Ii8+Cjwvc3ZnPgo="; /** * User-friendly enum for CAIP-2 network identifiers * Use these constants instead of hardcoding network IDs */ declare enum NetworkId { SOLANA_MAINNET = "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp", SOLANA_DEVNET = "solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1", SOLANA_TESTNET = "solana:4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z", ETHEREUM_MAINNET = "eip155:1", ETHEREUM_SEPOLIA = "eip155:11155111", POLYGON_MAINNET = "eip155:137", POLYGON_AMOY = "eip155:80002", BASE_MAINNET = "eip155:8453", BASE_SEPOLIA = "eip155:84532", ARBITRUM_ONE = "eip155:42161", ARBITRUM_SEPOLIA = "eip155:421614", MONAD_MAINNET = "eip155:143", MONAD_TESTNET = "eip155:10143", BITCOIN_MAINNET = "bip122:000000000019d6689c085ae165831e93", BITCOIN_TESTNET = "bip122:000000000933ea01ad0ee984209779ba", SUI_MAINNET = "sui:35834a8a", SUI_TESTNET = "sui:4c78adac", SUI_DEVNET = "sui:devnet" } type InternalNetworkCaip = "bip122:000000000019d6689c085ae165831e93" | "bip122:000000000933ea01ad0ee984209779ba" | "solana:101" | "solana:102" | "solana:103" | "solana:localnet" | "eip155:1" | "eip155:11155111" | "eip155:137" | "eip155:80002" | "eip155:8453" | "eip155:84532" | "eip155:42161" | "eip155:421614" | "eip155:143" | "eip155:10143" | "hypercore:mainnet" | "hypercore:testnet" | "sui:mainnet" | "sui:testnet" | "sui:devnet"; interface NetworkConfig { name: string; chain: string; network: string; internalCaip?: InternalNetworkCaip; chainId?: number; slip44?: string; explorer?: { name: string; transactionUrl: string; addressUrl: string; }; } declare const NETWORK_CONFIGS: Record; declare function getNetworkConfig(networkId: NetworkId): NetworkConfig | undefined; declare function getExplorerUrl(networkId: NetworkId, type: "transaction" | "address", value: string): string | undefined; declare function getSupportedNetworks(): NetworkId[]; declare function getNetworksByChain(chain: string): NetworkId[]; /** * Convert Ethereum internalCaip to NetworkId */ declare function chainIdToNetworkId(chainId: number): NetworkId | undefined; /** * Extract internalCaip from NetworkId (for EIP-155 networks) */ declare function networkIdToChainId(networkId: NetworkId): number | undefined; /** * Convert NetworkId to InternalNetworkCaip for extension communication */ declare function networkIdToInternalCaip(networkId: NetworkId): InternalNetworkCaip; /** * Convert InternalNetworkCaip back to NetworkId from extension responses */ declare function internalCaipToNetworkId(internalCaip: InternalNetworkCaip): NetworkId; declare const ANALYTICS_HEADERS: { readonly SDK_TYPE: "x-phantom-sdk-type"; readonly SDK_VERSION: "x-phantom-sdk-version"; readonly PLATFORM: "x-phantom-platform"; readonly WALLET_TYPE: "x-phantom-wallet-type"; readonly APP_ID: "x-app-id"; readonly PLATFORM_VERSION: "x-phantom-platform-version"; readonly CLIENT: "x-phantom-client"; }; type SdkPlatform = "ext-sdk"; type SdkWalletType = "app-wallet" | "user-wallet"; type SdkClient = "node" | "mcp" | string; interface BaseAnalyticsHeaders { [ANALYTICS_HEADERS.SDK_TYPE]: string; [ANALYTICS_HEADERS.SDK_VERSION]: string; [ANALYTICS_HEADERS.APP_ID]?: string; } interface ServerSdkHeaders extends BaseAnalyticsHeaders { [ANALYTICS_HEADERS.SDK_TYPE]: "server"; [ANALYTICS_HEADERS.PLATFORM]?: SdkPlatform; [ANALYTICS_HEADERS.PLATFORM_VERSION]?: string; [ANALYTICS_HEADERS.CLIENT]?: SdkClient; } interface BrowserSdkHeaders extends BaseAnalyticsHeaders { [ANALYTICS_HEADERS.SDK_TYPE]: "browser"; [ANALYTICS_HEADERS.WALLET_TYPE]?: SdkWalletType; [ANALYTICS_HEADERS.PLATFORM]?: SdkPlatform; [ANALYTICS_HEADERS.PLATFORM_VERSION]?: string; [ANALYTICS_HEADERS.CLIENT]?: SdkClient; } interface ReactNativeSdkHeaders extends BaseAnalyticsHeaders { [ANALYTICS_HEADERS.SDK_TYPE]: "react-native"; [ANALYTICS_HEADERS.WALLET_TYPE]?: SdkWalletType; [ANALYTICS_HEADERS.PLATFORM]?: SdkPlatform; [ANALYTICS_HEADERS.PLATFORM_VERSION]?: string; [ANALYTICS_HEADERS.CLIENT]?: SdkClient; } type ClientSideSdkHeaders = BrowserSdkHeaders | ReactNativeSdkHeaders; type SdkAnalyticsHeaders = ServerSdkHeaders | ClientSideSdkHeaders; /** * Constants used throughout the browser SDK */ declare const DEFAULT_AUTH_URL = "https://connect.phantom.app/login/start"; declare const DEFAULT_AUTH_API_BASE_URL = "https://auth.phantom.app"; declare const DEFAULT_WALLET_API_URL = "https://api.phantom.app/v1/wallets"; declare const DEFAULT_EMBEDDED_WALLET_TYPE = "user-wallet"; type ProviderNameKey = "google" | "apple" | "phantom" | "device" | "injected" | "deeplink"; declare const PROVIDER_NAMES: Record; declare function getProviderName(provider: ProviderNameKey | string): string; export { ANALYTICS_HEADERS, BaseAnalyticsHeaders, BrowserSdkHeaders, ClientSideSdkHeaders, DEFAULT_AUTHENTICATOR_ALGORITHM, DEFAULT_AUTH_API_BASE_URL, DEFAULT_AUTH_URL, DEFAULT_EMBEDDED_WALLET_TYPE, DEFAULT_WALLET_API_URL, InternalNetworkCaip, NETWORK_CONFIGS, NetworkConfig, NetworkId, PHANTOM_ICON, PROVIDER_NAMES, ProviderNameKey, ReactNativeSdkHeaders, SdkAnalyticsHeaders, SdkClient, SdkPlatform, SdkWalletType, ServerSdkHeaders, TOKEN_REFRESH_BUFFER_MS, chainIdToNetworkId, getExplorerUrl, getNetworkConfig, getNetworksByChain, getProviderName, getSupportedNetworks, internalCaipToNetworkId, networkIdToChainId, networkIdToInternalCaip };