import { ContractFactory, ContractTransactionResponse } from "ethers"; import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; import type { NonPayableOverrides } from "../../common"; import type { MockUniswapV3Router, MockUniswapV3RouterInterface } from "../../router/MockUniswapV3Router"; type MockUniswapV3RouterConstructorParams = [signer?: Signer] | ConstructorParameters; export declare class MockUniswapV3Router__factory extends ContractFactory { constructor(...args: MockUniswapV3RouterConstructorParams); getDeployTransaction(overrides?: NonPayableOverrides & { from?: string; }): Promise; deploy(overrides?: NonPayableOverrides & { from?: string; }): Promise; connect(runner: ContractRunner | null): MockUniswapV3Router__factory; static readonly bytecode = "0x608060405234801561001057600080fd5b5061001c60003361004d565b506100477f04824fcb60e7cc526d70b264caa65b62ed44d9c8e5d230e8ff6b0c7373843b8a3361004d565b506100f9565b6000828152602081815260408083206001600160a01b038516845290915281205460ff166100ef576000838152602081815260408083206001600160a01b03861684529091529020805460ff191660011790556100a73390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45060016100f3565b5060005b92915050565b610b67806101086000396000f3fe608060405234801561001057600080fd5b50600436106100a85760003560e01c806391d148541161007157806391d1485414610141578063a217fddf14610154578063cdca17531461015c578063cfed246b1461017f578063d547741f1461019f578063f00acbaa146101b257600080fd5b8062e4768b146100ad57806301ffc9a7146100c2578063248a9ca3146100ea5780632f2ff15d1461011b57806336568abe1461012e575b600080fd5b6100c06100bb366004610790565b6101d9565b005b6100d56100d03660046107ba565b6102b8565b60405190151581526020015b60405180910390f35b61010d6100f83660046107eb565b60009081526020819052604090206001015490565b6040519081526020016100e1565b6100c0610129366004610804565b6102e3565b6100c061013c366004610804565b61030e565b6100d561014f366004610804565b610346565b61010d600081565b61016f61016a366004610846565b61036f565b6040516100e194939291906108fb565b61010d61018d366004610998565b60016020526000908152604090205481565b6100c06101ad366004610804565b6105d3565b61010d7f04824fcb60e7cc526d70b264caa65b62ed44d9c8e5d230e8ff6b0c7373843b8a81565b7f04824fcb60e7cc526d70b264caa65b62ed44d9c8e5d230e8ff6b0c7373843b8a610203816105f8565b6001600160a01b03831661025e5760405162461bcd60e51b815260206004820152601c60248201527f546f6b656e20616464726573732063616e6e6f74206265207a65726f0000000060448201526064015b60405180910390fd5b6001600160a01b03831660008181526001602052604090819020849055517f487f5e355f4bfe139e8e08ef8889e5dc69f7c7c70ba048877dbf67bec962d6be906102ab9085815260200190565b60405180910390a2505050565b60006001600160e01b0319821663cdca175360e01b14806102dd57506102dd82610605565b92915050565b6000828152602081905260409020600101546102fe816105f8565b610308838361063a565b50505050565b6001600160a01b03811633146103375760405163334bd91960e11b815260040160405180910390fd5b61034182826106cc565b505050565b6000918252602082815260408084206001600160a01b0393909316845291905290205460ff1690565b60006060806000602b865110156103b95760405162461bcd60e51b815260206004820152600e60248201526d14185d1a081d1bdbc81cda1bdc9d60921b6044820152606401610255565b5050604080516000808252602082018181528284019093526014870151875192945090918290602b8110156103ed57600080fd5b6002601780830304019050601760018203026014019050808901519150506000826001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa15801561044b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061046f91906109b3565b90506000826001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104d591906109b3565b6040516bffffffffffffffffffffffff19606087811b8216602084018190526000603485018190529188901b9092166037840152604b830152604e82015290915060620160405160208183030381529060405299508060ff168260ff1611156105815761054281836109ec565b61054d90600a610ae9565b6001600160a01b038516600090815260016020526040902054610570908b610af8565b61057a9190610b0f565b97506105c6565b61058b82826109ec565b61059690600a610ae9565b6001600160a01b0385166000908152600160205260409020546105b9908b610af8565b6105c39190610af8565b97505b5050505092959194509250565b6000828152602081905260409020600101546105ee816105f8565b61030883836106cc565b6106028133610737565b50565b60006001600160e01b03198216637965db0b60e01b14806102dd57506301ffc9a760e01b6001600160e01b03198316146102dd565b60006106468383610346565b6106c4576000838152602081815260408083206001600160a01b03861684529091529020805460ff1916600117905561067c3390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45060016102dd565b5060006102dd565b60006106d88383610346565b156106c4576000838152602081815260408083206001600160a01b0386168085529252808320805460ff1916905551339286917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45060016102dd565b6107418282610346565b6107705760405163e2517d3f60e01b81526001600160a01b038216600482015260248101839052604401610255565b5050565b80356001600160a01b038116811461078b57600080fd5b919050565b600080604083850312156107a357600080fd5b6107ac83610774565b946020939093013593505050565b6000602082840312156107cc57600080fd5b81356001600160e01b0319811681146107e457600080fd5b9392505050565b6000602082840312156107fd57600080fd5b5035919050565b6000806040838503121561081757600080fd5b8235915061082760208401610774565b90509250929050565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561085957600080fd5b823567ffffffffffffffff8082111561087157600080fd5b818501915085601f83011261088557600080fd5b81358181111561089757610897610830565b604051601f8201601f19908116603f011681019083821181831017156108bf576108bf610830565b816040528281528860208487010111156108d857600080fd5b826020860160208301376000602093820184015298969091013596505050505050565b600060808201868352602060808185015281875180845260a086019150828901935060005b818110156109455784516001600160a01b031683529383019391830191600101610920565b50508481036040860152865180825290820192508187019060005b8181101561098257825163ffffffff1685529383019391830191600101610960565b5050505060609290920192909252949350505050565b6000602082840312156109aa57600080fd5b6107e482610774565b6000602082840312156109c557600080fd5b815160ff811681146107e457600080fd5b634e487b7160e01b600052601160045260246000fd5b60ff82811682821603908111156102dd576102dd6109d6565b600181815b80851115610a40578160001904821115610a2657610a266109d6565b80851615610a3357918102915b93841c9390800290610a0a565b509250929050565b600082610a57575060016102dd565b81610a64575060006102dd565b8160018114610a7a5760028114610a8457610aa0565b60019150506102dd565b60ff841115610a9557610a956109d6565b50506001821b6102dd565b5060208310610133831016604e8410600b8410161715610ac3575081810a6102dd565b610acd8383610a05565b8060001904821115610ae157610ae16109d6565b029392505050565b60006107e460ff841683610a48565b80820281158282048414176102dd576102dd6109d6565b600082610b2c57634e487b7160e01b600052601260045260246000fd5b50049056fea2646970667358221220942a9b31a3c6ac604b117287f617a37cae1bb7d112eed6a6ae5050cab3301ef564736f6c63430008180033"; static readonly abi: readonly [{ readonly inputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "constructor"; }, { readonly inputs: readonly []; readonly name: "AccessControlBadConfirmation"; readonly type: "error"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "account"; readonly type: "address"; }, { readonly internalType: "bytes32"; readonly name: "neededRole"; readonly type: "bytes32"; }]; readonly name: "AccessControlUnauthorizedAccount"; readonly type: "error"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "address"; readonly name: "token"; readonly type: "address"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "price"; readonly type: "uint256"; }]; readonly name: "MockUniswapV3TokenPriceSet"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "bytes32"; readonly name: "role"; readonly type: "bytes32"; }, { readonly indexed: true; readonly internalType: "bytes32"; readonly name: "previousAdminRole"; readonly type: "bytes32"; }, { readonly indexed: true; readonly internalType: "bytes32"; readonly name: "newAdminRole"; readonly type: "bytes32"; }]; readonly name: "RoleAdminChanged"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "bytes32"; readonly name: "role"; readonly type: "bytes32"; }, { readonly indexed: true; readonly internalType: "address"; readonly name: "account"; readonly type: "address"; }, { readonly indexed: true; readonly internalType: "address"; readonly name: "sender"; readonly type: "address"; }]; readonly name: "RoleGranted"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "bytes32"; readonly name: "role"; readonly type: "bytes32"; }, { readonly indexed: true; readonly internalType: "address"; readonly name: "account"; readonly type: "address"; }, { readonly indexed: true; readonly internalType: "address"; readonly name: "sender"; readonly type: "address"; }]; readonly name: "RoleRevoked"; readonly type: "event"; }, { readonly inputs: readonly []; readonly name: "DEFAULT_ADMIN_ROLE"; readonly outputs: readonly [{ readonly internalType: "bytes32"; readonly name: ""; readonly type: "bytes32"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "PRICE_SETTER_ROLE"; readonly outputs: readonly [{ readonly internalType: "bytes32"; readonly name: ""; readonly type: "bytes32"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "bytes32"; readonly name: "role"; readonly type: "bytes32"; }]; readonly name: "getRoleAdmin"; readonly outputs: readonly [{ readonly internalType: "bytes32"; readonly name: ""; readonly type: "bytes32"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "bytes32"; readonly name: "role"; readonly type: "bytes32"; }, { readonly internalType: "address"; readonly name: "account"; readonly type: "address"; }]; readonly name: "grantRole"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "bytes32"; readonly name: "role"; readonly type: "bytes32"; }, { readonly internalType: "address"; readonly name: "account"; readonly type: "address"; }]; readonly name: "hasRole"; readonly outputs: readonly [{ readonly internalType: "bool"; readonly name: ""; readonly type: "bool"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: ""; readonly type: "address"; }]; readonly name: "prices"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "bytes"; readonly name: "path"; readonly type: "bytes"; }, { readonly internalType: "uint256"; readonly name: "amountIn"; readonly type: "uint256"; }]; readonly name: "quoteExactInput"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: "amountOut"; readonly type: "uint256"; }, { readonly internalType: "uint160[]"; readonly name: "sqrtPriceX96AfterList"; readonly type: "uint160[]"; }, { readonly internalType: "uint32[]"; readonly name: "initializedTicksCrossedList"; readonly type: "uint32[]"; }, { readonly internalType: "uint256"; readonly name: "gasEstimate"; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "bytes32"; readonly name: "role"; readonly type: "bytes32"; }, { readonly internalType: "address"; readonly name: "callerConfirmation"; readonly type: "address"; }]; readonly name: "renounceRole"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "bytes32"; readonly name: "role"; readonly type: "bytes32"; }, { readonly internalType: "address"; readonly name: "account"; readonly type: "address"; }]; readonly name: "revokeRole"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "_token"; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: "_price"; readonly type: "uint256"; }]; readonly name: "setPrice"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "bytes4"; readonly name: "interfaceId"; readonly type: "bytes4"; }]; readonly name: "supportsInterface"; readonly outputs: readonly [{ readonly internalType: "bool"; readonly name: ""; readonly type: "bool"; }]; readonly stateMutability: "view"; readonly type: "function"; }]; static createInterface(): MockUniswapV3RouterInterface; static connect(address: string, runner?: ContractRunner | null): MockUniswapV3Router; } export {};