type UseContractResult = UseQueryResult<TContract | undefined> & { contract: TContract | undefined; };