import { Signer, ContractFactory, Overrides } from "ethers"; import type { Provider, TransactionRequest } from "@ethersproject/providers"; import type { PromiseOrValue } from "../common"; import type { ExchangeV1, ExchangeV1Interface } from "../ExchangeV1"; type ExchangeV1ConstructorParams = [signer?: Signer] | ConstructorParameters; export declare class ExchangeV1__factory extends ContractFactory { constructor(...args: ExchangeV1ConstructorParams); deploy(_transferProxy: PromiseOrValue, _transferProxyForDeprecated: PromiseOrValue, _erc20TransferProxy: PromiseOrValue, _state: PromiseOrValue, _ordersHolder: PromiseOrValue, _beneficiary: PromiseOrValue, _buyerFeeSigner: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; getDeployTransaction(_transferProxy: PromiseOrValue, _transferProxyForDeprecated: PromiseOrValue, _erc20TransferProxy: PromiseOrValue, _state: PromiseOrValue, _ordersHolder: PromiseOrValue, _beneficiary: PromiseOrValue, _buyerFeeSigner: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): TransactionRequest; attach(address: string): ExchangeV1; connect(signer: Signer): ExchangeV1__factory; static readonly bytecode = "0x60806040523480156200001157600080fd5b5060405162002b2838038062002b28833981016040819052620000349162000139565b6000620000496001600160e01b036200011516565b600080546001600160a01b0319166001600160a01b0383169081178255604051929350917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600380546001600160a01b03199081166001600160a01b03998a16179091556004805482169789169790971790965560058054871695881695909517909455600680548616938716939093179092556007805485169186169190911790556001805484169185169190911790556002805490921692169190911790556200022f565b3390565b805162000126816200020a565b92915050565b8051620001268162000224565b600080600080600080600060e0888a0312156200015557600080fd5b6000620001638a8a6200012c565b9750506020620001768a828b016200012c565b9650506040620001898a828b016200012c565b95505060606200019c8a828b016200012c565b9450506080620001af8a828b016200012c565b93505060a0620001c28a828b0162000119565b92505060c0620001d58a828b0162000119565b91505092959891949750929550565b60006200012682620001fe565b60006200012682620001e4565b6001600160a01b031690565b6200021581620001e4565b81146200022157600080fd5b50565b6200021581620001f1565b6128e9806200023f6000396000f3fe6080604052600436106100fe5760003560e01c8063715018a6116100955780639cec6392116100645780639cec63921461026a578063c19d93fb1461027d578063ca120b1f14610292578063f2fde38b146102b2578063fee03e9e146102d2576100fe565b8063715018a6146102095780638da5cb5b1461021e5780638f32d59b146102335780639704dc4414610255576100fe565b806338af3eed116100d157806338af3eed1461019d5780634df97bc5146101bf57806355d5d326146101d45780636e667db3146101f4576100fe565b806302329e1014610103578063049944b61461012e5780631b4c98741461015b5780631c31f7101461017b575b600080fd5b34801561010f57600080fd5b506101186102e7565b60405161012591906124da565b60405180910390f35b34801561013a57600080fd5b5061014e610149366004611e90565b6102f6565b604051610125919061256e565b34801561016757600080fd5b5061014e610176366004611eaf565b61032f565b34801561018757600080fd5b5061019b610196366004611ce3565b610350565b005b3480156101a957600080fd5b506101b261039f565b6040516101259190612460565b3480156101cb57600080fd5b506101b26103ae565b3480156101e057600080fd5b5061019b6101ef366004611ce3565b6103bd565b34801561020057600080fd5b50610118610403565b34801561021557600080fd5b5061019b610412565b34801561022a57600080fd5b506101b2610480565b34801561023f57600080fd5b5061024861048f565b60405161012591906124a3565b34801561026157600080fd5b506101186104b3565b61019b610278366004611e03565b6104c2565b34801561028957600080fd5b506101186106b8565b34801561029e57600080fd5b5061019b6102ad366004611dc5565b6106c7565b3480156102be57600080fd5b5061019b6102cd366004611ce3565b6107d5565b3480156102de57600080fd5b50610118610805565b6004546001600160a01b031681565b60606103278260405160200161030c919061269a565b60405160208183030381529060405280519060200120610814565b90505b919050565b6060610347838360405160200161030c9291906126a9565b90505b92915050565b61035861048f565b61037d5760405162461bcd60e51b8152600401610374906125ff565b60405180910390fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b031681565b6002546001600160a01b031681565b6103c561048f565b6103e15760405162461bcd60e51b8152600401610374906125ff565b600280546001600160a01b0319166001600160a01b0392909216919091179055565b6003546001600160a01b031681565b61041a61048f565b6104365760405162461bcd60e51b8152600401610374906125ff565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b600080546001600160a01b03166104a4610927565b6001600160a01b031614905090565b6007546001600160a01b031681565b6104e86104d436889003880188611e90565b6104e336889003880188611eeb565b61092b565b61050f6104fa36889003880188611e90565b8561050a36879003870187611eeb565b610a58565b600061052687610120013588610100013585610aae565b905061054661053a36899003890189611de4565b88610100013585610b00565b600061055860a0890160808a01611d89565b600481111561056357fe5b14156105815760405162461bcd60e51b81526004016103749061260f565b6000610594610100890160e08a01611d89565b600481111561059f57fe5b14156105af576105af8186610c22565b60006105da6105c460a08a0160808b01611d89565b6105d56101008b0160e08c01611d89565b610c57565b90506001600160a01b0383166105ee573392505b610644610603368a90038a0160408b01611da7565b8561061160208c018c611ce3565b86600186600281111561062057fe5b148b8e61014001358f60000160a00180360361063f9190810190611da7565b610ce6565b610695610659368a90038a0160a08b01611da7565b833361066860208d018d611ce3565b600286600281111561067657fe5b148d61014001358c8f60000160400180360361063f9190810190611da7565b6106ae6106a7368a90038a018a611e90565b8585610d0b565b5050505050505050565b6006546001600160a01b031681565b336106d56020830183611ce3565b6001600160a01b0316146106fb5760405162461bcd60e51b81526004016103749061262f565b600654604051631d03b74d60e11b81526001600160a01b0390911690633a076e9a9061072f9084906000199060040161265f565b600060405180830381600087803b15801561074957600080fd5b505af115801561075d573d6000803e3d6000fd5b50505060608201803591506107759060408401611ce3565b6001600160a01b03167fbfe0e802e586c99960de1a111c80f598b281996d65080d74dbe29986f55b274a336107b060c0860160a08701611ce3565b6040516107ca92919060c08801359060208901359061246e565b60405180910390a350565b6107dd61048f565b6107f95760405162461bcd60e51b8152600401610374906125ff565b61080281610d8a565b50565b6005546001600160a01b031681565b604080518082018252601081526f181899199a1a9b1b9c1cb0b131b232b360811b60208201528151828152606081810184529283919060208201818038833901905050905060005b602081101561091f5782600486836020811061087457fe5b1a60f81b6001600160f81b031916901c60f81c60ff168151811061089457fe5b602001015160f81c60f81b8282600202815181106108ae57fe5b60200101906001600160f81b031916908160001a905350828582602081106108d257fe5b825191901a600f169081106108e357fe5b602001015160f81c60f81b82826002026001018151811061090057fe5b60200101906001600160f81b031916908160001a90535060010161085c565b509392505050565b3390565b805160ff1615801561093f57506020810151155b801561094d57506040810151155b156109f357600754604051632aee7a3160e01b81526001600160a01b0390911690632aee7a319061098290859060040161269a565b60206040518083038186803b15801561099a57600080fd5b505afa1580156109ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506109d29190810190611d6b565b6109ee5760405162461bcd60e51b8152600401610374906125cf565b610a54565b8160000151600001516001600160a01b0316610a2e826000015183602001518460400151610a20876102f6565b92919063ffffffff610e0b16565b6001600160a01b031614610a545760405162461bcd60e51b8152600401610374906125cf565b5050565b6002548151602083015160408401516001600160a01b0390931692610a83929190610a20888861032f565b6001600160a01b031614610aa95760405162461bcd60e51b8152600401610374906125df565b505050565b6000610abb848484610ee8565b15610ad85760405162461bcd60e51b8152600401610374906125bf565b610af883610aec868563ffffffff610f5d16565b9063ffffffff610f9716565b949350505050565b6006546040516303ec000360e61b81526000916001600160a01b03169063fb0000c090610b3190879060040161267c565b60206040518083038186803b158015610b4957600080fd5b505afa158015610b5d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610b819190810190611f09565b90506000610b95828463ffffffff610fd916565b905083811115610bb75760405162461bcd60e51b81526004016103749061257f565b600654604051631d03b74d60e11b81526001600160a01b0390911690633a076e9a90610be9908890859060040161268b565b600060405180830381600087803b158015610c0357600080fd5b505af1158015610c17573d6000803e3d6000fd5b505050505050505050565b6000610c34838363ffffffff610ffe16565b90508083013414610aa95760405162461bcd60e51b81526004016103749061264f565b60006003836004811115610c6757fe5b1480610c7e57506004836004811115610c7c57fe5b145b8015610caa57506003826004811115610c9357fe5b1480610caa57506004826004811115610ca857fe5b145b15610cb75750600061034a565b816004811115610cc357fe5b836004811115610ccf57fe5b1115610cdd5750600261034a565b50600192915050565b83610cfc57610cf788888888611016565b6106ae565b6106ae8888888887878761128b565b825160408082015160208082015191518188015185516060870151805190850151878c01519590980151965195976001600160a01b03909416967fdddcdb07e460849cf04a4445b7af9faf01b7f5c7ba75deaf969ac5ed830312c396610d7d9694959394929392918b918d91906126d4565b60405180910390a3505050565b6001600160a01b038116610db05760405162461bcd60e51b81526004016103749061259f565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600060608590506060610e846040518060400160405280601a81526020017f19457468657265756d205369676e6564204d6573736167653a0a000000000000815250610e578451611590565b60408051600080825260208201818152828401828152606084019283526080840190945288939091611651565b90506001818051906020012087878760405160008152602001604052604051610eb094939291906124b1565b6020604051602081039080840390855afa158015610ed2573d6000803e3d6000fd5b5050604051601f19015198975050505050505050565b600082610f075760405162461bcd60e51b81526004016103749061261f565b811580610f12575083155b15610f1f57506000610f56565b60008380610f2957fe5b8584099050610f3e858463ffffffff610f5d16565b610f50826103e863ffffffff610f5d16565b10159150505b9392505050565b600082610f6c5750600061034a565b82820282848281610f7957fe5b04146103475760405162461bcd60e51b8152600401610374906125ef565b600061034783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506118f7565b6000828201838110156103475760405162461bcd60e51b8152600401610374906125af565b6000610347612710610aec858563ffffffff610f5d16565b60008460400151600481111561102857fe5b141561108f57806001600160a01b03168360405161104590612455565b60006040518083038185875af1925050503d8060008114611082576040519150601f19603f3d011682016040523d82523d6000602084013e611087565b606091505b505050611285565b6001846040015160048111156110a157fe5b1415611136576020840151156110c95760405162461bcd60e51b81526004016103749061263f565b600554845160405163776062c360e01b81526001600160a01b039092169163776062c3916110ff91869086908990600401612546565b600060405180830381600087803b15801561111957600080fd5b505af115801561112d573d6000803e3d6000fd5b50505050611285565b60038460400151600481111561114857fe5b14156111a9578260011461116e5760405162461bcd60e51b81526004016103749061258f565b60035484516020860151604051637b84dc8360e11b81526001600160a01b039093169263f709b906926110ff92909187918791600401612546565b6004846040015160048111156111bb57fe5b141561121a57826001146111e15760405162461bcd60e51b81526004016103749061258f565b60048054855160208701516040516321143af960e21b81526001600160a01b0390931693638450ebe4936110ff93928892889201612546565b60035484516020860151604051639c1c2ee960e01b81526001600160a01b0390931692639c1c2ee992611257929091879187918a906004016124e8565b600060405180830381600087803b15801561127157600080fd5b505af11580156106ae573d6000803e3d6000fd5b50505050565b600061129a888789878761192e565b90506002826040015160048111156112ae57fe5b14801561133c575081516040516301ffc9a760e01b81526001600160a01b03909116906301ffc9a7906112ec90632dde656160e21b906004016124cc565b60206040518083038186803b15801561130457600080fd5b505afa158015611318573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061133c9190810190611d6b565b806113fc575060038260400151600481111561135457fe5b148061136f575060048260400151600481111561136d57fe5b145b80156113fc575081516040516301ffc9a760e01b81526001600160a01b03909116906301ffc9a7906113ac90632dde656160e21b906004016124cc565b60206040518083038186803b1580156113c457600080fd5b505afa1580156113d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506113fc9190810190611d6b565b15611583578151602083015160405163b9c4d9fb60e01b81526060916001600160a01b0384169163b9c4d9fb91611435916004016126c6565b60006040518083038186803b15801561144d57600080fd5b505afa158015611461573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526114899190810190611d01565b90506060826001600160a01b0316630ebd4c7f86602001516040518263ffffffff1660e01b81526004016114bd91906126c6565b60006040518083038186803b1580156114d557600080fd5b505afa1580156114e9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526115119190810190611d36565b9050815181511461152157600080fd5b60005b815181101561157e5760008061154e878e86868151811061154157fe5b602002602001015161199c565b915091508196506115748e828e88878151811061156757fe5b6020026020010151611016565b5050600101611524565b505050505b84610c1789838984611016565b6060816115b557506040805180820190915260018152600360fc1b602082015261032a565b8160005b81156115cd57600101600a820491506115b9565b6060816040519080825280601f01601f1916602001820160405280156115fa576020820181803883390190505b50905060001982015b851561164857600a860660300160f81b8282806001900393508151811061162657fe5b60200101906001600160f81b031916908160001a905350600a86049550611603565b50949350505050565b60608082518451865188518a518c518e510101010101016040519080825280601f01601f191660200182016040528015611692576020820181803883390190505b5090506000805b8a518110156116ea578a81815181106116ae57fe5b602001015160f81c60f81b8383806001019450815181106116cb57fe5b60200101906001600160f81b031916908160001a905350600101611699565b5060005b895181101561173f5789818151811061170357fe5b602001015160f81c60f81b83838060010194508151811061172057fe5b60200101906001600160f81b031916908160001a9053506001016116ee565b5060005b88518110156117945788818151811061175857fe5b602001015160f81c60f81b83838060010194508151811061177557fe5b60200101906001600160f81b031916908160001a905350600101611743565b5060005b87518110156117e9578781815181106117ad57fe5b602001015160f81c60f81b8383806001019450815181106117ca57fe5b60200101906001600160f81b031916908160001a905350600101611798565b5060005b865181101561183e5786818151811061180257fe5b602001015160f81c60f81b83838060010194508151811061181f57fe5b60200101906001600160f81b031916908160001a9053506001016117ed565b5060005b85518110156118935785818151811061185757fe5b602001015160f81c60f81b83838060010194508151811061187457fe5b60200101906001600160f81b031916908160001a905350600101611842565b5060005b84518110156118e8578481815181106118ac57fe5b602001015160f81c60f81b8383806001019450815181106118c957fe5b60200101906001600160f81b031916908160001a905350600101611897565b50909998505050505050505050565b600081836119185760405162461bcd60e51b8152600401610374919061256e565b50600083858161192457fe5b0495945050505050565b600080600061193e86878761199c565b90925090506000611955878663ffffffff610ffe16565b90506000611969828463ffffffff610fd916565b9050801561198c5760015461198c908b9083908c906001600160a01b0316611016565b5091925050505b95945050505050565b6000806119b8856119b3868663ffffffff610ffe16565b6119c4565b91509150935093915050565b600080828411156119da575050808203816119e1565b5060009050825b9250929050565b803561034a8161286a565b805161034a8161286a565b600082601f830112611a0f57600080fd5b8151611a22611a1d82612772565b61274b565b91508181835260208401935060208101905083856020840282011115611a4757600080fd5b60005b83811015611a735781611a5d88826119f3565b8452506020928301929190910190600101611a4a565b5050505092915050565b600082601f830112611a8e57600080fd5b8151611a9c611a1d82612772565b91508181835260208401935060208101905083856020840282011115611ac157600080fd5b60005b83811015611a735781611ad78882611ccd565b8452506020928301929190910190600101611ac4565b805161034a8161287e565b803561034a81612887565b803561034a81612890565b600060608284031215611b2057600080fd5b611b2a606061274b565b90506000611b3884846119e8565b8252506020611b4984848301611af8565b6020830152506040611b5d84828501611b03565b60408301525092915050565b60006101008284031215611b7c57600080fd5b50919050565b60006101008284031215611b9557600080fd5b611b9f608061274b565b90506000611bad84846119e8565b8252506020611bbe84848301611af8565b6020830152506040611bd284828501611b0e565b60408301525060a0611be684828501611b0e565b60608301525092915050565b60006101608284031215611b7c57600080fd5b60006101608284031215611c1857600080fd5b611c22608061274b565b90506000611c308484611b82565b825250610100611c4284848301611af8565b602083015250610120611c5784828501611af8565b604083015250610140611be684828501611af8565b600060608284031215611b7c57600080fd5b600060608284031215611c9057600080fd5b611c9a606061274b565b90506000611ca88484611cd8565b8252506020611cb984848301611af8565b6020830152506040611b5d84828501611af8565b805161034a81612887565b803561034a8161289d565b600060208284031215611cf557600080fd5b6000610af884846119e8565b600060208284031215611d1357600080fd5b815167ffffffffffffffff811115611d2a57600080fd5b610af8848285016119fe565b600060208284031215611d4857600080fd5b815167ffffffffffffffff811115611d5f57600080fd5b610af884828501611a7d565b600060208284031215611d7d57600080fd5b6000610af88484611aed565b600060208284031215611d9b57600080fd5b6000610af88484611b03565b600060608284031215611db957600080fd5b6000610af88484611b0e565b60006101008284031215611dd857600080fd5b6000610af88484611b69565b60006101008284031215611df757600080fd5b6000610af88484611b82565b6000806000806000806102808789031215611e1d57600080fd5b6000611e298989611bf2565b965050610160611e3b89828a01611c6c565b9550506101c0611e4d89828a01611af8565b9450506101e0611e5f89828a01611c6c565b935050610240611e7189828a01611af8565b925050610260611e8389828a016119e8565b9150509295509295509295565b60006101608284031215611ea357600080fd5b6000610af88484611c05565b6000806101808385031215611ec357600080fd5b6000611ecf8585611c05565b925050610160611ee185828601611af8565b9150509250929050565b600060608284031215611efd57600080fd5b6000610af88484611c7e565b600060208284031215611f1b57600080fd5b6000610af88484611ccd565b611f308161280d565b82525050565b611f30816127d1565b611f30816127dc565b611f30816127e1565b611f30816127e4565b611f3081612814565b611f308161281f565b6000611f7782612793565b611f818185612797565b9350611f9181856020860161282a565b611f9a81612856565b9093019392505050565b6000611fb1602483612797565b7f6e6f7420656e6f7567682073746f636b206f66206f7264657220666f7220627581526379696e6760e01b602082015260400192915050565b6000611ff7601d83612797565b7f76616c75652073686f756c64206265203120666f72204552432d373231000000815260200192915050565b6000612030602683612797565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206181526564647265737360d01b602082015260400192915050565b6000612078601b83612797565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000815260200192915050565b60006120b1600e83612797565b6d3937bab73234b7339032b93937b960911b815260200192915050565b60006120db601383612797565b72696e636f7272656374207369676e617475726560681b815260200192915050565b600061210a601d83612797565b7f696e636f727265637420627579657220666565207369676e6174757265000000815260200192915050565b6000612143602183612797565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f8152607760f81b602082015260400192915050565b6000612186602083612797565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572815260200192915050565b60006121bf602183612797565b7f455448206973206e6f7420737570706f72746564206f6e2073656c6c207369648152606560f81b602082015260400192915050565b600061034a600083612797565b600061034a60008361032a565b600061221c601083612797565b6f6469766973696f6e206279207a65726f60801b815260200192915050565b6000612248600c83612797565b6b3737ba1030b71037bbb732b960a11b815260200192915050565b6000612270601383612797565b720746f6b656e49642073686f756c64206265203606c1b815260200192915050565b600061229f601683612797565b751b5cd9cb9d985b1d59481a5cc81a5b98dbdc9c9958dd60521b815260200192915050565b606082016122d282806127a0565b6122dc8482611f36565b506122ea60208301836127c2565b6122f76020850182611f48565b5061230560408301836127af565b6112856040850182611f63565b805160608301906123238482611f36565b5060208201516123366020850182611f48565b5060408201516112856040850182611f63565b610100820161235882806127a0565b6123628482611f36565b5061237060208301836127c2565b61237d6020850182611f48565b5061238b60408301836127be565b61239860408501826122c4565b506123a660a08301836127be565b61128560a08501826122c4565b80516101008301906123c58482611f36565b5060208201516123d86020850182611f48565b5060408201516123eb6040850182612312565b50606082015161128560a0850182612312565b805161016083019061241084826123b3565b506020820151612424610100850182611f48565b506040820151612438610120850182611f48565b506060820151611285610140850182611f48565b611f3081612807565b600061034a82612202565b6020810161034a8284611f36565b6080810161247c8287611f27565b6124896020830186611f36565b6124966040830185611f48565b6119936060830184611f48565b6020810161034a8284611f3f565b608081016124bf8287611f48565b612489602083018661244c565b6020810161034a8284611f51565b6020810161034a8284611f5a565b60c081016124f68288611f5a565b6125036020830187611f36565b6125106040830186611f36565b61251d6060830185611f48565b61252a6080830184611f48565b81810360a083015261253b816121f5565b979650505050505050565b608081016125548287611f5a565b6125616020830186611f36565b6124966040830185611f36565b602080825281016103478184611f6c565b6020808252810161032781611fa4565b6020808252810161032781611fea565b6020808252810161032781612023565b602080825281016103278161206b565b60208082528101610327816120a4565b60208082528101610327816120ce565b60208082528101610327816120fd565b6020808252810161032781612136565b6020808252810161032781612179565b60208082528101610327816121b2565b602080825281016103278161220f565b602080825281016103278161223b565b6020808252810161032781612263565b6020808252810161032781612292565b610120810161266e8285612349565b610f56610100830184611f48565b610100810161034a82846123b3565b610120810161266e82856123b3565b610160810161034a82846123fe565b61018081016126b882856123fe565b610f56610160830184611f48565b6020810161034a8284611f48565b61010081016126e3828b611f48565b6126f0602083018a611f36565b6126fd6040830189611f36565b61270a6060830188611f48565b6127176080830187611f48565b61272460a0830186611f36565b61273160c0830185611f48565b61273e60e0830184611f48565b9998505050505050505050565b60405181810167ffffffffffffffff8111828210171561276a57600080fd5b604052919050565b600067ffffffffffffffff82111561278957600080fd5b5060209081020190565b5190565b90815260200190565b600061034760208401846119e8565b60006103476020840184611b03565b5090565b60006103476020840184611af8565b6000610327826127fb565b151590565b90565b6001600160e01b03191690565b8061032a81612860565b6001600160a01b031690565b60ff1690565b6000610327825b6000610327826127d1565b6000610327826127f1565b60005b8381101561284557818101518382015260200161282d565b838111156112855750506000910152565b601f01601f191690565b6005811061080257fe5b612873816127d1565b811461080257600080fd5b612873816127dc565b612873816127e1565b6005811061080257600080fd5b6128738161280756fea365627a7a7231582060d82a0c5e6f4196cb1b41ae1335b8f193829a3c6763f7ea9ce7d08b54a840c66c6578706572696d656e74616cf564736f6c63430005110040"; static readonly abi: readonly [{ readonly inputs: readonly [{ readonly internalType: "contract TransferProxy"; readonly name: "_transferProxy"; readonly type: "address"; }, { readonly internalType: "contract TransferProxyForDeprecated"; readonly name: "_transferProxyForDeprecated"; readonly type: "address"; }, { readonly internalType: "contract ERC20TransferProxy"; readonly name: "_erc20TransferProxy"; readonly type: "address"; }, { readonly internalType: "contract ExchangeStateV1"; readonly name: "_state"; readonly type: "address"; }, { readonly internalType: "contract ExchangeOrdersHolderV1"; readonly name: "_ordersHolder"; readonly type: "address"; }, { readonly internalType: "address payable"; readonly name: "_beneficiary"; readonly type: "address"; }, { readonly internalType: "address"; readonly name: "_buyerFeeSigner"; readonly type: "address"; }]; readonly payable: false; readonly stateMutability: "nonpayable"; readonly type: "constructor"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "address"; readonly name: "sellToken"; readonly type: "address"; }, { readonly indexed: true; readonly internalType: "uint256"; readonly name: "sellTokenId"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "sellValue"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "address"; readonly name: "owner"; readonly type: "address"; }, { readonly indexed: false; readonly internalType: "address"; readonly name: "buyToken"; readonly type: "address"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "buyTokenId"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "buyValue"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "address"; readonly name: "buyer"; readonly type: "address"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "amount"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "salt"; readonly type: "uint256"; }]; readonly name: "Buy"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "address"; readonly name: "sellToken"; readonly type: "address"; }, { readonly indexed: true; readonly internalType: "uint256"; readonly name: "sellTokenId"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "address"; readonly name: "owner"; readonly type: "address"; }, { readonly indexed: false; readonly internalType: "address"; readonly name: "buyToken"; readonly type: "address"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "buyTokenId"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "salt"; readonly type: "uint256"; }]; readonly name: "Cancel"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "address"; readonly name: "previousOwner"; readonly type: "address"; }, { readonly indexed: true; readonly internalType: "address"; readonly name: "newOwner"; readonly type: "address"; }]; readonly name: "OwnershipTransferred"; readonly type: "event"; }, { readonly constant: true; readonly inputs: readonly []; readonly name: "beneficiary"; readonly outputs: readonly [{ readonly internalType: "address payable"; readonly name: ""; readonly type: "address"; }]; readonly payable: false; readonly stateMutability: "view"; readonly type: "function"; }, { readonly constant: true; readonly inputs: readonly []; readonly name: "buyerFeeSigner"; readonly outputs: readonly [{ readonly internalType: "address"; readonly name: ""; readonly type: "address"; }]; readonly payable: false; readonly stateMutability: "view"; readonly type: "function"; }, { readonly constant: true; readonly inputs: readonly []; readonly name: "erc20TransferProxy"; readonly outputs: readonly [{ readonly internalType: "contract ERC20TransferProxy"; readonly name: ""; readonly type: "address"; }]; readonly payable: false; readonly stateMutability: "view"; readonly type: "function"; }, { readonly constant: true; readonly inputs: readonly []; readonly name: "isOwner"; readonly outputs: readonly [{ readonly internalType: "bool"; readonly name: ""; readonly type: "bool"; }]; readonly payable: false; readonly stateMutability: "view"; readonly type: "function"; }, { readonly constant: true; readonly inputs: readonly []; readonly name: "ordersHolder"; readonly outputs: readonly [{ readonly internalType: "contract ExchangeOrdersHolderV1"; readonly name: ""; readonly type: "address"; }]; readonly payable: false; readonly stateMutability: "view"; readonly type: "function"; }, { readonly constant: true; readonly inputs: readonly []; readonly name: "owner"; readonly outputs: readonly [{ readonly internalType: "address"; readonly name: ""; readonly type: "address"; }]; readonly payable: false; readonly stateMutability: "view"; readonly type: "function"; }, { readonly constant: false; readonly inputs: readonly []; readonly name: "renounceOwnership"; readonly outputs: readonly []; readonly payable: false; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly constant: true; readonly inputs: readonly []; readonly name: "state"; readonly outputs: readonly [{ readonly internalType: "contract ExchangeStateV1"; readonly name: ""; readonly type: "address"; }]; readonly payable: false; readonly stateMutability: "view"; readonly type: "function"; }, { readonly constant: false; readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "newOwner"; readonly type: "address"; }]; readonly name: "transferOwnership"; readonly outputs: readonly []; readonly payable: false; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly constant: true; readonly inputs: readonly []; readonly name: "transferProxy"; readonly outputs: readonly [{ readonly internalType: "contract TransferProxy"; readonly name: ""; readonly type: "address"; }]; readonly payable: false; readonly stateMutability: "view"; readonly type: "function"; }, { readonly constant: true; readonly inputs: readonly []; readonly name: "transferProxyForDeprecated"; readonly outputs: readonly [{ readonly internalType: "contract TransferProxyForDeprecated"; readonly name: ""; readonly type: "address"; }]; readonly payable: false; readonly stateMutability: "view"; readonly type: "function"; }, { readonly constant: false; readonly inputs: readonly [{ readonly internalType: "address payable"; readonly name: "newBeneficiary"; readonly type: "address"; }]; readonly name: "setBeneficiary"; readonly outputs: readonly []; readonly payable: false; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly constant: false; readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "newBuyerFeeSigner"; readonly type: "address"; }]; readonly name: "setBuyerFeeSigner"; readonly outputs: readonly []; readonly payable: false; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly constant: false; readonly inputs: readonly [{ readonly components: readonly [{ readonly components: readonly [{ readonly internalType: "address"; readonly name: "owner"; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: "salt"; readonly type: "uint256"; }, { readonly components: readonly [{ readonly internalType: "address"; readonly name: "token"; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: "tokenId"; readonly type: "uint256"; }, { readonly internalType: "enum ExchangeDomainV1.AssetType"; readonly name: "assetType"; readonly type: "uint8"; }]; readonly internalType: "struct ExchangeDomainV1.Asset"; readonly name: "sellAsset"; readonly type: "tuple"; }, { readonly components: readonly [{ readonly internalType: "address"; readonly name: "token"; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: "tokenId"; readonly type: "uint256"; }, { readonly internalType: "enum ExchangeDomainV1.AssetType"; readonly name: "assetType"; readonly type: "uint8"; }]; readonly internalType: "struct ExchangeDomainV1.Asset"; readonly name: "buyAsset"; readonly type: "tuple"; }]; readonly internalType: "struct ExchangeDomainV1.OrderKey"; readonly name: "key"; readonly type: "tuple"; }, { readonly internalType: "uint256"; readonly name: "selling"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "buying"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "sellerFee"; readonly type: "uint256"; }]; readonly internalType: "struct ExchangeDomainV1.Order"; readonly name: "order"; readonly type: "tuple"; }, { readonly components: readonly [{ readonly internalType: "uint8"; readonly name: "v"; readonly type: "uint8"; }, { readonly internalType: "bytes32"; readonly name: "r"; readonly type: "bytes32"; }, { readonly internalType: "bytes32"; readonly name: "s"; readonly type: "bytes32"; }]; readonly internalType: "struct ExchangeDomainV1.Sig"; readonly name: "sig"; readonly type: "tuple"; }, { readonly internalType: "uint256"; readonly name: "buyerFee"; readonly type: "uint256"; }, { readonly components: readonly [{ readonly internalType: "uint8"; readonly name: "v"; readonly type: "uint8"; }, { readonly internalType: "bytes32"; readonly name: "r"; readonly type: "bytes32"; }, { readonly internalType: "bytes32"; readonly name: "s"; readonly type: "bytes32"; }]; readonly internalType: "struct ExchangeDomainV1.Sig"; readonly name: "buyerFeeSig"; readonly type: "tuple"; }, { readonly internalType: "uint256"; readonly name: "amount"; readonly type: "uint256"; }, { readonly internalType: "address"; readonly name: "buyer"; readonly type: "address"; }]; readonly name: "exchange"; readonly outputs: readonly []; readonly payable: true; readonly stateMutability: "payable"; readonly type: "function"; }, { readonly constant: false; readonly inputs: readonly [{ readonly components: readonly [{ readonly internalType: "address"; readonly name: "owner"; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: "salt"; readonly type: "uint256"; }, { readonly components: readonly [{ readonly internalType: "address"; readonly name: "token"; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: "tokenId"; readonly type: "uint256"; }, { readonly internalType: "enum ExchangeDomainV1.AssetType"; readonly name: "assetType"; readonly type: "uint8"; }]; readonly internalType: "struct ExchangeDomainV1.Asset"; readonly name: "sellAsset"; readonly type: "tuple"; }, { readonly components: readonly [{ readonly internalType: "address"; readonly name: "token"; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: "tokenId"; readonly type: "uint256"; }, { readonly internalType: "enum ExchangeDomainV1.AssetType"; readonly name: "assetType"; readonly type: "uint8"; }]; readonly internalType: "struct ExchangeDomainV1.Asset"; readonly name: "buyAsset"; readonly type: "tuple"; }]; readonly internalType: "struct ExchangeDomainV1.OrderKey"; readonly name: "key"; readonly type: "tuple"; }]; readonly name: "cancel"; readonly outputs: readonly []; readonly payable: false; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly constant: true; readonly inputs: readonly [{ readonly components: readonly [{ readonly components: readonly [{ readonly internalType: "address"; readonly name: "owner"; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: "salt"; readonly type: "uint256"; }, { readonly components: readonly [{ readonly internalType: "address"; readonly name: "token"; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: "tokenId"; readonly type: "uint256"; }, { readonly internalType: "enum ExchangeDomainV1.AssetType"; readonly name: "assetType"; readonly type: "uint8"; }]; readonly internalType: "struct ExchangeDomainV1.Asset"; readonly name: "sellAsset"; readonly type: "tuple"; }, { readonly components: readonly [{ readonly internalType: "address"; readonly name: "token"; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: "tokenId"; readonly type: "uint256"; }, { readonly internalType: "enum ExchangeDomainV1.AssetType"; readonly name: "assetType"; readonly type: "uint8"; }]; readonly internalType: "struct ExchangeDomainV1.Asset"; readonly name: "buyAsset"; readonly type: "tuple"; }]; readonly internalType: "struct ExchangeDomainV1.OrderKey"; readonly name: "key"; readonly type: "tuple"; }, { readonly internalType: "uint256"; readonly name: "selling"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "buying"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "sellerFee"; readonly type: "uint256"; }]; readonly internalType: "struct ExchangeDomainV1.Order"; readonly name: "order"; readonly type: "tuple"; }, { readonly internalType: "uint256"; readonly name: "fee"; readonly type: "uint256"; }]; readonly name: "prepareBuyerFeeMessage"; readonly outputs: readonly [{ readonly internalType: "string"; readonly name: ""; readonly type: "string"; }]; readonly payable: false; readonly stateMutability: "pure"; readonly type: "function"; }, { readonly constant: true; readonly inputs: readonly [{ readonly components: readonly [{ readonly components: readonly [{ readonly internalType: "address"; readonly name: "owner"; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: "salt"; readonly type: "uint256"; }, { readonly components: readonly [{ readonly internalType: "address"; readonly name: "token"; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: "tokenId"; readonly type: "uint256"; }, { readonly internalType: "enum ExchangeDomainV1.AssetType"; readonly name: "assetType"; readonly type: "uint8"; }]; readonly internalType: "struct ExchangeDomainV1.Asset"; readonly name: "sellAsset"; readonly type: "tuple"; }, { readonly components: readonly [{ readonly internalType: "address"; readonly name: "token"; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: "tokenId"; readonly type: "uint256"; }, { readonly internalType: "enum ExchangeDomainV1.AssetType"; readonly name: "assetType"; readonly type: "uint8"; }]; readonly internalType: "struct ExchangeDomainV1.Asset"; readonly name: "buyAsset"; readonly type: "tuple"; }]; readonly internalType: "struct ExchangeDomainV1.OrderKey"; readonly name: "key"; readonly type: "tuple"; }, { readonly internalType: "uint256"; readonly name: "selling"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "buying"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "sellerFee"; readonly type: "uint256"; }]; readonly internalType: "struct ExchangeDomainV1.Order"; readonly name: "order"; readonly type: "tuple"; }]; readonly name: "prepareMessage"; readonly outputs: readonly [{ readonly internalType: "string"; readonly name: ""; readonly type: "string"; }]; readonly payable: false; readonly stateMutability: "pure"; readonly type: "function"; }]; static createInterface(): ExchangeV1Interface; static connect(address: string, signerOrProvider: Signer | Provider): ExchangeV1; } export {};