Overview

  • static init(config: MetaRouterConfig): MetaRouterClient
  • quote(params: QuotesParams): Promise<QuotesResponse>
  • getTokenRoutes(params: TokenRoutesParams): Promise<TokenRoutesResponse>
  • getSupportedChains(params: SupportedChainsParams): Promise<SupportedChainsResponse>
  • getOrder(params: OrderParams): Promise<OrderResponse>
  • getOrders(params: OrdersParams): Promise<OrdersResponse>

React Hooks

The SDK provides React hooks for easy integration:

  • useQuote
  • useTokenRoutes
  • useSupportedChains
  • useOrderPolling
  • useWalletOrders

Example useQuotes

Get a quote for a token swap

import { useQuote } from '@metalayer/sdk';

const { data } = useQuote({
    chainInId: number
    chainOutId: number
    tokenInAddress: string
    tokenOutAddress: string
    amount: bigint
    senderAddress?:string
});

Use this to query USDC quotes from Ethereum Sepolia to Manta Sepolia

import { useQuote } from '@metalayer/sdk';

export const YourApp = () => {
    const {
        data: quotesData,
        quote: bestQuote,
        quotes,
        isLoading: isQuotesLoading,
        refreshIn,
        } = useQuote({
        chainInId: 11155111, // Ethereum Sepolia
        chainOutId: 3441006, // Manta Sepolia
        tokenInAddress: '0x763f6173B36b28d29e8FF3400490Fd1990b1d1C9', // USDC
        tokenOutAddress: '0x0652aEc2DeE0Fee9D05E614c95Ce8A01a7336cD8', // USDC
        amount: BigInt('1'), // 1 USDC
        senderAddress: '0x0000000000000000000000000000000000000000',
    });
}

Widget SDK

We will soon release a metalayer widget to easily execute swaps.