diff --git a/.changeset/wise-kings-reply.md b/.changeset/wise-kings-reply.md new file mode 100644 index 000000000..b116f43f5 --- /dev/null +++ b/.changeset/wise-kings-reply.md @@ -0,0 +1,5 @@ +--- +"@typechain/ethers-v5": patch +--- + +Fix for unused type in new ethers-v5 codegen diff --git a/packages/hardhat-test/typechain-types/Directory/Hello.ts b/packages/hardhat-test/typechain-types/Directory/Hello.ts index f5c219bdf..3606d9775 100644 --- a/packages/hardhat-test/typechain-types/Directory/Hello.ts +++ b/packages/hardhat-test/typechain-types/Directory/Hello.ts @@ -9,7 +9,6 @@ import type { TypedEvent, TypedListener, OnEvent, - PromiseOrValue, } from "../common"; export interface HelloInterface extends utils.Interface { diff --git a/packages/hardhat/test/fixture-projects/hardhat-project/typechain-types/artifacts/contracts/EdgeCases.ts b/packages/hardhat/test/fixture-projects/hardhat-project/typechain-types/artifacts/contracts/EdgeCases.ts index 1dbd37100..8eba81138 100644 --- a/packages/hardhat/test/fixture-projects/hardhat-project/typechain-types/artifacts/contracts/EdgeCases.ts +++ b/packages/hardhat/test/fixture-projects/hardhat-project/typechain-types/artifacts/contracts/EdgeCases.ts @@ -9,7 +9,6 @@ import type { TypedEvent, TypedListener, OnEvent, - PromiseOrValue, } from "../../common"; export interface EdgeCasesInterface extends utils.Interface { diff --git a/packages/hardhat/test/fixture-projects/hardhat-project/typechain-types/artifacts/contracts/TestContract.ts b/packages/hardhat/test/fixture-projects/hardhat-project/typechain-types/artifacts/contracts/TestContract.ts index 2e6f94c42..db01ca653 100644 --- a/packages/hardhat/test/fixture-projects/hardhat-project/typechain-types/artifacts/contracts/TestContract.ts +++ b/packages/hardhat/test/fixture-projects/hardhat-project/typechain-types/artifacts/contracts/TestContract.ts @@ -9,7 +9,6 @@ import type { TypedEvent, TypedListener, OnEvent, - PromiseOrValue, } from "../../common"; export interface TestContractInterface extends utils.Interface { diff --git a/packages/hardhat/test/fixture-projects/hardhat-project/typechain-types/artifacts/contracts/TestContract1.ts b/packages/hardhat/test/fixture-projects/hardhat-project/typechain-types/artifacts/contracts/TestContract1.ts index 0a4eed8e5..dff563516 100644 --- a/packages/hardhat/test/fixture-projects/hardhat-project/typechain-types/artifacts/contracts/TestContract1.ts +++ b/packages/hardhat/test/fixture-projects/hardhat-project/typechain-types/artifacts/contracts/TestContract1.ts @@ -9,7 +9,6 @@ import type { TypedEvent, TypedListener, OnEvent, - PromiseOrValue, } from "../../common"; export interface TestContract1Interface extends utils.Interface { diff --git a/packages/target-ethers-v5-test/types/v0.6.4/Issue428_Reproduction/A.ts b/packages/target-ethers-v5-test/types/v0.6.4/Issue428_Reproduction/A.ts index f58b16918..98287f216 100644 --- a/packages/target-ethers-v5-test/types/v0.6.4/Issue428_Reproduction/A.ts +++ b/packages/target-ethers-v5-test/types/v0.6.4/Issue428_Reproduction/A.ts @@ -9,7 +9,6 @@ import type { TypedEvent, TypedListener, OnEvent, - PromiseOrValue, } from "../../common"; export interface AInterface extends utils.Interface { diff --git a/packages/target-ethers-v5-test/types/v0.6.4/Issue428_Reproduction/B.ts b/packages/target-ethers-v5-test/types/v0.6.4/Issue428_Reproduction/B.ts index d0bfc5f5d..2a49529ef 100644 --- a/packages/target-ethers-v5-test/types/v0.6.4/Issue428_Reproduction/B.ts +++ b/packages/target-ethers-v5-test/types/v0.6.4/Issue428_Reproduction/B.ts @@ -9,7 +9,6 @@ import type { TypedEvent, TypedListener, OnEvent, - PromiseOrValue, } from "../../common"; export interface BInterface extends utils.Interface { diff --git a/packages/target-ethers-v5-test/types/v0.6.4/Name-Mangling/NAME12mangling.ts b/packages/target-ethers-v5-test/types/v0.6.4/Name-Mangling/NAME12mangling.ts index 0bc2c5e14..143ad127c 100644 --- a/packages/target-ethers-v5-test/types/v0.6.4/Name-Mangling/NAME12mangling.ts +++ b/packages/target-ethers-v5-test/types/v0.6.4/Name-Mangling/NAME12mangling.ts @@ -17,7 +17,6 @@ import type { TypedEvent, TypedListener, OnEvent, - PromiseOrValue, } from "../../common"; export interface NAME12manglingInterface extends utils.Interface { diff --git a/packages/target-ethers-v5-test/types/v0.8.9/nested/a/NestedLibrary.ts b/packages/target-ethers-v5-test/types/v0.8.9/nested/a/NestedLibrary.ts index f5cc963ab..3bc95b6bb 100644 --- a/packages/target-ethers-v5-test/types/v0.8.9/nested/a/NestedLibrary.ts +++ b/packages/target-ethers-v5-test/types/v0.8.9/nested/a/NestedLibrary.ts @@ -17,7 +17,6 @@ import type { TypedEvent, TypedListener, OnEvent, - PromiseOrValue, } from "../../../common"; export interface NestedLibraryInterface extends utils.Interface { diff --git a/packages/target-ethers-v5-test/types/v0.8.9/nested/b/NestedLibrary.ts b/packages/target-ethers-v5-test/types/v0.8.9/nested/b/NestedLibrary.ts index 54cdfb326..5eef3ca0b 100644 --- a/packages/target-ethers-v5-test/types/v0.8.9/nested/b/NestedLibrary.ts +++ b/packages/target-ethers-v5-test/types/v0.8.9/nested/b/NestedLibrary.ts @@ -17,7 +17,6 @@ import type { TypedEvent, TypedListener, OnEvent, - PromiseOrValue, } from "../../../common"; export interface NestedLibraryInterface extends utils.Interface { diff --git a/packages/target-ethers-v5/src/codegen/index.ts b/packages/target-ethers-v5/src/codegen/index.ts index 1c176af48..09643500f 100644 --- a/packages/target-ethers-v5/src/codegen/index.ts +++ b/packages/target-ethers-v5/src/codegen/index.ts @@ -4,7 +4,6 @@ import { CodegenConfig, Contract, createImportsForUsedIdentifiers, - createImportTypeDeclaration, EventDeclaration, FunctionDeclaration, StructType, @@ -120,29 +119,27 @@ export function codegenContractTypings(contract: Contract, codegenConfig: Codege ? `${new Array(contract.path.length).fill('..').join('/')}/common` : './common' - const imports = - createImportsForUsedIdentifiers( - { - 'type ethers': [ - 'BaseContract', - 'BigNumber', - 'BigNumberish', - 'BytesLike', - 'CallOverrides', - 'ContractTransaction', - 'Overrides', - 'PayableOverrides', - 'PopulatedTransaction', - 'Signer', - 'utils', - ], - 'type @ethersproject/abi': ['FunctionFragment', 'Result', 'EventFragment'], - 'type @ethersproject/providers': ['Listener', 'Provider'], - }, - source, - ) + - '\n' + - createImportTypeDeclaration([...EVENT_IMPORTS, 'PromiseOrValue'], commonPath) + const imports = createImportsForUsedIdentifiers( + { + 'type ethers': [ + 'BaseContract', + 'BigNumber', + 'BigNumberish', + 'BytesLike', + 'CallOverrides', + 'ContractTransaction', + 'Overrides', + 'PayableOverrides', + 'PopulatedTransaction', + 'Signer', + 'utils', + ], + 'type @ethersproject/abi': ['FunctionFragment', 'Result', 'EventFragment'], + 'type @ethersproject/providers': ['Listener', 'Provider'], + [`type ${commonPath}`]: [...EVENT_IMPORTS, 'PromiseOrValue'], + }, + source, + ) return imports + source } @@ -204,25 +201,23 @@ export function codegenContractFactory( const commonPath = `${new Array(contract.path.length + 1).fill('..').join('/')}/common` - const imports = - createImportsForUsedIdentifiers( - { - ethers: [ - 'Signer', - 'utils', - 'Contract', - 'ContractFactory', - 'PayableOverrides', - 'BytesLike', - 'BigNumberish', - 'Overrides', - ], - 'type @ethersproject/providers': ['Provider', 'TransactionRequest'], - }, - source, - ) + - '\n' + - createImportTypeDeclaration(['PromiseOrValue'], commonPath) + const imports = createImportsForUsedIdentifiers( + { + ethers: [ + 'Signer', + 'utils', + 'Contract', + 'ContractFactory', + 'PayableOverrides', + 'BytesLike', + 'BigNumberish', + 'Overrides', + ], + 'type @ethersproject/providers': ['Provider', 'TransactionRequest'], + [`type ${commonPath}`]: ['PromiseOrValue'], + }, + source, + ) return imports + source }