import type { EIP1193Provider } from './provider'; /** * EIP-6963 event name wallets use to announce providers to dapps. */ export declare const EIP6963_ANNOUNCE_PROVIDER_EVENT = "eip6963:announceProvider"; /** * EIP-6963 event name dapps dispatch to request wallet re-announcements. */ export declare const EIP6963_REQUEST_PROVIDER_EVENT = "eip6963:requestProvider"; /** * Time to wait after requesting EIP-6963 providers before deciding whether a * native MetaMask provider is present. */ export declare const EIP6963_DETECTION_TIMEOUT_MS = 300; /** * Display name used for the MMConnect-managed MetaMask EIP-6963 provider. */ export declare const CONNECT_EVM_EIP6963_NAME = "MetaMask"; /** * Reverse-DNS identifier used for the MMConnect-managed MetaMask EIP-6963 provider. */ export declare const CONNECT_EVM_EIP6963_RDNS = "io.metamask.mmc"; /** * Native MetaMask EIP-6963 identifiers that should suppress SDK announcement. */ export declare const METAMASK_EIP6963_RDNS: readonly ["io.metamask", "io.metamask.mobile"]; /** * Icon URI used for the MMConnect-managed MetaMask EIP-6963 provider. */ export declare const CONNECT_EVM_EIP6963_ICON: string; /** * EIP-6963 provider metadata announced to dapps. */ export type EIP6963ProviderInfo = { /** Globally unique identifier for this provider instance. */ uuid: string; /** Human-readable wallet name shown in wallet pickers. */ name: string; /** Wallet icon URI. EIP-6963 requires a URI value. */ icon: string; /** Reverse-DNS identifier for the wallet/provider. */ rdns: string; }; /** * EIP-6963 announcement payload containing wallet metadata and provider. */ export type EIP6963ProviderDetail = { /** Metadata wallet pickers use for display and deduplication. */ info: EIP6963ProviderInfo; /** EIP-1193 provider exposed by this SDK instance. */ provider: EIP1193Provider; }; /** * Announces an MMConnect-managed EIP-1193 provider through EIP-6963. * * Announcement is best-effort and browser-only. Native MetaMask providers with * `io.metamask` or `io.metamask.mobile` suppress this SDK provider to avoid * duplicate MetaMask entries in wallet pickers. */ export declare class EIP6963ProviderAnnouncer { #private; /** * Creates an EIP-6963 announcer for one SDK provider instance. * * @param provider - EIP-1193 provider to announce. */ constructor(provider: EIP1193Provider); /** * Announces the SDK provider unless native MetaMask has already announced. * * Repeated calls are idempotent: once announced, this re-dispatches the same * provider detail and does not install duplicate request listeners. The first * call may take up to `EIP6963_DETECTION_TIMEOUT_MS` while native providers * are requested. * * @returns A promise that resolves once detection and any announcement finish. */ announce(): Promise; } //# sourceMappingURL=eip6963.d.ts.map