import { Provider, TransactionRequest, TransactionResponse } from '@ethersproject/abstract-provider'; import { Signer, TypedDataDomain, TypedDataField, TypedDataSigner } from '@ethersproject/abstract-signer'; import { Bytes } from '@ethersproject/bytes'; import { Deferrable } from '@ethersproject/properties'; import { Relayer } from '../relayer'; import { Speed } from '../models/transactions'; import { EthersVersion, RelayerParams } from '../models/relayer'; type GasOptions = Pick; export type DefenderTransactionRequestV5 = TransactionRequest & Partial<{ speed: Speed; validUntil: Date | string; isPrivate?: boolean; }>; export type DefenderRelaySignerOptionsV5 = Partial; export declare class DefenderRelaySignerV5 extends Signer implements TypedDataSigner { readonly relayerCredentials: RelayerParams | Relayer; readonly provider: Provider; readonly options: DefenderRelaySignerOptionsV5; private readonly relayer; private address?; constructor(relayerCredentials: RelayerParams | Relayer, provider: Provider, options?: DefenderRelaySignerOptionsV5); getAddress(): Promise; signMessage(message: string | Bytes): Promise; signTransaction(transaction: Deferrable): Promise; connect(provider: Provider): Signer; sendTransaction(transaction: Deferrable): Promise; populateTransaction(transaction: Deferrable): Promise; checkTransaction(transaction: Deferrable): Deferrable; /** * Signs the typed data value with types data structure for domain using the EIP-712 specification. * https://eips.ethereum.org/EIPS/eip-712 * * @param domain EIP712Domain containing name, version, chainId, verifyingContract and salt. All optional * @param types set of all types encompassed by struct * @param value typed data to sign matching provided types * @returns typed data signature */ _signTypedData(domain: TypedDataDomain, types: Record>, value: Record): Promise; } export {}; //# sourceMappingURL=signer-v5.d.ts.map