import { type CustomPaymasterHandler } from "@abstract-foundation/agw-client";
export interface UseAbstractClientOptions {
customPaymasterHandler: CustomPaymasterHandler;
}
/**
* React hook that provides access to the Abstract Global Wallet client
* used by the `AbstractWalletProvider` component.
*
* Use this client to perform operations such as sending transactions, deploying contracts,
* and interacting with smart contracts from the connected Abstract Global Wallet.
*
* @param options - Optional client configuration
* @param options.customPaymasterHandler - Optional paymaster handler for custom gas sponsorship logic
* @returns Query result containing the Abstract client when successfully created
*
* @example
* ```tsx
* import { useAbstractClient } from "@abstract-foundation/agw-react";
*
* function SendTransactionComponent() {
* const { data: client, isLoading } = useAbstractClient();
*
* const handleSendTransaction = async () => {
* if (!client) return;
*
* const hash = await client.sendTransaction({
* to: '0x8e729E23CDc8bC21c37a73DA4bA9ebdddA3C8B6d',
* data: '0x69',
* });
* console.log('Transaction sent:', hash);
* };
*
* return (
*
* );
* }
* ```
*
* Read more: [Abstract docs: useAbstractClient](https://docs.abs.xyz/abstract-global-wallet/agw-react/hooks/useAbstractClient)
*
* @see {@link createAbstractClient} - The underlying client creation function
*/
export declare const useAbstractClient: ({ customPaymasterHandler, }?: Partial) => import("@tanstack/react-query").UseQueryResult;
//# sourceMappingURL=useAbstractClient.d.ts.map