import { type CustomPaymasterHandler } from "@abstract-foundation/agw-client";
import type { CreateConnectorFn } from "@wagmi/core";
import { type EIP1193EventMap, type EIP1193RequestFn, type EIP1474Methods } from "viem";
import type { WalletDetailsParams } from "./types/rainbowkit.js";
interface AbstractWalletConnectorOptions {
    /** RainbowKit connector details */
    rkDetails: WalletDetailsParams;
    /** Optional custom paymaster handler */
    customPaymasterHandler: CustomPaymasterHandler;
}
/**
 * Create a wagmi connector for the Abstract Global Wallet.
 *
 * Adapted from wagmi injected connector as a reference implementation:
 * https://github.com/wevm/wagmi/blob/main/packages/core/src/connectors/injected.ts#L94
 *
 * @example
 * import { createConfig, http } from "wagmi";
 * import { abstract } from "wagmi/chains";
 * import { abstractWalletConnector } from "@abstract-foundation/agw-react/connectors"
 *
 * export const wagmiConfig = createConfig({
 *   chains: [abstract],
 *   transports: {
 *     [abstract.id]: http(),
 *   },
 *   connectors: [abstractWalletConnector()],
 *   ssr: true,
 * });
 */
declare function abstractWalletConnector(options?: Partial<AbstractWalletConnectorOptions>): CreateConnectorFn<{
    on: <event extends keyof EIP1193EventMap>(event: event, listener: EIP1193EventMap[event]) => void;
    removeListener: <event extends keyof EIP1193EventMap>(event: event, listener: EIP1193EventMap[event]) => void;
    request: EIP1193RequestFn<EIP1474Methods>;
}, Record<string, unknown>, Record<string, unknown>>;
export { abstractWalletConnector };
//# sourceMappingURL=abstractWalletConnector.d.ts.map