import { IRelayer, RelayerGetResponse, RelayerGroupResponse, RelayerGroupStatus, RelayerParams, RelayerStatus } from './models/relayer'; import { JsonRpcResponse, SignMessagePayload, SignTypedDataPayload, SignedMessagePayload } from './models/rpc'; import { ListTransactionsRequest, PaginatedTransactionResponse, RelayerTransaction, RelayerTransactionPayload, TransactionDeleteResponse } from './models/transactions'; import { DefenderRelayProvider, DefenderRelayProviderOptions, DefenderRelaySigner, DefenderRelaySignerOptions } from './ethers'; import { JsonRpcProvider } from 'ethers'; import { DefenderRelayProviderV5 } from './ethers/provider-v5'; import { DefenderRelaySignerOptionsV5, DefenderRelaySignerV5 } from './ethers/signer-v5'; import { Provider } from '@ethersproject/abstract-provider'; type ProviderType = T['ethersVersion'] extends 'v6' ? DefenderRelayProvider : DefenderRelayProviderV5; type SignerType = T['ethersVersion'] extends 'v6' ? DefenderRelaySigner : DefenderRelaySignerV5; export declare class Relayer implements IRelayer { private relayer; private credentials; private isEthersV5Provider; private isEthersV5ProviderOptions; constructor(credentials: RelayerParams); getRelayer(): Promise; getRelayerStatus(): Promise; getProvider(options?: T): ProviderType; getSigner(provider: Provider | JsonRpcProvider, options: T): Promise>; sign(payload: SignMessagePayload): Promise; signTypedData(payload: SignTypedDataPayload): Promise; sendTransaction(payload: RelayerTransactionPayload): Promise; replaceTransactionById(id: string, payload: RelayerTransactionPayload): Promise; replaceTransactionByNonce(nonce: number, payload: RelayerTransactionPayload): Promise; cancelTransactionById(id: string): Promise; getTransaction(id: string): Promise; getTransactionByNonce(nonce: number): Promise; listTransactions(criteria?: ListTransactionsRequest): Promise; call({ method, params }: { method: string; params: string[]; }): Promise; } export {}; //# sourceMappingURL=relayer.d.ts.map