Some callouts (and I'm sure there are a ton of other questions:
This doesn't work currently, tried starting from top level and propping down, TSing and then moving to tests
Provider -> PublicClient
Signer -> WalletClient
EnsProvider -> PublicClient but kept this verbiage
getAddresses() returns an array, should prob pull this out to util
TS was being funky for me in a lot of places, unsure if IDE prob or package prob
We should prob rename the internal variables (like this this._signer to reflect new paradigm)
We have a ton of custom types/forced types, now that Viem is TS forward, I think we can remove a lot of this (and ofc things are going to break) and lean on their typing.
Some callouts (and I'm sure there are a ton of other questions:
this._signer
to reflect new paradigm)this is the source of truth for this migration: https://viem.sh/docs/ethers-migration.html