import BN from 'bn.js'; import Web3 from 'web3'; import { Address, GSNContractsDeployment, IntString, RelayRequest } from '@opengsn/common'; export declare class Web3MethodsBuilder { private readonly IPenalizer; private readonly IRelayHubContract; private readonly IRelayRegistrar; private readonly IStakeManager; constructor(web3: Web3, deployment?: GSNContractsDeployment); getRegisterRelayMethod(relayHub: Address, url: string): Promise; getAuthorizeHubByManagerMethod(relayHub: Address): Promise; getAddRelayWorkersMethod(workers: Address[]): Promise; getSetRelayManagerMethod(owner: Address): Promise; getWithdrawMethod(destination: Address, amount: BN): Promise; withdrawHubBalanceEstimateGas(destination: Address, amount: BN, managerAddress: Address, gasPrice: IntString): Promise<{ gasCost: BN; gasLimit: number; method: any; }>; getRelayCallMethod(domainSeparatorName: string, maxAcceptanceBudget: number | string, relayRequest: RelayRequest, signature: string, approvalData: string): any; getPenalizerCommitMethod(commitHash: string): any; getPenalizeRepeatedNonceMethod(...args: any[]): any; getPenalizeIllegalTransactionMethod(...args: any[]): any; }