@apollo/client 4.0.0-rc.4 → 4.0.0-rc.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (528) hide show
  1. package/CHANGELOG.md +63 -0
  2. package/README.md +40 -40
  3. package/__cjs/cache/core/cache.cjs +4 -12
  4. package/__cjs/cache/core/cache.cjs.map +1 -1
  5. package/__cjs/cache/core/cache.d.cts +96 -66
  6. package/__cjs/cache/core/types/Cache.cjs +0 -4
  7. package/__cjs/cache/core/types/Cache.cjs.map +1 -1
  8. package/__cjs/cache/core/types/Cache.d.cts +200 -15
  9. package/__cjs/cache/{core/types/DataProxy.cjs → deprecated.cjs} +1 -1
  10. package/__cjs/cache/deprecated.cjs.map +1 -0
  11. package/__cjs/cache/deprecated.d.cts +6 -0
  12. package/__cjs/cache/index.cjs.map +1 -1
  13. package/__cjs/cache/index.d.cts +2 -2
  14. package/__cjs/cache/inmemory/entityStore.cjs +28 -31
  15. package/__cjs/cache/inmemory/entityStore.cjs.map +1 -1
  16. package/__cjs/cache/inmemory/entityStore.d.cts +18 -17
  17. package/__cjs/cache/inmemory/inMemoryCache.cjs +1 -1
  18. package/__cjs/cache/inmemory/inMemoryCache.cjs.map +1 -1
  19. package/__cjs/cache/inmemory/inMemoryCache.d.cts +4 -4
  20. package/__cjs/cache/inmemory/key-extractor.cjs +1 -1
  21. package/__cjs/cache/inmemory/policies.cjs +4 -4
  22. package/__cjs/cache/inmemory/policies.cjs.map +1 -1
  23. package/__cjs/cache/inmemory/policies.d.cts +3 -2
  24. package/__cjs/cache/inmemory/readFromStore.cjs +2 -2
  25. package/__cjs/cache/inmemory/types.d.cts +1 -1
  26. package/__cjs/cache/inmemory/writeToStore.cjs +4 -4
  27. package/__cjs/cache/inmemory/writeToStore.cjs.map +1 -1
  28. package/__cjs/cache/inmemory/writeToStore.d.cts +1 -1
  29. package/__cjs/core/ApolloClient.cjs +137 -117
  30. package/__cjs/core/ApolloClient.cjs.map +1 -1
  31. package/__cjs/core/ApolloClient.d.cts +790 -183
  32. package/__cjs/core/ObservableQuery.cjs +50 -20
  33. package/__cjs/core/ObservableQuery.cjs.map +1 -1
  34. package/__cjs/core/ObservableQuery.d.cts +184 -68
  35. package/__cjs/core/QueryInfo.cjs.map +1 -1
  36. package/__cjs/core/QueryInfo.d.cts +5 -4
  37. package/__cjs/core/QueryManager.cjs +15 -13
  38. package/__cjs/core/QueryManager.cjs.map +1 -1
  39. package/__cjs/core/QueryManager.d.cts +17 -17
  40. package/__cjs/core/deprecated.cjs +3 -0
  41. package/__cjs/core/deprecated.cjs.map +1 -0
  42. package/__cjs/core/deprecated.d.cts +29 -0
  43. package/__cjs/core/index.cjs.map +1 -1
  44. package/__cjs/core/index.d.cts +9 -5
  45. package/__cjs/core/types.d.cts +81 -104
  46. package/__cjs/core/watchQueryOptions.d.cts +8 -297
  47. package/__cjs/dev/setErrorMessageHandler.cjs.map +1 -1
  48. package/__cjs/dev/setErrorMessageHandler.d.cts +4 -4
  49. package/__cjs/errors/CombinedGraphQLErrors.cjs +59 -11
  50. package/__cjs/errors/CombinedGraphQLErrors.cjs.map +1 -1
  51. package/__cjs/errors/CombinedGraphQLErrors.d.cts +146 -11
  52. package/__cjs/errors/CombinedProtocolErrors.cjs +48 -1
  53. package/__cjs/errors/CombinedProtocolErrors.cjs.map +1 -1
  54. package/__cjs/errors/CombinedProtocolErrors.d.cts +126 -2
  55. package/__cjs/errors/LinkError.cjs +45 -2
  56. package/__cjs/errors/LinkError.cjs.map +1 -1
  57. package/__cjs/errors/LinkError.d.cts +45 -2
  58. package/__cjs/errors/LocalStateError.cjs +35 -5
  59. package/__cjs/errors/LocalStateError.cjs.map +1 -1
  60. package/__cjs/errors/LocalStateError.d.cts +41 -5
  61. package/__cjs/errors/ServerError.cjs +50 -8
  62. package/__cjs/errors/ServerError.cjs.map +1 -1
  63. package/__cjs/errors/ServerError.d.cts +70 -11
  64. package/__cjs/errors/ServerParseError.cjs +45 -8
  65. package/__cjs/errors/ServerParseError.cjs.map +1 -1
  66. package/__cjs/errors/ServerParseError.d.cts +71 -16
  67. package/__cjs/errors/UnconventionalError.cjs +46 -2
  68. package/__cjs/errors/UnconventionalError.cjs.map +1 -1
  69. package/__cjs/errors/UnconventionalError.d.cts +46 -2
  70. package/__cjs/incremental/handlers/notImplemented.cjs +1 -1
  71. package/__cjs/invariantErrorCodes.cjs +72 -80
  72. package/__cjs/link/batch/batchLink.cjs.map +1 -1
  73. package/__cjs/link/batch-http/batchHttpLink.cjs +2 -2
  74. package/__cjs/link/batch-http/batchHttpLink.cjs.map +1 -1
  75. package/__cjs/link/client-awareness/ClientAwarenessLink.cjs.map +1 -1
  76. package/__cjs/link/client-awareness/ClientAwarenessLink.d.cts +4 -4
  77. package/__cjs/link/context/index.cjs +1 -1
  78. package/__cjs/link/context/index.cjs.map +1 -1
  79. package/__cjs/link/context/index.d.cts +1 -1
  80. package/__cjs/link/core/ApolloLink.cjs +2 -2
  81. package/__cjs/link/core/types.d.cts +2 -2
  82. package/__cjs/link/error/index.cjs.map +1 -1
  83. package/__cjs/link/error/index.d.cts +16 -1
  84. package/__cjs/link/http/HttpLink.cjs.map +1 -1
  85. package/__cjs/link/http/HttpLink.d.cts +13 -2
  86. package/__cjs/link/http/checkFetcher.cjs +1 -1
  87. package/__cjs/link/http/parseAndCheckHttpResponse.cjs +1 -1
  88. package/__cjs/link/http/serializeFetchParameter.cjs +1 -1
  89. package/__cjs/link/persisted-queries/index.cjs +2 -2
  90. package/__cjs/link/persisted-queries/index.cjs.map +1 -1
  91. package/__cjs/link/persisted-queries/index.d.cts +11 -11
  92. package/__cjs/link/retry/delayFunction.cjs.map +1 -1
  93. package/__cjs/link/retry/delayFunction.d.cts +1 -1
  94. package/__cjs/link/retry/retryFunction.cjs.map +1 -1
  95. package/__cjs/link/retry/retryFunction.d.cts +1 -1
  96. package/__cjs/link/retry/retryLink.cjs.map +1 -1
  97. package/__cjs/link/schema/index.cjs.map +1 -1
  98. package/__cjs/link/utils/validateOperation.cjs +1 -1
  99. package/__cjs/link/ws/index.cjs.map +1 -1
  100. package/__cjs/local-state/LocalState.cjs +55 -9
  101. package/__cjs/local-state/LocalState.cjs.map +1 -1
  102. package/__cjs/local-state/LocalState.d.cts +94 -0
  103. package/__cjs/masking/GraphQLCodegenDataMasking.d.cts +6 -7
  104. package/__cjs/masking/internal/types.d.cts +70 -70
  105. package/__cjs/masking/maskDefinition.cjs +2 -2
  106. package/__cjs/masking/maskFragment.cjs +2 -2
  107. package/__cjs/masking/maskOperation.cjs +1 -1
  108. package/__cjs/masking/utils.cjs +3 -3
  109. package/__cjs/react/context/ApolloContext.cjs +1 -1
  110. package/__cjs/react/context/ApolloProvider.cjs +1 -1
  111. package/__cjs/react/hooks/internal/useDeepMemo.cjs +0 -3
  112. package/__cjs/react/hooks/internal/useDeepMemo.cjs.map +1 -1
  113. package/__cjs/react/hooks/internal/validateSuspenseHookOptions.cjs.map +1 -1
  114. package/__cjs/react/hooks/internal/validateSuspenseHookOptions.d.cts +2 -2
  115. package/__cjs/react/hooks/internal/wrapHook.cjs +1 -0
  116. package/__cjs/react/hooks/internal/wrapHook.cjs.map +1 -1
  117. package/__cjs/react/hooks/internal/wrapHook.d.cts +8 -7
  118. package/__cjs/react/hooks/useApolloClient.cjs +2 -2
  119. package/__cjs/react/hooks/useApolloClient.cjs.map +1 -1
  120. package/__cjs/react/hooks/useApolloClient.d.cts +2 -2
  121. package/__cjs/react/hooks/useBackgroundQuery.cjs.map +1 -1
  122. package/__cjs/react/hooks/useBackgroundQuery.d.cts +814 -82
  123. package/__cjs/react/hooks/useFragment.cjs +11 -9
  124. package/__cjs/react/hooks/useFragment.cjs.map +1 -1
  125. package/__cjs/react/hooks/useFragment.d.cts +53 -2
  126. package/__cjs/react/hooks/useLazyQuery.cjs +0 -38
  127. package/__cjs/react/hooks/useLazyQuery.cjs.map +1 -1
  128. package/__cjs/react/hooks/useLazyQuery.d.cts +313 -119
  129. package/__cjs/react/hooks/useLoadableQuery.cjs.map +1 -1
  130. package/__cjs/react/hooks/useLoadableQuery.d.cts +230 -44
  131. package/__cjs/react/hooks/useMutation.cjs +6 -7
  132. package/__cjs/react/hooks/useMutation.cjs.map +1 -1
  133. package/__cjs/react/hooks/useMutation.d.cts +57 -17
  134. package/__cjs/react/hooks/useQuery.cjs +1 -35
  135. package/__cjs/react/hooks/useQuery.cjs.map +1 -1
  136. package/__cjs/react/hooks/useQuery.d.cts +407 -238
  137. package/__cjs/react/hooks/useQueryRefHandlers.cjs +2 -1
  138. package/__cjs/react/hooks/useQueryRefHandlers.cjs.map +1 -1
  139. package/__cjs/react/hooks/useQueryRefHandlers.d.cts +25 -1
  140. package/__cjs/react/hooks/useReactiveVar.cjs +2 -1
  141. package/__cjs/react/hooks/useReactiveVar.cjs.map +1 -1
  142. package/__cjs/react/hooks/useReactiveVar.d.cts +2 -1
  143. package/__cjs/react/hooks/useReadQuery.cjs +29 -0
  144. package/__cjs/react/hooks/useReadQuery.cjs.map +1 -1
  145. package/__cjs/react/hooks/useReadQuery.d.cts +95 -16
  146. package/__cjs/react/hooks/useSubscription.cjs +8 -9
  147. package/__cjs/react/hooks/useSubscription.cjs.map +1 -1
  148. package/__cjs/react/hooks/useSubscription.d.cts +153 -69
  149. package/__cjs/react/hooks/useSuspenseFragment.cjs.map +1 -1
  150. package/__cjs/react/hooks/useSuspenseFragment.d.cts +61 -29
  151. package/__cjs/react/hooks/useSuspenseQuery.cjs +4 -1
  152. package/__cjs/react/hooks/useSuspenseQuery.cjs.map +1 -1
  153. package/__cjs/react/hooks/useSuspenseQuery.d.cts +605 -160
  154. package/__cjs/react/index.cjs +1 -5
  155. package/__cjs/react/index.cjs.map +1 -1
  156. package/__cjs/react/index.d.cts +0 -2
  157. package/__cjs/react/index.react-server.cjs +1 -3
  158. package/__cjs/react/index.react-server.cjs.map +1 -1
  159. package/__cjs/react/index.react-server.d.cts +0 -1
  160. package/__cjs/react/internal/cache/FragmentReference.cjs +1 -1
  161. package/__cjs/react/internal/cache/FragmentReference.cjs.map +1 -1
  162. package/__cjs/react/internal/cache/FragmentReference.d.cts +2 -3
  163. package/__cjs/react/internal/cache/QueryReference.cjs.map +1 -1
  164. package/__cjs/react/internal/cache/QueryReference.d.cts +11 -11
  165. package/__cjs/react/internal/cache/SuspenseCache.cjs.map +1 -1
  166. package/__cjs/react/internal/cache/SuspenseCache.d.cts +2 -2
  167. package/__cjs/react/internal/cache/getSuspenseCache.cjs.map +1 -1
  168. package/__cjs/react/internal/cache/getSuspenseCache.d.cts +6 -4
  169. package/__cjs/react/internal/index.cjs +1 -0
  170. package/__cjs/react/internal/index.cjs.map +1 -1
  171. package/__cjs/react/internal/index.d.cts +1 -1
  172. package/__cjs/react/internal/types.d.cts +3 -3
  173. package/__cjs/react/query-preloader/createQueryPreloader.cjs +1 -1
  174. package/__cjs/react/query-preloader/createQueryPreloader.cjs.map +1 -1
  175. package/__cjs/react/query-preloader/createQueryPreloader.d.cts +31 -31
  176. package/__cjs/react/ssr/prerenderStatic.cjs +5 -4
  177. package/__cjs/react/ssr/prerenderStatic.cjs.map +1 -1
  178. package/__cjs/react/ssr/prerenderStatic.d.cts +11 -9
  179. package/__cjs/react/ssr/useSSRQuery.cjs.map +1 -1
  180. package/__cjs/react/types/deprecated.d.cts +1 -1
  181. package/__cjs/react/types/types.documentation.d.cts +22 -11
  182. package/__cjs/testing/core/mocking/mockLink.cjs.map +1 -1
  183. package/__cjs/testing/core/mocking/mockLink.d.cts +3 -2
  184. package/__cjs/testing/core/types/deprecated.d.cts +3 -2
  185. package/__cjs/testing/react/MockedProvider.cjs.map +1 -1
  186. package/__cjs/testing/react/MockedProvider.d.cts +2 -3
  187. package/__cjs/utilities/HKT.d.cts +8 -7
  188. package/__cjs/utilities/caching/sizes.cjs +3 -3
  189. package/__cjs/utilities/caching/sizes.cjs.map +1 -1
  190. package/__cjs/utilities/caching/sizes.d.cts +4 -6
  191. package/__cjs/utilities/graphql/DocumentTransform.cjs +2 -2
  192. package/__cjs/utilities/graphql/DocumentTransform.cjs.map +1 -1
  193. package/__cjs/utilities/index.cjs +2 -3
  194. package/__cjs/utilities/index.cjs.map +1 -1
  195. package/__cjs/utilities/index.d.cts +1 -2
  196. package/__cjs/utilities/{shared → internal}/canonicalStringify.cjs +5 -7
  197. package/__cjs/utilities/internal/canonicalStringify.cjs.map +1 -0
  198. package/__cjs/utilities/{shared → internal}/canonicalStringify.d.cts +1 -1
  199. package/__cjs/utilities/internal/checkDocument.cjs +2 -2
  200. package/__cjs/utilities/internal/checkDocument.cjs.map +1 -1
  201. package/__cjs/utilities/internal/createFragmentMap.cjs.map +1 -1
  202. package/__cjs/{core → utilities/internal}/equalByQuery.cjs +13 -7
  203. package/__cjs/utilities/internal/equalByQuery.cjs.map +1 -0
  204. package/__cjs/utilities/internal/equalByQuery.d.cts +5 -0
  205. package/__cjs/utilities/internal/getFragmentQueryDocument.cjs +13 -3
  206. package/__cjs/utilities/internal/getFragmentQueryDocument.cjs.map +1 -1
  207. package/__cjs/utilities/internal/getFragmentQueryDocument.d.cts +13 -3
  208. package/__cjs/utilities/internal/getMemoryInternals.cjs.map +1 -1
  209. package/__cjs/utilities/internal/getStoreKeyName.cjs +9 -7
  210. package/__cjs/utilities/internal/getStoreKeyName.cjs.map +1 -1
  211. package/__cjs/utilities/internal/index.cjs +8 -2
  212. package/__cjs/utilities/internal/index.cjs.map +1 -1
  213. package/__cjs/utilities/internal/index.d.cts +4 -0
  214. package/__cjs/utilities/internal/mergeOptions.cjs.map +1 -1
  215. package/__cjs/utilities/internal/mergeOptions.d.cts +2 -2
  216. package/__cjs/utilities/internal/removeFragmentSpreads.cjs +14 -0
  217. package/__cjs/utilities/internal/removeFragmentSpreads.cjs.map +1 -0
  218. package/__cjs/utilities/internal/removeFragmentSpreads.d.cts +3 -0
  219. package/__cjs/utilities/internal/toQueryResult.cjs.map +1 -1
  220. package/__cjs/utilities/internal/toQueryResult.d.cts +2 -2
  221. package/__cjs/utilities/internal/types/DocumentationTypes.cjs +3 -0
  222. package/__cjs/utilities/internal/types/DocumentationTypes.cjs.map +1 -0
  223. package/__cjs/utilities/internal/types/DocumentationTypes.d.cts +96 -0
  224. package/__cjs/utilities/internal/types/NoInfer.d.cts +31 -25
  225. package/__cjs/utilities/subscriptions/relay/index.cjs +2 -0
  226. package/__cjs/utilities/subscriptions/relay/index.cjs.map +1 -1
  227. package/__cjs/version.cjs +1 -1
  228. package/cache/core/cache.d.ts +96 -66
  229. package/cache/core/cache.js +5 -13
  230. package/cache/core/cache.js.map +1 -1
  231. package/cache/core/types/Cache.d.ts +200 -15
  232. package/cache/core/types/Cache.js +1 -3
  233. package/cache/core/types/Cache.js.map +1 -1
  234. package/cache/deprecated.d.ts +6 -0
  235. package/cache/deprecated.js +2 -0
  236. package/cache/deprecated.js.map +1 -0
  237. package/cache/index.d.ts +2 -2
  238. package/cache/index.js.map +1 -1
  239. package/cache/inmemory/entityStore.d.ts +18 -17
  240. package/cache/inmemory/entityStore.js +28 -31
  241. package/cache/inmemory/entityStore.js.map +1 -1
  242. package/cache/inmemory/inMemoryCache.d.ts +4 -4
  243. package/cache/inmemory/inMemoryCache.js +1 -1
  244. package/cache/inmemory/inMemoryCache.js.map +1 -1
  245. package/cache/inmemory/key-extractor.js +1 -1
  246. package/cache/inmemory/policies.d.ts +3 -2
  247. package/cache/inmemory/policies.js +4 -4
  248. package/cache/inmemory/policies.js.map +1 -1
  249. package/cache/inmemory/readFromStore.js +2 -2
  250. package/cache/inmemory/types.d.ts +1 -1
  251. package/cache/inmemory/types.js.map +1 -1
  252. package/cache/inmemory/writeToStore.d.ts +1 -1
  253. package/cache/inmemory/writeToStore.js +4 -4
  254. package/cache/inmemory/writeToStore.js.map +1 -1
  255. package/core/ApolloClient.d.ts +790 -183
  256. package/core/ApolloClient.js +138 -118
  257. package/core/ApolloClient.js.map +1 -1
  258. package/core/ObservableQuery.d.ts +184 -68
  259. package/core/ObservableQuery.js +50 -20
  260. package/core/ObservableQuery.js.map +1 -1
  261. package/core/QueryInfo.d.ts +5 -4
  262. package/core/QueryInfo.js.map +1 -1
  263. package/core/QueryManager.d.ts +17 -17
  264. package/core/QueryManager.js +15 -13
  265. package/core/QueryManager.js.map +1 -1
  266. package/core/deprecated.d.ts +29 -0
  267. package/core/deprecated.js +2 -0
  268. package/core/deprecated.js.map +1 -0
  269. package/core/index.d.ts +9 -5
  270. package/core/index.js.map +1 -1
  271. package/core/types.d.ts +81 -104
  272. package/core/types.js.map +1 -1
  273. package/core/watchQueryOptions.d.ts +9 -298
  274. package/core/watchQueryOptions.js.map +1 -1
  275. package/dev/setErrorMessageHandler.d.ts +4 -4
  276. package/dev/setErrorMessageHandler.js.map +1 -1
  277. package/errors/CombinedGraphQLErrors.d.ts +147 -12
  278. package/errors/CombinedGraphQLErrors.js +60 -12
  279. package/errors/CombinedGraphQLErrors.js.map +1 -1
  280. package/errors/CombinedProtocolErrors.d.ts +127 -3
  281. package/errors/CombinedProtocolErrors.js +49 -2
  282. package/errors/CombinedProtocolErrors.js.map +1 -1
  283. package/errors/LinkError.d.ts +45 -2
  284. package/errors/LinkError.js +45 -2
  285. package/errors/LinkError.js.map +1 -1
  286. package/errors/LocalStateError.d.ts +42 -6
  287. package/errors/LocalStateError.js +36 -6
  288. package/errors/LocalStateError.js.map +1 -1
  289. package/errors/ServerError.d.ts +71 -12
  290. package/errors/ServerError.js +51 -9
  291. package/errors/ServerError.js.map +1 -1
  292. package/errors/ServerParseError.d.ts +72 -17
  293. package/errors/ServerParseError.js +46 -9
  294. package/errors/ServerParseError.js.map +1 -1
  295. package/errors/UnconventionalError.d.ts +46 -2
  296. package/errors/UnconventionalError.js +46 -2
  297. package/errors/UnconventionalError.js.map +1 -1
  298. package/incremental/handlers/notImplemented.js +1 -1
  299. package/invariantErrorCodes.js +72 -80
  300. package/link/batch/batchLink.js.map +1 -1
  301. package/link/batch-http/batchHttpLink.js +1 -1
  302. package/link/batch-http/batchHttpLink.js.map +1 -1
  303. package/link/client-awareness/ClientAwarenessLink.d.ts +4 -4
  304. package/link/client-awareness/ClientAwarenessLink.js.map +1 -1
  305. package/link/context/index.d.ts +1 -1
  306. package/link/context/index.js +1 -1
  307. package/link/context/index.js.map +1 -1
  308. package/link/core/ApolloLink.js +2 -2
  309. package/link/core/types.d.ts +2 -2
  310. package/link/core/types.js.map +1 -1
  311. package/link/error/index.d.ts +16 -1
  312. package/link/error/index.js.map +1 -1
  313. package/link/http/HttpLink.d.ts +13 -2
  314. package/link/http/HttpLink.js.map +1 -1
  315. package/link/http/checkFetcher.js +1 -1
  316. package/link/http/parseAndCheckHttpResponse.js +1 -1
  317. package/link/http/serializeFetchParameter.js +1 -1
  318. package/link/persisted-queries/index.d.ts +11 -11
  319. package/link/persisted-queries/index.js +2 -2
  320. package/link/persisted-queries/index.js.map +1 -1
  321. package/link/retry/delayFunction.d.ts +1 -1
  322. package/link/retry/delayFunction.js.map +1 -1
  323. package/link/retry/retryFunction.d.ts +1 -1
  324. package/link/retry/retryFunction.js.map +1 -1
  325. package/link/retry/retryLink.js.map +1 -1
  326. package/link/schema/index.js.map +1 -1
  327. package/link/utils/validateOperation.js +1 -1
  328. package/link/ws/index.js.map +1 -1
  329. package/local-state/LocalState.d.ts +94 -0
  330. package/local-state/LocalState.js +55 -9
  331. package/local-state/LocalState.js.map +1 -1
  332. package/masking/GraphQLCodegenDataMasking.d.ts +6 -7
  333. package/masking/GraphQLCodegenDataMasking.js.map +1 -1
  334. package/masking/internal/types.d.ts +70 -70
  335. package/masking/internal/types.js.map +1 -1
  336. package/masking/maskDefinition.js +2 -2
  337. package/masking/maskFragment.js +2 -2
  338. package/masking/maskOperation.js +1 -1
  339. package/masking/types.js.map +1 -1
  340. package/masking/utils.js +3 -3
  341. package/package.json +1 -1
  342. package/react/context/ApolloContext.js +1 -1
  343. package/react/context/ApolloProvider.js +1 -1
  344. package/react/hooks/internal/useDeepMemo.js +0 -3
  345. package/react/hooks/internal/useDeepMemo.js.map +1 -1
  346. package/react/hooks/internal/validateSuspenseHookOptions.d.ts +2 -2
  347. package/react/hooks/internal/validateSuspenseHookOptions.js.map +1 -1
  348. package/react/hooks/internal/wrapHook.d.ts +8 -7
  349. package/react/hooks/internal/wrapHook.js +1 -0
  350. package/react/hooks/internal/wrapHook.js.map +1 -1
  351. package/react/hooks/useApolloClient.d.ts +2 -2
  352. package/react/hooks/useApolloClient.js +2 -2
  353. package/react/hooks/useApolloClient.js.map +1 -1
  354. package/react/hooks/useBackgroundQuery.d.ts +814 -82
  355. package/react/hooks/useBackgroundQuery.js.map +1 -1
  356. package/react/hooks/useFragment.d.ts +54 -3
  357. package/react/hooks/useFragment.js +11 -9
  358. package/react/hooks/useFragment.js.map +1 -1
  359. package/react/hooks/useLazyQuery.d.ts +313 -119
  360. package/react/hooks/useLazyQuery.js +0 -38
  361. package/react/hooks/useLazyQuery.js.map +1 -1
  362. package/react/hooks/useLoadableQuery.d.ts +230 -44
  363. package/react/hooks/useLoadableQuery.js.map +1 -1
  364. package/react/hooks/useMutation.d.ts +57 -17
  365. package/react/hooks/useMutation.js +6 -7
  366. package/react/hooks/useMutation.js.map +1 -1
  367. package/react/hooks/useQuery.d.ts +407 -238
  368. package/react/hooks/useQuery.js +1 -35
  369. package/react/hooks/useQuery.js.map +1 -1
  370. package/react/hooks/useQueryRefHandlers.d.ts +25 -1
  371. package/react/hooks/useQueryRefHandlers.js +2 -1
  372. package/react/hooks/useQueryRefHandlers.js.map +1 -1
  373. package/react/hooks/useReactiveVar.d.ts +2 -1
  374. package/react/hooks/useReactiveVar.js +2 -1
  375. package/react/hooks/useReactiveVar.js.map +1 -1
  376. package/react/hooks/useReadQuery.d.ts +96 -17
  377. package/react/hooks/useReadQuery.js +29 -0
  378. package/react/hooks/useReadQuery.js.map +1 -1
  379. package/react/hooks/useSubscription.d.ts +153 -69
  380. package/react/hooks/useSubscription.js +8 -9
  381. package/react/hooks/useSubscription.js.map +1 -1
  382. package/react/hooks/useSuspenseFragment.d.ts +62 -30
  383. package/react/hooks/useSuspenseFragment.js.map +1 -1
  384. package/react/hooks/useSuspenseQuery.d.ts +605 -160
  385. package/react/hooks/useSuspenseQuery.js +4 -1
  386. package/react/hooks/useSuspenseQuery.js.map +1 -1
  387. package/react/hooks-compiled/internal/useDeepMemo.js +0 -3
  388. package/react/hooks-compiled/internal/useDeepMemo.js.map +1 -1
  389. package/react/hooks-compiled/internal/validateSuspenseHookOptions.d.ts +2 -2
  390. package/react/hooks-compiled/internal/validateSuspenseHookOptions.js.map +1 -1
  391. package/react/hooks-compiled/internal/wrapHook.d.ts +8 -7
  392. package/react/hooks-compiled/internal/wrapHook.js +1 -0
  393. package/react/hooks-compiled/internal/wrapHook.js.map +1 -1
  394. package/react/hooks-compiled/useApolloClient.d.ts +2 -2
  395. package/react/hooks-compiled/useApolloClient.js +2 -2
  396. package/react/hooks-compiled/useApolloClient.js.map +1 -1
  397. package/react/hooks-compiled/useBackgroundQuery.d.ts +814 -82
  398. package/react/hooks-compiled/useBackgroundQuery.js.map +1 -1
  399. package/react/hooks-compiled/useFragment.d.ts +54 -3
  400. package/react/hooks-compiled/useFragment.js +11 -9
  401. package/react/hooks-compiled/useFragment.js.map +1 -1
  402. package/react/hooks-compiled/useLazyQuery.d.ts +313 -119
  403. package/react/hooks-compiled/useLazyQuery.js +0 -38
  404. package/react/hooks-compiled/useLazyQuery.js.map +1 -1
  405. package/react/hooks-compiled/useLoadableQuery.d.ts +230 -44
  406. package/react/hooks-compiled/useLoadableQuery.js.map +1 -1
  407. package/react/hooks-compiled/useMutation.d.ts +57 -17
  408. package/react/hooks-compiled/useMutation.js +6 -7
  409. package/react/hooks-compiled/useMutation.js.map +1 -1
  410. package/react/hooks-compiled/useQuery.d.ts +407 -238
  411. package/react/hooks-compiled/useQuery.js +1 -35
  412. package/react/hooks-compiled/useQuery.js.map +1 -1
  413. package/react/hooks-compiled/useQueryRefHandlers.d.ts +25 -1
  414. package/react/hooks-compiled/useQueryRefHandlers.js +2 -1
  415. package/react/hooks-compiled/useQueryRefHandlers.js.map +1 -1
  416. package/react/hooks-compiled/useReactiveVar.d.ts +2 -1
  417. package/react/hooks-compiled/useReactiveVar.js +2 -1
  418. package/react/hooks-compiled/useReactiveVar.js.map +1 -1
  419. package/react/hooks-compiled/useReadQuery.d.ts +96 -17
  420. package/react/hooks-compiled/useReadQuery.js +29 -0
  421. package/react/hooks-compiled/useReadQuery.js.map +1 -1
  422. package/react/hooks-compiled/useSubscription.d.ts +153 -69
  423. package/react/hooks-compiled/useSubscription.js +8 -9
  424. package/react/hooks-compiled/useSubscription.js.map +1 -1
  425. package/react/hooks-compiled/useSuspenseFragment.d.ts +62 -30
  426. package/react/hooks-compiled/useSuspenseFragment.js.map +1 -1
  427. package/react/hooks-compiled/useSuspenseQuery.d.ts +605 -160
  428. package/react/hooks-compiled/useSuspenseQuery.js.map +1 -1
  429. package/react/index.compiled.d.ts +0 -2
  430. package/react/index.compiled.js +0 -2
  431. package/react/index.compiled.js.map +1 -1
  432. package/react/index.d.ts +0 -2
  433. package/react/index.js +0 -2
  434. package/react/index.js.map +1 -1
  435. package/react/index.react-server.d.ts +0 -1
  436. package/react/index.react-server.js +0 -2
  437. package/react/index.react-server.js.map +1 -1
  438. package/react/internal/cache/FragmentReference.d.ts +2 -3
  439. package/react/internal/cache/FragmentReference.js +1 -1
  440. package/react/internal/cache/FragmentReference.js.map +1 -1
  441. package/react/internal/cache/QueryReference.d.ts +11 -11
  442. package/react/internal/cache/QueryReference.js.map +1 -1
  443. package/react/internal/cache/SuspenseCache.d.ts +2 -2
  444. package/react/internal/cache/SuspenseCache.js.map +1 -1
  445. package/react/internal/cache/getSuspenseCache.d.ts +6 -4
  446. package/react/internal/cache/getSuspenseCache.js.map +1 -1
  447. package/react/internal/index.d.ts +1 -1
  448. package/react/internal/index.js +1 -0
  449. package/react/internal/index.js.map +1 -1
  450. package/react/internal/types.d.ts +3 -3
  451. package/react/internal/types.js.map +1 -1
  452. package/react/query-preloader/createQueryPreloader.d.ts +31 -31
  453. package/react/query-preloader/createQueryPreloader.js +1 -1
  454. package/react/query-preloader/createQueryPreloader.js.map +1 -1
  455. package/react/ssr/prerenderStatic.d.ts +11 -9
  456. package/react/ssr/prerenderStatic.js +5 -4
  457. package/react/ssr/prerenderStatic.js.map +1 -1
  458. package/react/ssr/useSSRQuery.js.map +1 -1
  459. package/react/types/deprecated.d.ts +1 -1
  460. package/react/types/deprecated.js.map +1 -1
  461. package/react/types/types.documentation.d.ts +22 -11
  462. package/react/types/types.documentation.js.map +1 -1
  463. package/testing/core/mocking/mockLink.d.ts +3 -2
  464. package/testing/core/mocking/mockLink.js.map +1 -1
  465. package/testing/core/types/deprecated.d.ts +3 -2
  466. package/testing/core/types/deprecated.js.map +1 -1
  467. package/testing/react/MockedProvider.d.ts +2 -3
  468. package/testing/react/MockedProvider.js.map +1 -1
  469. package/utilities/HKT.d.ts +8 -7
  470. package/utilities/HKT.js.map +1 -1
  471. package/utilities/caching/sizes.d.ts +4 -6
  472. package/utilities/caching/sizes.js +3 -3
  473. package/utilities/caching/sizes.js.map +1 -1
  474. package/utilities/graphql/DocumentTransform.js +1 -1
  475. package/utilities/graphql/DocumentTransform.js.map +1 -1
  476. package/utilities/index.d.ts +1 -2
  477. package/utilities/index.js +1 -2
  478. package/utilities/index.js.map +1 -1
  479. package/utilities/{shared → internal}/canonicalStringify.d.ts +1 -1
  480. package/utilities/{shared → internal}/canonicalStringify.js +4 -6
  481. package/utilities/internal/canonicalStringify.js.map +1 -0
  482. package/utilities/internal/checkDocument.js +1 -1
  483. package/utilities/internal/checkDocument.js.map +1 -1
  484. package/utilities/internal/createFragmentMap.js.map +1 -1
  485. package/utilities/internal/equalByQuery.d.ts +5 -0
  486. package/{core → utilities/internal}/equalByQuery.js +7 -1
  487. package/utilities/internal/equalByQuery.js.map +1 -0
  488. package/utilities/internal/getFragmentQueryDocument.d.ts +13 -3
  489. package/utilities/internal/getFragmentQueryDocument.js +13 -3
  490. package/utilities/internal/getFragmentQueryDocument.js.map +1 -1
  491. package/utilities/internal/getMemoryInternals.js.map +1 -1
  492. package/utilities/internal/getStoreKeyName.js +9 -7
  493. package/utilities/internal/getStoreKeyName.js.map +1 -1
  494. package/utilities/internal/index.d.ts +4 -0
  495. package/utilities/internal/index.js +3 -0
  496. package/utilities/internal/index.js.map +1 -1
  497. package/utilities/internal/mergeOptions.d.ts +2 -2
  498. package/utilities/internal/mergeOptions.js.map +1 -1
  499. package/utilities/internal/removeFragmentSpreads.d.ts +3 -0
  500. package/utilities/internal/removeFragmentSpreads.js +11 -0
  501. package/utilities/internal/removeFragmentSpreads.js.map +1 -0
  502. package/utilities/internal/toQueryResult.d.ts +2 -2
  503. package/utilities/internal/toQueryResult.js.map +1 -1
  504. package/utilities/internal/types/DocumentationTypes.d.ts +96 -0
  505. package/utilities/internal/types/DocumentationTypes.js +2 -0
  506. package/utilities/internal/types/DocumentationTypes.js.map +1 -0
  507. package/utilities/internal/types/NoInfer.d.ts +31 -25
  508. package/utilities/internal/types/NoInfer.js.map +1 -1
  509. package/utilities/subscriptions/relay/index.js +2 -0
  510. package/utilities/subscriptions/relay/index.js.map +1 -1
  511. package/version.js +1 -1
  512. package/__cjs/cache/core/types/DataProxy.cjs.map +0 -1
  513. package/__cjs/cache/core/types/DataProxy.d.cts +0 -140
  514. package/__cjs/core/equalByQuery.cjs.map +0 -1
  515. package/__cjs/core/equalByQuery.d.cts +0 -4
  516. package/__cjs/react/context/ApolloConsumer.cjs +0 -16
  517. package/__cjs/react/context/ApolloConsumer.cjs.map +0 -1
  518. package/__cjs/react/context/ApolloConsumer.d.cts +0 -10
  519. package/__cjs/utilities/shared/canonicalStringify.cjs.map +0 -1
  520. package/cache/core/types/DataProxy.d.ts +0 -140
  521. package/cache/core/types/DataProxy.js +0 -2
  522. package/cache/core/types/DataProxy.js.map +0 -1
  523. package/core/equalByQuery.d.ts +0 -4
  524. package/core/equalByQuery.js.map +0 -1
  525. package/react/context/ApolloConsumer.d.ts +0 -10
  526. package/react/context/ApolloConsumer.js +0 -11
  527. package/react/context/ApolloConsumer.js.map +0 -1
  528. package/utilities/shared/canonicalStringify.js.map +0 -1
