import type { Algodv2, Indexer } from 'algosdk'; import type { WalletConnectConfig } from '../adapters/types.js'; /** * Create the provider store for managing Algorand network clients. * Uses Svelte 5 runes for reactive state management. * @param scopeId - Scope identifier for identification purposes. Ephemeral store, no storage keys. */ export declare function createProviderStore(scopeId?: string): { readonly algodClient: Algodv2 | null; readonly indexerClient: Indexer | null; readonly wcConfig: WalletConnectConfig | null; readonly genesisHash: string; readonly genesisId: string; readonly chainId: string; readonly initialized: boolean; /** * Initialize the provider store with clients and fetch network info. */ initialize(algod: Algodv2, indexer?: Indexer, walletConnectConfig?: WalletConnectConfig): Promise; /** * Update the WalletConnect configuration. */ setWalletConnectConfig(config: WalletConnectConfig): void; /** * Check if required clients are available. */ requireClients(): { algodClient: Algodv2; indexerClient: Indexer | null; }; /** * Reset the provider store. */ reset(): void; }; /** * Singleton provider store instance. */ export declare const providerStore: { readonly algodClient: Algodv2 | null; readonly indexerClient: Indexer | null; readonly wcConfig: WalletConnectConfig | null; readonly genesisHash: string; readonly genesisId: string; readonly chainId: string; readonly initialized: boolean; /** * Initialize the provider store with clients and fetch network info. */ initialize(algod: Algodv2, indexer?: Indexer, walletConnectConfig?: WalletConnectConfig): Promise; /** * Update the WalletConnect configuration. */ setWalletConnectConfig(config: WalletConnectConfig): void; /** * Check if required clients are available. */ requireClients(): { algodClient: Algodv2; indexerClient: Indexer | null; }; /** * Reset the provider store. */ reset(): void; };