import type { WaypointScope } from '@sky-mavis/tanto-connect';
import type { Chain, Prettify } from 'viem/chains';
import type { Config, CreateConfigParameters, CreateConnectorFn } from 'wagmi';
import type { CoinbaseWalletParameters, WalletConnectParameters } from 'wagmi/connectors';
export declare const RONIN_WALLET_METADATA: {
    readonly projectId: "d2ef97836db7eb390bcb2c1e9847ecdc";
    readonly metadata: {
        readonly name: "Ronin Wallet";
        readonly description: "Your passport into a digital nation";
        readonly icons: readonly ["https://cdn.skymavis.com/wallet/web-app/logo/ronin.png"];
        readonly url: "https://wallet.roninchain.com";
    };
};
export interface KeylessWalletConfig {
    clientId: string;
    chainId?: number;
    waypointOrigin?: string;
    scopes?: WaypointScope[];
    popupCloseDelay?: number;
}
export interface AppMetadata {
    appName?: string;
    appIcon?: string;
    appDescription?: string;
    appUrl?: string;
}
type ConditionalConfig<T> = ({
    enable: false;
} & Partial<T>) | ({
    enable?: true;
} & T);
export type DefaultConfig = Prettify<Partial<Omit<CreateConfigParameters, 'client' | 'connectors'>> & {
    appMetadata?: AppMetadata;
    walletConnectConfig?: ConditionalConfig<Partial<Omit<WalletConnectParameters, 'showQrModal'>>>;
    keylessWalletConfig?: ConditionalConfig<KeylessWalletConfig>;
    coinbaseWalletConfig?: ConditionalConfig<Partial<CoinbaseWalletParameters>>;
}>;
export declare function createTransports(chains: readonly [Chain, ...Chain[]]): {
    [k: string]: import("viem").HttpTransport<undefined, false>;
};
export declare function createConnectors(config: DefaultConfig): CreateConnectorFn[];
export declare function getDefaultConfig(config?: DefaultConfig): Config;
export {};
