feat: generate typescript interfaces for reference contract children
Opened this issue · 0 comments
Right now when including a reference we only generate a Typescript interface for the top-level contract even though in certain cases we will most definitely want all the children as well.
Right now, for each reference a index.ts
is generated however instead we should generate a ${name}.ts
for each Solidity file found. This way all Solidity files can be interfaced with ease. Additionally, this means one can reuse the onchain interfaces already provided by a protocol.
For example, UniswapV3Factory
returns a IERC20Minimal.sol
however we do not have a Typescript interface for it, even though that would make things much simpler due to the assumption that something within the contract needs it and therefore our Strategy
would benefit from access to that without manual declaration.