import type { WalletServerRpcSchemaType } from "@alchemy/wallet-api-types/rpc"; import type { InnerWalletApiClient } from "../../types.ts"; import type { Address } from "viem"; import type { SmartWalletSigner } from "../index.js"; type RpcSchema = Extract; export type ListAccountsParams = Omit & { signerAddress?: Address; }; export type ListAccountsResult = RpcSchema["ReturnType"]; /** * Lists all smart accounts for a given signer using the wallet API client. * * @param {InnerWalletApiClient} client - The wallet API client to use for the request * @param {SmartAccountSigner} signer - The signer for which to list accounts * @param {ListAccountsParams} params - Parameters for listing accounts * @param {Address} [params.signerAddress] - The address of the signer to list accounts for * @param {number} [params.limit] - Optional maximum number of accounts to return (default: 100, max: 100) * @param {string} [params.after] - Optional pagination cursor for fetching subsequent pages * @returns {Promise} A Promise that resolves to the list of accounts and pagination metadata * * @example * ```ts * // Fetch the first page of accounts * const firstPage = await client.listAccounts({ * signerAddress: "0x123...", * limit: 10 * }); * * // If an 'after' cursor exists, use it to fetch the next page * const nextPage = await client.listAccounts({ * signerAddress: "0x123...", * limit: 10, * after: firstPage.meta.after * }); * ``` */ export declare function listAccounts(client: InnerWalletApiClient, signer: SmartWalletSigner, params: ListAccountsParams): Promise; export {};