import { type Wallet } from '@wallet-standard/core';
import type { SuiWalletAdapter, WalletConfig, WalletWithStatus } from '../types.js';
export declare const isDiscoveryDebugEnabled: () => boolean;
export declare const uniqueAdaptersByName: (adapters: (Wallet | SuiWalletAdapter)[]) => SuiWalletAdapter[];
export declare const detectWalletAdapters: () => SuiWalletAdapter[];
export declare const getAvailableWallets: (defaultWallets: readonly {
    name: string;
    iconUrl?: string;
    [key: string]: any;
}[], detectedAdapters: SuiWalletAdapter[], config?: WalletConfig) => WalletWithStatus[];
export type DiscoverySubscriber = (adapters: SuiWalletAdapter[], wallets: WalletWithStatus[]) => void;
export declare const subscribeWalletDiscovery: (callback: DiscoverySubscriber) => (() => void);
export declare const notifyDiscoverySubscribers: (adapters: SuiWalletAdapter[], wallets: WalletWithStatus[]) => void;
export declare const setModuleWalletDiscovery: (adapters: SuiWalletAdapter[], wallets: WalletWithStatus[], targetAdapters: SuiWalletAdapter[], targetWallets: WalletWithStatus[]) => void;
export declare const refreshDiscoverySnapshot: (attemptLabel: number | string, walletConfig: WalletConfig) => {
    adapters: SuiWalletAdapter[];
    wallets: WalletWithStatus[];
};
export declare const getDiscoveryAttempt: () => number;
export declare const incrementDiscoveryAttempt: () => number;
