@abstract-foundation/agw-react
Version:
Abstract Global Wallet React Components
37 lines • 1.65 kB
TypeScript
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