@abstraxn/relayer
Version:
Abstraxn Relayer package for handling gas-less transactions, facilitating smart contract interactions, and relaying user transactions efficiently.
20 lines (19 loc) • 1.37 kB
TypeScript
import { BuildRelayerTxParams, BuildRelayerTxResponse, RelayerResponse, RelayerTxStatus, SendRelayerTxParams, SendRelayerTxWithWebSocketParams, RelayerWebSocketEvents, TransactionInfo, SendSafeRelayerTxParams } from "../utils/Types.js";
export interface IRelayer {
buildRelayerTx(_params: BuildRelayerTxParams): Promise<BuildRelayerTxResponse>;
buildRelayerTxEIP712(_params: BuildRelayerTxParams): Promise<BuildRelayerTxResponse>;
sendRelayerTx(_params: SendRelayerTxParams): Promise<RelayerResponse>;
sendSafeRelayerTx(_params: SendSafeRelayerTxParams): Promise<RelayerResponse>;
sendRelayerTxWithRealTimeUpdates(_params: SendRelayerTxWithWebSocketParams): Promise<RelayerResponse>;
getRelayerTxStatus(_transactionId: string): Promise<RelayerTxStatus>;
extractTransactionInfo(_txStatus: RelayerTxStatus): TransactionInfo;
isTransactionConfirmed(_txStatus: RelayerTxStatus): boolean;
isTransactionPending(_txStatus: RelayerTxStatus): boolean;
isTransactionFailed(_txStatus: RelayerTxStatus): boolean;
getTransactionHash(_txStatus: RelayerTxStatus): string | null;
subscribeToTransaction(_transactionId: string, _events?: RelayerWebSocketEvents): Promise<void>;
unsubscribeFromTransaction(_transactionId: string): void;
connectWebSocket(): void;
disconnectWebSocket(): void;
isWebSocketConnected(): boolean;
}