sdk-monorepo/@tornado/sdk-core/src/deth/factories/RelayerRegistry__factory.ts

745 lines
35 KiB
TypeScript
Raw Normal View History

/* Autogenerated file. Do not edit manually. */
/* tslint:disable */
/* eslint-disable */
import { Signer, utils, Contract, ContractFactory, Overrides } from 'ethers'
import type { Provider, TransactionRequest } from '@ethersproject/providers'
import type { PromiseOrValue } from '../common'
import type { RelayerRegistry, RelayerRegistryInterface } from '../RelayerRegistry'
const _abi = [
{
inputs: [
{
internalType: 'address',
name: '_torn',
type: 'address'
},
{
internalType: 'address',
name: '_governance',
type: 'address'
},
{
internalType: 'address',
name: '_ens',
type: 'address'
},
{
internalType: 'address',
name: '_staking',
type: 'address'
},
{
internalType: 'address',
name: '_feeManager',
type: 'address'
}
],
stateMutability: 'nonpayable',
type: 'constructor'
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: 'uint256',
name: 'minStakeAmount',
type: 'uint256'
}
],
name: 'MinimumStakeAmount',
type: 'event'
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: 'address',
name: 'relayer',
type: 'address'
}
],
name: 'RelayerBalanceNullified',
type: 'event'
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: 'bytes32',
name: 'relayer',
type: 'bytes32'
},
{
indexed: false,
internalType: 'string',
name: 'ensName',
type: 'string'
},
{
indexed: false,
internalType: 'address',
name: 'relayerAddress',
type: 'address'
},
{
indexed: false,
internalType: 'uint256',
name: 'stakedAmount',
type: 'uint256'
}
],
name: 'RelayerRegistered',
type: 'event'
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: 'address',
name: 'tornadoRouter',
type: 'address'
}
],
name: 'RouterRegistered',
type: 'event'
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: 'address',
name: 'relayer',
type: 'address'
},
{
indexed: false,
internalType: 'uint256',
name: 'amountStakeAdded',
type: 'uint256'
}
],
name: 'StakeAddedToRelayer',
type: 'event'
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: 'address',
name: 'relayer',
type: 'address'
},
{
indexed: false,
internalType: 'uint256',
name: 'amountBurned',
type: 'uint256'
}
],
name: 'StakeBurned',
type: 'event'
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: 'address',
name: 'relayer',
type: 'address'
},
{
indexed: false,
internalType: 'address',
name: 'worker',
type: 'address'
}
],
name: 'WorkerRegistered',
type: 'event'
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: 'address',
name: 'relayer',
type: 'address'
},
{
indexed: false,
internalType: 'address',
name: 'worker',
type: 'address'
}
],
name: 'WorkerUnregistered',
type: 'event'
},
{
inputs: [
{
internalType: 'bytes32[]',
name: 'domains',
type: 'bytes32[]'
}
],
name: 'bulkResolve',
outputs: [
{
internalType: 'address[]',
name: 'result',
type: 'address[]'
}
],
stateMutability: 'view',
type: 'function'
},
{
inputs: [
{
internalType: 'address',
name: 'sender',
type: 'address'
},
{
internalType: 'address',
name: 'relayer',
type: 'address'
},
{
internalType: 'contract ITornadoInstance',
name: 'pool',
type: 'address'
}
],
name: 'burn',
outputs: [],
stateMutability: 'nonpayable',
type: 'function'
},
{
inputs: [],
name: 'ens',
outputs: [
{
internalType: 'contract IENS',
name: '',
type: 'address'
}
],
stateMutability: 'view',
type: 'function'
},
{
inputs: [],
name: 'feeManager',
outputs: [
{
internalType: 'contract IFeeManager',
name: '',
type: 'address'
}
],
stateMutability: 'view',
type: 'function'
},
{
inputs: [
{
internalType: 'address',
name: 'relayer',
type: 'address'
}
],
name: 'getRelayerBalance',
outputs: [
{
internalType: 'uint256',
name: '',
type: 'uint256'
}
],
stateMutability: 'view',
type: 'function'
},
{
inputs: [
{
internalType: 'address',
name: 'relayer',
type: 'address'
}
],
name: 'getRelayerEnsHash',
outputs: [
{
internalType: 'bytes32',
name: '',
type: 'bytes32'
}
],
stateMutability: 'view',
type: 'function'
},
{
inputs: [],
name: 'governance',
outputs: [
{
internalType: 'address',
name: '',
type: 'address'
}
],
stateMutability: 'view',
type: 'function'
},
{
inputs: [
{
internalType: 'bytes32',
name: '_tornadoRouter',
type: 'bytes32'
}
],
name: 'initialize',
outputs: [],
stateMutability: 'nonpayable',
type: 'function'
},
{
inputs: [
{
internalType: 'address',
name: 'toResolve',
type: 'address'
}
],
name: 'isRelayer',
outputs: [
{
internalType: 'bool',
name: '',
type: 'bool'
}
],
stateMutability: 'view',
type: 'function'
},
{
inputs: [
{
internalType: 'address',
name: 'relayer',
type: 'address'
},
{
internalType: 'address',
name: 'toResolve',
type: 'address'
}
],
name: 'isRelayerRegistered',
outputs: [
{
internalType: 'bool',
name: '',
type: 'bool'
}
],
stateMutability: 'view',
type: 'function'
},
{
inputs: [],
name: 'minStakeAmount',
outputs: [
{
internalType: 'uint256',
name: '',
type: 'uint256'
}
],
stateMutability: 'view',
type: 'function'
},
{
inputs: [
{
internalType: 'address',
name: 'relayer',
type: 'address'
}
],
name: 'nullifyBalance',
outputs: [],
stateMutability: 'nonpayable',
type: 'function'
},
{
inputs: [
{
internalType: 'string',
name: 'ensName',
type: 'string'
},
{
internalType: 'uint256',
name: 'stake',
type: 'uint256'
},
{
internalType: 'address[]',
name: 'workersToRegister',
type: 'address[]'
}
],
name: 'register',
outputs: [],
stateMutability: 'nonpayable',
type: 'function'
},
{
inputs: [
{
internalType: 'string',
name: 'ensName',
type: 'string'
},
{
internalType: 'uint256',
name: 'stake',
type: 'uint256'
},
{
internalType: 'address[]',
name: 'workersToRegister',
type: 'address[]'
},
{
internalType: 'address',
name: 'relayer',
type: 'address'
},
{
internalType: 'uint256',
name: 'deadline',
type: 'uint256'
},
{
internalType: 'uint8',
name: 'v',
type: 'uint8'
},
{
internalType: 'bytes32',
name: 'r',
type: 'bytes32'
},
{
internalType: 'bytes32',
name: 's',
type: 'bytes32'
}
],
name: 'registerPermit',
outputs: [],
stateMutability: 'nonpayable',
type: 'function'
},
{
inputs: [
{
internalType: 'address',
name: 'relayer',
type: 'address'
},
{
internalType: 'address',
name: 'worker',
type: 'address'
}
],
name: 'registerWorker',
outputs: [],
stateMutability: 'nonpayable',
type: 'function'
},
{
inputs: [
{
internalType: 'address',
name: '',
type: 'address'
}
],
name: 'relayers',
outputs: [
{
internalType: 'uint256',
name: 'balance',
type: 'uint256'
},
{
internalType: 'bytes32',
name: 'ensHash',
type: 'bytes32'
}
],
stateMutability: 'view',
type: 'function'
},
{
inputs: [
{
internalType: 'bytes32',
name: 'node',
type: 'bytes32'
}
],
name: 'resolve',
outputs: [
{
internalType: 'address',
name: '',
type: 'address'
}
],
stateMutability: 'view',
type: 'function'
},
{
inputs: [
{
internalType: 'uint256',
name: 'minAmount',
type: 'uint256'
}
],
name: 'setMinStakeAmount',
outputs: [],
stateMutability: 'nonpayable',
type: 'function'
},
{
inputs: [
{
internalType: 'address',
name: 'tornadoRouterAddress',
type: 'address'
}
],
name: 'setTornadoRouter',
outputs: [],
stateMutability: 'nonpayable',
type: 'function'
},
{
inputs: [
{
internalType: 'address',
name: 'relayer',
type: 'address'
},
{
internalType: 'uint256',
name: 'stake',
type: 'uint256'
}
],
name: 'stakeToRelayer',
outputs: [],
stateMutability: 'nonpayable',
type: 'function'
},
{
inputs: [
{
internalType: 'address',
name: 'relayer',
type: 'address'
},
{
internalType: 'uint256',
name: 'stake',
type: 'uint256'
},
{
internalType: 'address',
name: 'staker',
type: 'address'
},
{
internalType: 'uint256',
name: 'deadline',
type: 'uint256'
},
{
internalType: 'uint8',
name: 'v',
type: 'uint8'
},
{
internalType: 'bytes32',
name: 'r',
type: 'bytes32'
},
{
internalType: 'bytes32',
name: 's',
type: 'bytes32'
}
],
name: 'stakeToRelayerPermit',
outputs: [],
stateMutability: 'nonpayable',
type: 'function'
},
{
inputs: [],
name: 'staking',
outputs: [
{
internalType: 'contract TornadoStakingRewards',
name: '',
type: 'address'
}
],
stateMutability: 'view',
type: 'function'
},
{
inputs: [],
name: 'torn',
outputs: [
{
internalType: 'contract TORN',
name: '',
type: 'address'
}
],
stateMutability: 'view',
type: 'function'
},
{
inputs: [],
name: 'tornadoRouter',
outputs: [
{
internalType: 'address',
name: '',
type: 'address'
}
],
stateMutability: 'view',
type: 'function'
},
{
inputs: [
{
internalType: 'address',
name: 'worker',
type: 'address'
}
],
name: 'unregisterWorker',
outputs: [],
stateMutability: 'nonpayable',
type: 'function'
},
{
inputs: [
{
internalType: 'address',
name: '',
type: 'address'
}
],
name: 'workers',
outputs: [
{
internalType: 'address',
name: '',
type: 'address'
}
],
stateMutability: 'view',
type: 'function'
}
] as const
const _bytecode =
'0x6101206040523480156200001257600080fd5b50604051620029be380380620029be83398101604081905262000035916200006d565b6001600160601b0319606095861b811660805293851b841660a05291841b831660c052831b821660e05290911b166101005262000105565b600080600080600060a0868803121562000085578081fd5b85516200009281620000ec565b6020870151909550620000a581620000ec565b6040870151909450620000b881620000ec565b6060870151909350620000cb81620000ec565b6080870151909250620000de81620000ec565b809150509295509295909350565b6001600160a01b03811681146200010257600080fd5b50565b60805160601c60a05160601c60c05160601c60e05160601c6101005160601c61282e620001906000398061078452806110535250806108935280610a50528061148052806117e75250806105ac52806115c55250806109555280610a8a5280610bf05280611177525080610dc05280610f8852806110bd528061145d52806117c4525061282e6000f3fe608060405234801561001057600080fd5b50600436106101ae5760003560e01c806385a29683116100ee578063d0fb020311610097578063e43fdb3c11610071578063e43fdb3c14610353578063eb4af04514610366578063f188768414610379578063f9e5423414610381576101ae565b8063d0fb020314610325578063d990231d1461032d578063e37e8bcc14610340576101ae565b8063ae53941c116100c8578063ae53941c146102df578063b69fd4ab146102ff578063b971a6bf14610312576101ae565b806385a29683146102b15780639498bd71146102c4578063adf898a4146102d7576101ae565b80634cb16c2e1161015b5780635300f841116101355780635300f84114610255578063541d5548146102765780635aa6e675146102965780635c23bdf51461029e576101ae565b80634cb16c2e146102325780634cf088d91461023a5780634d4efd0414610242576101ae565b80634048a2571161018c5780634048a257146101f957806345a11cec1461020c5780634ba16d9d1461021f576101ae565b80632e650649146101b35780633523dc85146101c85780633f15457f146101db575b600080fd5b6101c66101c1366004611e07565b6103a1565b005b6101c66101d6366004611dcf565b61041d565b6101e36105aa565b6040516101f09190612147565b60405180910390f35b6101e3610207366004611dcf565b6105ce565b6101c661021a366004611e3f565b6105f6565b6101c661022d366004611dcf565b61093d565b6101e3610a2c565b6101e3610a4e565b6101c6610250366004611dcf565b610a72565b610268610263366004611dcf565b610ba8565b6040516101f092919061211d565b610289610284366004611dcf565b610bc1565b6040516101f0919061228e565b6101e3610bee565b6101e36102ac366004611fd7565b610c12565b6101c66102bf366004611eb4565b610d83565b6101c66102d2366004611fd7565b610e47565b6101e3610f86565b6102f26102ed366004611dcf565b610faa565b6040516101f09190612299565b61028961030d366004611e07565b610fe5565b6102f2610320366004611dcf565b611019565b6101e3611051565b6101c661033b366004611e89565b611075565b6101c661034e366004612066565b611080565b6101c6610361366004611fef565b61114a565b6101c6610374366004611fd7565b61115f565b6102f2611203565b61039461038f366004611f22565b611209565b6040516101f09190612234565b33600081815260036020526040902054839073ffffffffffffffffffffffffffffffffffffffff80831691161461040d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610404906125f0565b60405180910390fd5b61041784846112b7565b50505050565b73ffffffffffffffffffffffffffffffffffffffff8116331461049a5773ffffffffffffffffffffffffffffffffffffffff81811660009081526003602052604090205416331461049a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161040490612627565b73ffffffffffffffffffffffffffffffffffffffff80821660008181526003602052604090205490911614156104fc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161040490612514565b73ffffffffffffffffffffffffffffffffffffffff808216600090815260036020526040908190205490517fb2a8e18b9e887f502d65c1683e60b723fa582a6903ea4e8eb23907a19c1ce8a0926105569216908490612168565b60405180910390a173ffffffffffffffffffffffffffffffffffffffff16600090815260036020526040902080547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b7f000000000000000000000000000000000000000000000000000000000000000081565b60036020526000908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b60005462010000900473ffffffffffffffffffffffffffffffffffffffff16331461064d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610404906123a4565b73ffffffffffffffffffffffffffffffffffffffff80841660009081526003
type RelayerRegistryConstructorParams = [signer?: Signer] | ConstructorParameters<typeof ContractFactory>
const isSuperArgs = (
xs: RelayerRegistryConstructorParams
): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1
export class RelayerRegistry__factory extends ContractFactory {
constructor(...args: RelayerRegistryConstructorParams) {
if (isSuperArgs(args)) {
super(...args)
} else {
super(_abi, _bytecode, args[0])
}
this.contractName = 'RelayerRegistry'
}
override deploy(
_torn: PromiseOrValue<string>,
_governance: PromiseOrValue<string>,
_ens: PromiseOrValue<string>,
_staking: PromiseOrValue<string>,
_feeManager: PromiseOrValue<string>,
overrides?: Overrides & { from?: PromiseOrValue<string> }
): Promise<RelayerRegistry> {
return super.deploy(
_torn,
_governance,
_ens,
_staking,
_feeManager,
overrides || {}
) as Promise<RelayerRegistry>
}
override getDeployTransaction(
_torn: PromiseOrValue<string>,
_governance: PromiseOrValue<string>,
_ens: PromiseOrValue<string>,
_staking: PromiseOrValue<string>,
_feeManager: PromiseOrValue<string>,
overrides?: Overrides & { from?: PromiseOrValue<string> }
): TransactionRequest {
return super.getDeployTransaction(_torn, _governance, _ens, _staking, _feeManager, overrides || {})
}
override attach(address: string): RelayerRegistry {
return super.attach(address) as RelayerRegistry
}
override connect(signer: Signer): RelayerRegistry__factory {
return super.connect(signer) as RelayerRegistry__factory
}
static readonly contractName: 'RelayerRegistry'
public readonly contractName: 'RelayerRegistry'
static readonly bytecode = _bytecode
static readonly abi = _abi
static createInterface(): RelayerRegistryInterface {
return new utils.Interface(_abi) as RelayerRegistryInterface
}
static connect(address: string, signerOrProvider: Signer | Provider): RelayerRegistry {
return new Contract(address, _abi, signerOrProvider) as RelayerRegistry
}
}