Typescript SDK
Исчерпывающее руководство по использованию MetaRouter TypeScript SDK для кросс-чейн соединения токенов.
MetaRouter TypeScript SDK
MetaRouter TypeScript SDK предоставляет мощный и гибкий интерфейс для кросс-чейн взаимодействия и обмена токенами. Он использует Metalayer компании Caldera и MetaRouter API для обеспечения беспрепятственного взаимодействия между несколькими блокчейн-сетями.
Характеристики
Кросс-чейн свапы и мосты: Обмен токенами между различными сетями блокчейн без особых усилий.
Котировки цен в режиме реального времени: Получайте точные и актуальные котировки цен и оценки газа.
Потоковая передача данных через WebSocket: Передача обновлений цен и статусов транзакций в режиме реального времени.
Безопасность типов: Полная поддержка TypeScript обеспечивает безопасность типов и улучшает работу разработчиков.
Поддержка промежуточного ПО: Настройте обработку запросов и ответов с помощью промежуточного ПО.
Поддержка нескольких сетей: Легко работайте в различных сетях блокчейна.
Установка
Чтобы установить SDK, используйте предпочитаемый менеджер пакетов:
pnpm add metarouter-sdk
# or
npm install metarouter-sdk
# or
yarn add metarouter-sdk
Быстрый старт
Вот краткое руководство, которое поможет вам начать работу с MetaRouter SDK:
import { MetaRouter } from 'metarouter-sdk';
// Initialize the SDK
const router = MetaRouter.init({
apiKey: 'your-api-key',
environment: 'live',
defaultOptions: {
slippageTolerance: 0.005, // 0.5%
deadline: 20 * 60, // 20 minutes
gasSpeed: 'standard',
},
});
// Get a quote for a token swap
const quote = await router.quote({
source: {
chain: 1, // Ethereum
token: '0x...',
amount: '1000000000000000000', // 1 ETH
},
destination: {
chain: 56, // BSC
token: '0x...',
},
});
// Execute a swap
const result = await router.swap({
quoteId: quote.id,
userAddress: '0x...',
});
// Stream price updates
const subscription = router.streams.prices([
{
baseToken: '0x...',
quoteToken: '0x...',
chain: 1,
},
]).subscribe({
next: (update) => console.log('Price update:', update),
error: (error) => console.error('Stream error:', error),
complete: () => console.log('Stream completed'),
});
Справочник по API
MetaRouter
Основной класс для взаимодействия с SDK. Он предоставляет методы для получения котировок, выполнения свопов и потоковой передачи данных.
Конфигурация
interface MetaRouterConfig {
apiKey: string;
apiUrl?: string;
environment: 'live' | 'test';
defaultOptions?: {
slippageTolerance: number;
deadline: number;
gasSpeed: 'slow' | 'standard' | 'fast' | 'instant';
referralCode?: string;
};
providers?: {
[chainId: number]: Provider;
};
}
Методы
static init(config: Partial<MetaRouterConfig>): MetaRouter
swap(params: ExecuteParams): Promise<ExecutionResult>
bridge(params: ExecuteParams): Promise<ExecutionResult>
quote(params: QuoteParams): Promise<RouteQuote>
Клиенты
SDK предоставляет специализированные клиенты для различных функций:
RoutingClient: Занимается анализом маршрута и оценкой расхода газа.
ExecutionClient: Управляет выполнением транзакций и проверкой одобрения.
StreamingClient: Предоставляет потоки данных в реальном времени через WebSocket и подписки провайдеров.
Last updated