type ContractFunctionsFromAbi<TAbi extends Abi> = { [TFunctionName in TAbiFunctionNames<TAbi>]: ExtractFunctionType< TAbi, TFunctionName >; };