@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
TypeScript
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;
};
}