UNPKG

@abstraxn/relayer

Version:

Abstraxn Relayer package for handling gas-less transactions, facilitating smart contract interactions, and relaying user transactions efficiently.

49 lines (48 loc) 1.78 kB
import { RelayerConfig, BuildRelayerTxResponse, BuildRelayerTxParams, SendRelayerTxParams, RelayerResponse, RelayerTxStatus, SendRelayerTxWithWebSocketParams, RelayerWebSocketEvents } from "./utils/Types"; import { IRelayer } from "./interfaces/IRelayer"; export declare class Relayer implements IRelayer { readonly relayerConfig: RelayerConfig; private relayerUrl; private chainId; private signer; private provider; private webSocketManager; constructor(relayerConfig: RelayerConfig); private getRelayerUrl; buildRelayerTx(params: BuildRelayerTxParams): Promise<BuildRelayerTxResponse>; buildRelayerTxEIP712(params: BuildRelayerTxParams): Promise<BuildRelayerTxResponse>; sendRelayerTx(txParams: SendRelayerTxParams): Promise<RelayerResponse>; getRelayerTxStatus(transactionId: string): Promise<RelayerTxStatus>; /** * Send relayer transaction with real-time updates via WebSocket */ sendRelayerTxWithRealTimeUpdates(params: SendRelayerTxWithWebSocketParams): Promise<RelayerResponse>; /** * Subscribe to real-time transaction updates */ subscribeToTransaction(transactionId: string, events?: RelayerWebSocketEvents): Promise<void>; /** * Unsubscribe from transaction updates */ unsubscribeFromTransaction(transactionId: string): void; /** * Connect to WebSocket server */ connectWebSocket(): void; /** * Disconnect from WebSocket server */ disconnectWebSocket(): void; /** * Check if WebSocket is connected */ isWebSocketConnected(): boolean; /** * Get WebSocket connection information */ getWebSocketInfo(): { connected: boolean; subscribedTransactions: number; url: string; }; }