@@ -1,265 +1,434 @@
1
- import type { ApolloClient, ApolloQueryResult, DataState, DefaultContext, DocumentNode, ErrorLike, ErrorPolicy, FetchMoreOptions, GetDataState, ObservableQuery, OperationVariables, QueryResult, RefetchWritePolicy, SubscribeToMoreFunction, TypedDocumentNode, UpdateQueryMapFn, WatchQueryFetchPolicy, WatchQueryOptions } from "@apollo/client";
1
+ import type { ApolloClient, DataState, DefaultContext, DocumentNode, ErrorLike, ErrorPolicy, GetDataState, InternalTypes, ObservableQuery, OperationVariables, RefetchWritePolicy, SubscribeToMoreFunction, TypedDocumentNode, UpdateQueryMapFn, WatchQueryFetchPolicy } from "@apollo/client";
2
2
  import { NetworkStatus } from "@apollo/client";
3
3
  import type { MaybeMasked } from "@apollo/client/masking";
4
- import type { NoInfer, VariablesOption } from "@apollo/client/utilities/internal";
5
- import type { NextFetchPolicyContext } from "../../core/watchQueryOptions.js";
4
+ import type { DocumentationTypes as UtilityDocumentationTypes, NoInfer, VariablesOption } from "@apollo/client/utilities/internal";
6
5
  export declare namespace useQuery {
7
- type Options<TData = unknown, TVariables extends OperationVariables = OperationVariables> = {
6
+ namespace Base {
7
+ interface Options<TData = unknown, TVariables extends OperationVariables = OperationVariables> {
8
+ /**
9
+ * Specifies how the query interacts with the Apollo Client cache during execution (for example, whether it checks the cache for results before sending a request to the server).
10
+ *
11
+ * For details, see [Setting a fetch policy](https://www.apollographql.com/docs/react/data/queries/#setting-a-fetch-policy).
12
+ *
13
+ * The default value is `cache-first`.
14
+ *
15
+ * @docGroup
16
+ *
17
+ * 3. Caching options
18
+ */
19
+ fetchPolicy?: WatchQueryFetchPolicy;
20
+ /**
21
+ * Specifies the `FetchPolicy` to be used after this query has completed.
22
+ *
23
+ * @docGroup
24
+ *
25
+ * 3. Caching options
26
+ */
27
+ nextFetchPolicy?: WatchQueryFetchPolicy | ((this: ApolloClient.WatchQueryOptions<TData, TVariables>, currentFetchPolicy: WatchQueryFetchPolicy, context: InternalTypes.NextFetchPolicyContext<TData, TVariables>) => WatchQueryFetchPolicy);
28
+ /**
29
+ * Defaults to the initial value of options.fetchPolicy, but can be explicitly configured to specify the WatchQueryFetchPolicy to revert back to whenever variables change (unless nextFetchPolicy intervenes).
30
+ *
31
+ * @docGroup
32
+ *
33
+ * 3. Caching options
34
+ */
35
+ initialFetchPolicy?: WatchQueryFetchPolicy;
36
+ /**
37
+ * Specifies whether a `NetworkStatus.refetch` operation should merge incoming field data with existing data, or overwrite the existing data. Overwriting is probably preferable, but merging is currently the default behavior, for backwards compatibility with Apollo Client 3.x.
38
+ *
39
+ * @docGroup
40
+ *
41
+ * 3. Caching options
42
+ */
43
+ refetchWritePolicy?: RefetchWritePolicy;
44
+ /**
45
+ * Specifies how the query handles a response that returns both GraphQL errors and partial results.
46
+ *
47
+ * For details, see [GraphQL error policies](https://www.apollographql.com/docs/react/data/error-handling/#graphql-error-policies).
48
+ *
49
+ * The default value is `none`, meaning that the query result includes error details but not partial results.
50
+ *
51
+ * @docGroup
52
+ *
53
+ * 1. Operation options
54
+ */
55
+ errorPolicy?: ErrorPolicy;
56
+ /**
57
+ * Specifies the interval (in milliseconds) at which the query polls for updated results.
58
+ *
59
+ * The default value is `0` (no polling).
60
+ *
61
+ * @docGroup
62
+ *
63
+ * 2. Networking options
64
+ */
65
+ pollInterval?: number;
66
+ /**
67
+ * If `true`, the in-progress query's associated component re-renders whenever the network status changes or a network error occurs.
68
+ *
69
+ * The default value is `true`.
70
+ *
71
+ * @docGroup
72
+ *
73
+ * 2. Networking options
74
+ */
75
+ notifyOnNetworkStatusChange?: boolean;
76
+ /**
77
+ * If `true`, the query can return partial results from the cache if the cache doesn't contain results for all queried fields.
78
+ *
79
+ * The default value is `false`.
80
+ *
81
+ * @docGroup
82
+ *
83
+ * 3. Caching options
84
+ */
85
+ returnPartialData?: boolean;
86
+ /**
87
+ * A callback function that's called whenever a refetch attempt occurs while polling. If the function returns `true`, the refetch is skipped and not reattempted until the next poll interval.
88
+ *
89
+ * @docGroup
90
+ *
91
+ * 2. Networking options
92
+ */
93
+ skipPollAttempt?: () => boolean;
94
+ /**
95
+ * Pass `false` to skip executing the query during [server-side rendering](https://www.apollographql.com/docs/react/performance/server-side-rendering/).
96
+ *
97
+ * @docGroup
98
+ *
99
+ * 2. Networking options
100
+ */
101
+ ssr?: boolean;
102
+ /**
103
+ * The instance of `ApolloClient` to use to execute the query.
104
+ *
105
+ * By default, the instance that's passed down via context is used, but you can provide a different instance here.
106
+ *
107
+ * @docGroup
108
+ *
109
+ * 1. Operation options
110
+ */
111
+ client?: ApolloClient;
112
+ /**
113
+ * If you're using [Apollo Link](https://www.apollographql.com/docs/react/api/link/introduction/), this object is the initial value of the `context` object that's passed along your link chain.
114
+ *
115
+ * @docGroup
116
+ *
117
+ * 2. Networking options
118
+ */
119
+ context?: DefaultContext;
120
+ /**
121
+ * If true, the query is not executed.
122
+ *
123
+ * The default value is `false`.
124
+ *
125
+ * @docGroup
126
+ *
127
+ * 1. Operation options
128
+ */
129
+ skip?: boolean;
130
+ }
131
+ }
132
+ type Options<TData = unknown, TVariables extends OperationVariables = OperationVariables> = Base.Options<TData, TVariables> & VariablesOption<TVariables>;
133
+ namespace DocumentationTypes {
134
+ namespace useQuery {
135
+ interface Options<TData = unknown, TVariables extends OperationVariables = OperationVariables> extends Base.Options<TData, TVariables>, UtilityDocumentationTypes.VariableOptions<TVariables> {
136
+ }
137
+ }
138
+ }
139
+ namespace Base {
140
+ interface Result<TData = unknown, TVariables extends OperationVariables = OperationVariables> {
141
+ /**
142
+ * The instance of Apollo Client that executed the query. Can be useful for manually executing followup queries or writing data to the cache.
143
+ *
144
+ * @docGroup
145
+ *
146
+ * 2. Network info
147
+ */
148
+ client: ApolloClient;
149
+ /**
150
+ * A reference to the internal `ObservableQuery` used by the hook.
151
+ */
152
+ observable: ObservableQuery<TData, TVariables>;
153
+ /**
154
+ * An object containing the result from the most recent _previous_ execution of this query.
155
+ *
156
+ * This value is `undefined` if this is the query's first execution.
157
+ *
158
+ * @docGroup
159
+ *
160
+ * 1. Operation data
161
+ */
162
+ previousData?: MaybeMasked<TData>;
163
+ /**
164
+ * A single ErrorLike object describing the error that occured during the latest query execution.
165
+ *
166
+ * For more information, see [Handling operation errors](https://www.apollographql.com/docs/react/data/error-handling/).
167
+ *
168
+ * @docGroup
169
+ *
170
+ * 1. Operation data
171
+ */
172
+ error?: ErrorLike;
173
+ /**
174
+ * If `true`, the query is still in flight and results have not yet been returned.
175
+ *
176
+ * @docGroup
177
+ *
178
+ * 2. Network info
179
+ */
180
+ loading: boolean;
181
+ /**
182
+ * A number indicating the current network state of the query's associated request. [See possible values.](https://github.com/apollographql/apollo-client/blob/d96f4578f89b933c281bb775a39503f6cdb59ee8/src/core/networkStatus.ts#L4)
183
+ *
184
+ * Used in conjunction with the [`notifyOnNetworkStatusChange`](#notifyonnetworkstatuschange) option.
185
+ *
186
+ * @docGroup
187
+ *
188
+ * 2. Network info
189
+ */
190
+ networkStatus: NetworkStatus;
191
+ /**
192
+ * A function that instructs the query to begin re-executing at a specified interval (in milliseconds).
193
+ *
194
+ *
195
+ * @docGroup
196
+ *
197
+ * 3. Helper functions
198
+ */
199
+ startPolling: (pollInterval: number) => void;
200
+ /**
201
+ * A function that instructs the query to stop polling after a previous call to `startPolling`.
202
+ *
203
+ *
204
+ * @docGroup
205
+ *
206
+ * 3. Helper functions
207
+ */
208
+ stopPolling: () => void;
209
+ /**
210
+ * A function that enables you to execute a [subscription](https://www.apollographql.com/docs/react/data/subscriptions/), usually to subscribe to specific fields that were included in the query.
211
+ *
212
+ * This function returns _another_ function that you can call to terminate the subscription.
213
+ *
214
+ *
215
+ * @docGroup
216
+ *
217
+ * 3. Helper functions
218
+ */
219
+ subscribeToMore: SubscribeToMoreFunction<TData, TVariables>;
220
+ /**
221
+ * A function that enables you to update the query's cached result without executing a followup GraphQL operation.
222
+ *
223
+ * See [using updateQuery and updateFragment](https://www.apollographql.com/docs/react/caching/cache-interaction/#using-updatequery-and-updatefragment) for additional information.
224
+ *
225
+ *
226
+ * @docGroup
227
+ *
228
+ * 3. Helper functions
229
+ */
230
+ updateQuery: (mapFn: UpdateQueryMapFn<TData, TVariables>) => void;
231
+ /**
232
+ * A function that enables you to re-execute the query, optionally passing in new `variables`.
233
+ *
234
+ * To guarantee that the refetch performs a network request, its `fetchPolicy` is set to `network-only` (unless the original query's `fetchPolicy` is `no-cache` or `cache-and-network`, which also guarantee a network request).
235
+ *
236
+ * See also [Refetching](https://www.apollographql.com/docs/react/data/queries/#refetching).
237
+ *
238
+ * Returns a `ResultPromise` with an additional `.retain()` method. Calling `.retain()` keeps the network operation running even if the `ObservableQuery` no longer requires the result.
239
+ *
240
+ * @docGroup
241
+ *
242
+ * 3. Helper functions
243
+ */
244
+ refetch: (variables?: Partial<TVariables>) => Promise<ApolloClient.QueryResult<MaybeMasked<TData>>>;
245
+ /**
246
+ * An object containing the variables that were provided for the query.
247
+ *
248
+ * @docGroup
249
+ *
250
+ * 1. Operation data
251
+ */
252
+ variables: TVariables;
253
+ /**
254
+ * A function that helps you fetch the next set of results for a [paginated list field](https://www.apollographql.com/docs/react/pagination/core-api/).
255
+ *
256
+ *
257
+ * @docGroup
258
+ *
259
+ * 3. Helper functions
260
+ */
261
+ fetchMore: <TFetchData = TData, TFetchVars extends OperationVariables = TVariables>(fetchMoreOptions: ObservableQuery.FetchMoreOptions<TData, TVariables, TFetchData, TFetchVars>) => Promise<ApolloClient.QueryResult<MaybeMasked<TFetchData>>>;
262
+ }
263
+ }
264
+ type Result<TData = unknown, TVariables extends OperationVariables = OperationVariables, TStates extends DataState<TData>["dataState"] = DataState<TData>["dataState"]> = Base.Result<TData, TVariables> & GetDataState<MaybeMasked<TData>, TStates>;
265
+ namespace DocumentationTypes {
266
+ namespace useQuery {
267
+ interface Result<TData = unknown, TVariables extends OperationVariables = OperationVariables> extends Base.Result<TData, TVariables>, UtilityDocumentationTypes.DataState<TData> {
268
+ }
269
+ }
270
+ }
271
+ namespace DocumentationTypes {
8
272
  /**
9
- * Specifies how the query interacts with the Apollo Client cache during execution (for example, whether it checks the cache for results before sending a request to the server).
273
+ * A hook for executing queries in an Apollo application.
10
274
  *
11
- * For details, see [Setting a fetch policy](https://www.apollographql.com/docs/react/data/queries/#setting-a-fetch-policy).
275
+ * To run a query within a React component, call `useQuery` and pass it a GraphQL query document.
12
276
  *
13
- * The default value is `cache-first`.
277
+ * When your component renders, `useQuery` returns an object from Apollo Client that contains `loading`, `error`, `dataState`, and `data` properties you can use to render your UI.
14
278
  *
15
- * @docGroup
279
+ * > Refer to the [Queries](https://www.apollographql.com/docs/react/data/queries) section for a more in-depth overview of `useQuery`.
16
280
  *
17
- * 3. Caching options
18
- */
19
- fetchPolicy?: WatchQueryFetchPolicy;
20
- /**
21
- * Specifies the `FetchPolicy` to be used after this query has completed.
22
- *
23
- * @docGroup
24
- *
25
- * 3. Caching options
26
- */
27
- nextFetchPolicy?: WatchQueryFetchPolicy | ((this: WatchQueryOptions<TVariables, TData>, currentFetchPolicy: WatchQueryFetchPolicy, context: NextFetchPolicyContext<TData, TVariables>) => WatchQueryFetchPolicy);
28
- /**
29
- * Defaults to the initial value of options.fetchPolicy, but can be explicitly configured to specify the WatchQueryFetchPolicy to revert back to whenever variables change (unless nextFetchPolicy intervenes).
30
- *
31
- * @docGroup
32
- *
33
- * 3. Caching options
34
- */
35
- initialFetchPolicy?: WatchQueryFetchPolicy;
36
- /**
37
- * Specifies whether a `NetworkStatus.refetch` operation should merge incoming field data with existing data, or overwrite the existing data. Overwriting is probably preferable, but merging is currently the default behavior, for backwards compatibility with Apollo Client 3.x.
38
- *
39
- * @docGroup
40
- *
41
- * 3. Caching options
42
- */
43
- refetchWritePolicy?: RefetchWritePolicy;
44
- /**
45
- * Specifies how the query handles a response that returns both GraphQL errors and partial results.
46
- *
47
- * For details, see [GraphQL error policies](https://www.apollographql.com/docs/react/data/error-handling/#graphql-error-policies).
48
- *
49
- * The default value is `none`, meaning that the query result includes error details but not partial results.
50
- *
51
- * @docGroup
52
- *
53
- * 1. Operation options
54
- */
55
- errorPolicy?: ErrorPolicy;
56
- /**
57
- * Specifies the interval (in milliseconds) at which the query polls for updated results.
58
- *
59
- * The default value is `0` (no polling).
60
- *
61
- * @docGroup
62
- *
63
- * 2. Networking options
64
- */
65
- pollInterval?: number;
66
- /**
67
- * If `true`, the in-progress query's associated component re-renders whenever the network status changes or a network error occurs.
68
- *
69
- * The default value is `true`.
70
- *
71
- * @docGroup
72
- *
73
- * 2. Networking options
74
- */
75
- notifyOnNetworkStatusChange?: boolean;
76
- /**
77
- * If `true`, the query can return partial results from the cache if the cache doesn't contain results for all queried fields.
78
- *
79
- * The default value is `false`.
80
- *
81
- * @docGroup
82
- *
83
- * 3. Caching options
84
- */
85
- returnPartialData?: boolean;
86
- /**
87
- * A callback function that's called whenever a refetch attempt occurs while polling. If the function returns `true`, the refetch is skipped and not reattempted until the next poll interval.
88
- *
89
- * @docGroup
90
- *
91
- * 2. Networking options
92
- */
93
- skipPollAttempt?: () => boolean;
94
- /**
95
- * Pass `false` to skip executing the query during [server-side rendering](https://www.apollographql.com/docs/react/performance/server-side-rendering/).
96
- *
97
- * @docGroup
98
- *
99
- * 2. Networking options
100
- */
101
- ssr?: boolean;
102
- /**
103
- * The instance of `ApolloClient` to use to execute the query.
104
- *
105
- * By default, the instance that's passed down via context is used, but you can provide a different instance here.
106
- *
107
- * @docGroup
108
- *
109
- * 1. Operation options
110
- */
111
- client?: ApolloClient;
112
- /**
113
- * If you're using [Apollo Link](https://www.apollographql.com/docs/react/api/link/introduction/), this object is the initial value of the `context` object that's passed along your link chain.
114
- *
115
- * @docGroup
116
- *
117
- * 2. Networking options
118
- */
119
- context?: DefaultContext;
120
- /**
121
- * If true, the query is not executed.
122
- *
123
- * The default value is `false`.
124
- *
125
- * @docGroup
126
- *
127
- * 1. Operation options
128
- */
129
- skip?: boolean;
130
- } & VariablesOption<TVariables>;
131
- type Result<TData = unknown, TVariables extends OperationVariables = OperationVariables, TStates extends DataState<TData>["dataState"] = DataState<TData>["dataState"]> = {
132
- /**
133
- * The instance of Apollo Client that executed the query. Can be useful for manually executing followup queries or writing data to the cache.
134
- *
135
- * @docGroup
136
- *
137
- * 2. Network info
138
- */
139
- client: ApolloClient;
140
- /**
141
- * A reference to the internal `ObservableQuery` used by the hook.
142
- */
143
- observable: ObservableQuery<TData, TVariables>;
144
- /**
145
- * An object containing the result from the most recent _previous_ execution of this query.
146
- *
147
- * This value is `undefined` if this is the query's first execution.
148
- *
149
- * @docGroup
150
- *
151
- * 1. Operation data
152
- */
153
- previousData?: MaybeMasked<TData>;
154
- /**
155
- * If the query produces one or more errors, this object contains either an array of `graphQLErrors` or a single `networkError`. Otherwise, this value is `undefined`.
156
- *
157
- * For more information, see [Handling operation errors](https://www.apollographql.com/docs/react/data/error-handling/).
158
- *
159
- * @docGroup
160
- *
161
- * 1. Operation data
162
- */
163
- error?: ErrorLike;
164
- /**
165
- * If `true`, the query is still in flight and results have not yet been returned.
166
- *
167
- * @docGroup
168
- *
169
- * 2. Network info
170
- */
171
- loading: boolean;
172
- /**
173
- * A number indicating the current network state of the query's associated request. [See possible values.](https://github.com/apollographql/apollo-client/blob/d96f4578f89b933c281bb775a39503f6cdb59ee8/src/core/networkStatus.ts#L4)
174
- *
175
- * Used in conjunction with the [`notifyOnNetworkStatusChange`](#notifyonnetworkstatuschange) option.
176
- *
177
- * @docGroup
178
- *
179
- * 2. Network info
180
- */
181
- networkStatus: NetworkStatus;
182
- /**
183
- * A function that instructs the query to begin re-executing at a specified interval (in milliseconds).
184
- *
185
- *
186
- * @docGroup
281
+ * @param query - A GraphQL query document parsed into an AST by `gql`.
187
282
  *
188
- * 3. Helper functions
189
- */
190
- startPolling: (pollInterval: number) => void;
191
- /**
192
- * A function that instructs the query to stop polling after a previous call to `startPolling`.
193
- *
194
- *
195
- * @docGroup
196
- *
197
- * 3. Helper functions
198
- */
199
- stopPolling: () => void;
200
- /**
201
- * A function that enables you to execute a [subscription](https://www.apollographql.com/docs/react/data/subscriptions/), usually to subscribe to specific fields that were included in the query.
202
- *
203
- * This function returns _another_ function that you can call to terminate the subscription.
204
- *
205
- *
206
- * @docGroup
207
- *
208
- * 3. Helper functions
209
- */
210
- subscribeToMore: SubscribeToMoreFunction<TData, TVariables>;
211
- /**
212
- * A function that enables you to update the query's cached result without executing a followup GraphQL operation.
213
- *
214
- * See [using updateQuery and updateFragment](https://www.apollographql.com/docs/react/caching/cache-interaction/#using-updatequery-and-updatefragment) for additional information.
283
+ * @param options - Options to control how the query is executed.
215
284
  *
285
+ * @returns Query result object
216
286
  *
217
- * @docGroup
218
- *
219
- * 3. Helper functions
220
- */
221
- updateQuery: (mapFn: UpdateQueryMapFn<TData, TVariables>) => void;
222
- /**
223
- * A function that enables you to re-execute the query, optionally passing in new `variables`.
224
- *
225
- * To guarantee that the refetch performs a network request, its `fetchPolicy` is set to `network-only` (unless the original query's `fetchPolicy` is `no-cache` or `cache-and-network`, which also guarantee a network request).
226
- *
227
- * See also [Refetching](https://www.apollographql.com/docs/react/data/queries/#refetching).
228
- *
229
- * @docGroup
230
- *
231
- * 3. Helper functions
232
- */
233
- refetch: (variables?: Partial<TVariables>) => Promise<QueryResult<MaybeMasked<TData>>>;
234
- /**
235
- * An object containing the variables that were provided for the query.
236
- *
237
- * @docGroup
238
- *
239
- * 1. Operation data
240
- */
241
- variables: TVariables;
242
- /**
243
- * A function that helps you fetch the next set of results for a [paginated list field](https://www.apollographql.com/docs/react/pagination/core-api/).
244
- *
287
+ * @example
288
+ * ```jsx
289
+ * import { gql } from "@apollo/client";
290
+ * import { useQuery } from "@apollo/client/react";
245
291
  *
246
- * @docGroup
292
+ * const GET_GREETING = gql`
293
+ * query GetGreeting($language: String!) {
294
+ * greeting(language: $language) {
295
+ * message
296
+ * }
297
+ * }
298
+ * `;
247
299
  *
248
- * 3. Helper functions
300
+ * function Hello() {
301
+ * const { loading, error, data } = useQuery(GET_GREETING, {
302
+ * variables: { language: "english" },
303
+ * });
304
+ * if (loading) return <p>Loading ...</p>;
305
+ * return <h1>Hello {data.greeting.message}!</h1>;
306
+ * }
307
+ * ```
249
308
  */
250
- fetchMore: <TFetchData = TData, TFetchVars extends OperationVariables = TVariables>(fetchMoreOptions: FetchMoreOptions<TData, TVariables, TFetchData, TFetchVars>) => Promise<QueryResult<MaybeMasked<TFetchData>>>;
251
- } & GetDataState<MaybeMasked<TData>, TStates>;
309
+ function useQuery<TData = unknown, TVariables extends OperationVariables = OperationVariables>(query: DocumentNode | TypedDocumentNode<TData, TVariables>, options: useQuery.Options<TData, TVariables>): useQuery.Result<TData, TVariables>;
310
+ }
252
311
  }
