diff --git a/packages/web3-eth/src/utils/reject_if_block_timeout.ts b/packages/web3-eth/src/utils/reject_if_block_timeout.ts index b34febdd13c..93078f3295e 100644 --- a/packages/web3-eth/src/utils/reject_if_block_timeout.ts +++ b/packages/web3-eth/src/utils/reject_if_block_timeout.ts @@ -161,12 +161,12 @@ export async function rejectIfBlockTimeout( web3Context: Web3Context, transactionHash?: Bytes, ): Promise<[Promise, ResourceCleaner]> { - const provider: Web3BaseProvider = web3Context.requestManager.provider as Web3BaseProvider; + const { provider } = web3Context.requestManager; let callingRes: [Promise, ResourceCleaner]; const starterBlockNumber = await getBlockNumber(web3Context, NUMBER_DATA_FORMAT); // TODO: once https://github.com/web3/web3.js/issues/5521 is implemented, remove checking for `enableExperimentalFeatures.useSubscriptionWhenCheckingBlockTimeout` if ( - provider.supportsSubscriptions() && + (provider as Web3BaseProvider).supportsSubscriptions?.() && web3Context.enableExperimentalFeatures.useSubscriptionWhenCheckingBlockTimeout ) { callingRes = await resolveBySubscription(web3Context, starterBlockNumber, transactionHash);