@coinbase/agentkit
Version:
Coinbase AgentKit core primitives
25 lines (24 loc) • 1.33 kB
TypeScript
import { CdpClient, type SpendPermission } from "@coinbase/cdp-sdk";
import type { Address } from "viem";
/**
* Shared utility functions for spend permission operations.
*/
/**
* Lists and formats spend permissions for a given smart account and spender.
*
* @param cdpClient - The CDP client to use for API calls
* @param smartAccountAddress - The smart account address to check permissions for
* @param spenderAddress - The spender address to filter permissions by
* @returns A formatted string containing the spend permissions or an error message
*/
export declare function listSpendPermissionsForSpender(cdpClient: CdpClient, smartAccountAddress: Address, spenderAddress: Address): Promise<string>;
/**
* Finds and retrieves the latest valid spend permission for a given spender from a smart account.
*
* @param cdpClient - The CDP client to use for API calls
* @param smartAccountAddress - The smart account address to check permissions for
* @param spenderAddress - The spender address to find permissions for
* @returns The latest spend permission or throws an error if none found
* @throws Error if no permissions found or permission is invalid
*/
export declare function findLatestSpendPermission(cdpClient: CdpClient, smartAccountAddress: Address, spenderAddress: Address): Promise<SpendPermission>;