312
+ /**
313
+ * A hook for executing queries in an Apollo application.
314
+ *
315
+ * To run a query within a React component, call `useQuery` and pass it a GraphQL query document.
316
+ *
317
+ * When your component renders, `useQuery` returns an object from Apollo Client that contains `loading`, `error`, `dataState`, and `data` properties you can use to render your UI.
318
+ *
319
+ * > Refer to the [Queries](https://www.apollographql.com/docs/react/data/queries) section for a more in-depth overview of `useQuery`.
320
+ *
321
+ * @example
322
+ *
323
+ * ```jsx
324
+ * import { gql } from "@apollo/client";
325
+ * import { useQuery } from "@apollo/client/react";
326
+ *
327
+ * const GET_GREETING = gql`
328
+ * query GetGreeting($language: String!) {
329
+ * greeting(language: $language) {
330
+ * message
331
+ * }
332
+ * }
333
+ * `;
334
+ *
335
+ * function Hello() {
336
+ * const { loading, error, data } = useQuery(GET_GREETING, {
337
+ * variables: { language: "english" },
338
+ * });
339
+ * if (loading) return <p>Loading ...</p>;
340
+ * return <h1>Hello {data.greeting.message}!</h1>;
341
+ * }
342
+ * ```
343
+ *
344
+ * @param query - A GraphQL query document parsed into an AST by `gql`.
345
+ * @param options - Options to control how the query is executed.
346
+ * @returns Query result object
347
+ */
253
348
  export declare function useQuery<TData = unknown, TVariables extends OperationVariables = OperationVariables>(query: DocumentNode | TypedDocumentNode<TData, TVariables>, options: useQuery.Options<NoInfer<TData>, NoInfer<TVariables>> & {
254
349
  returnPartialData: true;
255
350
  }): useQuery.Result<TData, TVariables, "empty" | "complete" | "streaming" | "partial">;
