Function getPermitQuote

  • Gets a quote for a permit-enabled transaction from the MEE service. This method is used when the payment token supports ERC20Permit, allowing for gasless approvals and more efficient transactions.

    Parameters

    • client: {
          account: MultichainSmartAccount;
          extend: (<const client, const extendedHttpClient>(fn) => never);
          info: GetInfoPayload;
          pollingInterval: number;
          request: (<T>(params) => Promise<T>);
      }

      The base MEE client instance

      • account: MultichainSmartAccount
      • extend: (<const client, const extendedHttpClient>(fn) => never)

        Extends the client with additional functionality

        Returns

        Extended client with both base and new functionality

          • <const client, const extendedHttpClient>(fn): never
          • Type Parameters

            • const client extends {
                  extend?: undefined;
                  request?: undefined;
              }
            • const extendedHttpClient extends HttpClient

            Parameters

            Returns never

      • info: GetInfoPayload
      • pollingInterval: number
      • request: (<T>(params) => Promise<T>)

        Makes HTTP requests to the Http node

          • <T>(params): Promise<T>
          • Type Parameters

            • T

            Parameters

            • params: RequestParams

            Returns Promise<T>

    • parameters: GetPermitQuoteParams

      Parameters for the permit quote request

    Returns Promise<GetPermitQuotePayload>

    Promise resolving to quote payload with permit-specific trigger information

    Example

    const quote = await getPermitQuote(meeClient, {
    instructions: [{
    to: "0x742d35Cc6634C0532925a3b844Bc454e4438f44e",
    data: "0x...",
    value: "0"
    }],
    trigger: {
    paymentToken: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48", // USDC
    amount: "1000000", // 1 USDC (6 decimals)
    owner: "0x...", // Token owner address
    spender: "0x..." // Address approved to spend tokens
    }
    });

    Throws

    Will throw an error if:

    • The token does not support ERC20Permit
    • The trigger parameters are invalid
    • The quote request fails