351
+ /**
352
+ * A hook for executing queries in an Apollo application.
353
+ *
354
+ * To run a query within a React component, call `useQuery` and pass it a GraphQL query document.
355
+ *
356
+ * When your component renders, `useQuery` returns an object from Apollo Client that contains `loading`, `error`, `dataState`, and `data` properties you can use to render your UI.
357
+ *
358
+ * > Refer to the [Queries](https://www.apollographql.com/docs/react/data/queries) section for a more in-depth overview of `useQuery`.
359
+ *
360
+ * @param query - A GraphQL query document parsed into an AST by `gql`.
361
+ *
362
+ * @param options - Options to control how the query is executed.
363
+ *
364
+ * @returns Query result object
365
+ *
366
+ * @example
367
+ * ```jsx
368
+ * import { gql } from "@apollo/client";
369
+ * import { useQuery } from "@apollo/client/react";
370
+ *
371
+ * const GET_GREETING = gql`
372
+ * query GetGreeting($language: String!) {
373
+ * greeting(language: $language) {
374
+ * message
375
+ * }
376
+ * }
377
+ * `;
378
+ *
379
+ * function Hello() {
380
+ * const { loading, error, data } = useQuery(GET_GREETING, {
381
+ * variables: { language: "english" },
382
+ * });
383
+ * if (loading) return <p>Loading ...</p>;
384
+ * return <h1>Hello {data.greeting.message}!</h1>;
385
+ * }
386
+ * ```
387
+ */
256
388
  export declare function useQuery<TData = unknown, TVariables extends OperationVariables = OperationVariables>(query: DocumentNode | TypedDocumentNode<TData, TVariables>, options: useQuery.Options<NoInfer<TData>, NoInfer<TVariables>> & {
257
389
  returnPartialData: boolean;
258
390
  }): useQuery.Result<TData, TVariables, "empty" | "complete" | "streaming" | "partial">;
391
+ /**
392
+ * A hook for executing queries in an Apollo application.
393
+ *
394
+ * To run a query within a React component, call `useQuery` and pass it a GraphQL query document.
395
+ *
396
+ * When your component renders, `useQuery` returns an object from Apollo Client that contains `loading`, `error`, `dataState`, and `data` properties you can use to render your UI.
397
+ *
398
+ * > Refer to the [Queries](https://www.apollographql.com/docs/react/data/queries) section for a more in-depth overview of `useQuery`.
399
+ *
400
+ * @param query - A GraphQL query document parsed into an AST by `gql`.
401
+ *
402
+ * @param options - Options to control how the query is executed.
403
+ *
404
+ * @returns Query result object
405
+ *
406
+ * @example
407
+ * ```jsx
408
+ * import { gql } from "@apollo/client";
409
+ * import { useQuery } from "@apollo/client/react";
410
+ *
411
+ * const GET_GREETING = gql`
412
+ * query GetGreeting($language: String!) {
413
+ * greeting(language: $language) {
414
+ * message
415
+ * }
416
+ * }
417
+ * `;
418
+ *
419
+ * function Hello() {
420
+ * const { loading, error, data } = useQuery(GET_GREETING, {
421
+ * variables: { language: "english" },
422
+ * });
423
+ * if (loading) return <p>Loading ...</p>;
424
+ * return <h1>Hello {data.greeting.message}!</h1>;
425
+ * }
426
+ * ```
427
+ */
259
428
  export declare function useQuery<TData = unknown, TVariables extends OperationVariables = OperationVariables>(query: DocumentNode | TypedDocumentNode<TData, TVariables>, ...[options]: {} extends TVariables ? [
260
429
  options?: useQuery.Options<NoInfer<TData>, NoInfer<TVariables>>
261
430
  ] : [options: useQuery.Options<NoInfer<TData>, NoInfer<TVariables>>]): useQuery.Result<TData, TVariables, "empty" | "complete" | "streaming">;
262
431
  export declare namespace useQuery {
263
- var ssrDisabledResult: ApolloQueryResult<any>;
432
+ var ssrDisabledResult: ObservableQuery.Result<any, "complete" | "streaming" | "partial" | "empty">;
264
433
  }
265
434
  //# sourceMappingURL=useQuery.d.ts.map