Skip to content

docs(*): add parameter and result property tables to reference function pages and an overview to overloaded ones - #11758

Draft
sukvvon wants to merge 5 commits into
mainfrom
docs/reference-add-parameter-and-result-properties
Draft

sukvvon wants to merge 5 commits into
mainfrom
docs/reference-add-parameter-and-result-properties

Conversation

@sukvvon

@sukvvon sukvvon commented Sep 30, 2026 •

Copy link
Copy Markdown
Member

🎯 Changes

scripts/generate-docs.ts now adds to every generated function page, without changing what TypeDoc renders:

  • Property tables for arguments and the result, copied from the ## Properties table of the type's own generated page. The script finds that page as follows:
    • It follows plain aliases to the type they point to.
    • For a union, it uses the interface all members extend (e.g. UseQueryResult → QueryObserverResult → QueryObserverBaseResult).
    • It looks through wrappers that only change how the value is passed (Accessor<T> = () => T, inline () => T).
    • Types that omit, override, intersect, or map properties get no table.
  • An ## Overview on overloaded pages with every call signature and a link to each one. The page also ends with ## Parameters and ## Returns sections, which repeat the most general signature's arguments and result together with their property tables.

On single-signature pages, each table goes at the end of the section it describes. Property anchors in the added tables are prefixed with the table's name so they stay unique on the page.

The generated reference docs are regenerated. There are additions only, across 103 function pages.

✅ Checklist

  • I have followed the steps in the Contributing guide.
  • I have tested code changes locally with pnpm run test:pr, or these tests do not apply to this pull request.
  • I have followed the AI contribution policy and fully understand the code in this pull request, including any code generated with AI assistance.

🚀 Release Impact

  • This change affects published code, and I have generated a changeset.
  • This change is docs/CI/dev-only (no release).

Summary by CodeRabbit

  • Documentation
    • Expanded API references across Angular, Lit, Preact, React, Solid, Svelte, and Vue with clearer overload summaries, parameter and return details, and tables describing available options, filters, and result properties.
    • Clarified hydration behavior, including when updates appear, and documented serialization, deserialization, and error-redaction settings.
    • Improved navigation with links to signatures and reference sections.

@sukvvon
sukvvon requested a review from a team as a code owner September 30, 2026 11:15
@sukvvon sukvvon self-assigned this Sep 30, 2026
@nx-cloud

nx-cloud Bot commented Sep 30, 2026 •

Copy link
Copy Markdown

View your CI Pipeline Execution ↗ for commit 9f59740

Command Status Duration Result
nx affected --targets=test:sherif,test:knip,tes... ✅ Succeeded 3m 10s View ↗
nx run-many --target=build --exclude=examples/*... ✅ Succeeded <1s View ↗

☁️ Nx Cloud last updated this comment at 2026-10-01 07:14:01 UTC

@sukvvon
sukvvon marked this pull request as draft September 30, 2026 11:16
@github-actions

Copy link
Copy Markdown
Contributor

🚀 Changeset Version Preview

No changeset entries found. Merging this PR will not cause a version bump for any packages.

@coderabbitai

coderabbitai Bot commented Sep 30, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

Navigate logical layers of code changes, visualize relationships, and explore their blast radius.

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository: TanStack/query/.coderabbit.yaml

Review profile: CHILL

Plan: Advanced

Run ID: 36d2d0d1-17a8-41a1-b15b-b0b94bbb1afc

📥 Commits

Reviewing files that changed from the base of the PR and between e7e7283 and c7adf7d.

📒 Files selected for processing (104)
  • docs/framework/angular/reference/functions/dehydrate.md
  • docs/framework/angular/reference/functions/hydrate.md
  • docs/framework/angular/reference/functions/infiniteQueryOptions.md
  • docs/framework/angular/reference/functions/injectInfiniteQuery.md
  • docs/framework/angular/reference/functions/injectIsFetching.md
  • docs/framework/angular/reference/functions/injectIsMutating.md
  • docs/framework/angular/reference/functions/injectMutation.md
  • docs/framework/angular/reference/functions/injectMutationState.md
  • docs/framework/angular/reference/functions/injectQuery.md
  • docs/framework/angular/reference/functions/matchMutation.md
  • docs/framework/angular/reference/functions/matchQuery.md
  • docs/framework/angular/reference/functions/mutationOptions.md
  • docs/framework/angular/reference/functions/noop.md
  • docs/framework/angular/reference/functions/queryFeature.md
  • docs/framework/angular/reference/functions/queryOptions.md
  • docs/framework/lit/reference/functions/createInfiniteQueryController.md
  • docs/framework/lit/reference/functions/createMutationController.md
  • docs/framework/lit/reference/functions/createQueriesController.md
  • docs/framework/lit/reference/functions/createQueryController.md
  • docs/framework/lit/reference/functions/dehydrate.md
  • docs/framework/lit/reference/functions/hydrate.md
  • docs/framework/lit/reference/functions/infiniteQueryOptions.md
  • docs/framework/lit/reference/functions/matchMutation.md
  • docs/framework/lit/reference/functions/matchQuery.md
  • docs/framework/lit/reference/functions/mutationOptions.md
  • docs/framework/lit/reference/functions/noop.md
  • docs/framework/lit/reference/functions/queryOptions.md
  • docs/framework/lit/reference/functions/useIsFetching.md
  • docs/framework/lit/reference/functions/useIsMutating.md
  • docs/framework/lit/reference/functions/useMutationState.md
  • docs/framework/preact/reference/functions/HydrationBoundary.md
  • docs/framework/preact/reference/functions/QueryClientProvider.md
  • docs/framework/preact/reference/functions/QueryErrorResetBoundary.md
  • docs/framework/preact/reference/functions/dehydrate.md
  • docs/framework/preact/reference/functions/hydrate.md
  • docs/framework/preact/reference/functions/infiniteQueryOptions.md
  • docs/framework/preact/reference/functions/matchMutation.md
  • docs/framework/preact/reference/functions/matchQuery.md
  • docs/framework/preact/reference/functions/mutationOptions.md
  • docs/framework/preact/reference/functions/noop.md
  • docs/framework/preact/reference/functions/queryOptions.md
  • docs/framework/preact/reference/functions/useInfiniteQuery.md
  • docs/framework/preact/reference/functions/useIsFetching.md
  • docs/framework/preact/reference/functions/useIsMutating.md
  • docs/framework/preact/reference/functions/useMutation.md
  • docs/framework/preact/reference/functions/useQuery.md
  • docs/framework/preact/reference/functions/useSuspenseInfiniteQuery.md
  • docs/framework/preact/reference/functions/useSuspenseQueries.md
  • docs/framework/preact/reference/functions/useSuspenseQuery.md
  • docs/framework/react/reference/functions/HydrationBoundary.md
  • docs/framework/react/reference/functions/QueryClientProvider.md
  • docs/framework/react/reference/functions/QueryErrorResetBoundary.md
  • docs/framework/react/reference/functions/dehydrate.md
  • docs/framework/react/reference/functions/hydrate.md
  • docs/framework/react/reference/functions/infiniteQueryOptions.md
  • docs/framework/react/reference/functions/matchMutation.md
  • docs/framework/react/reference/functions/matchQuery.md
  • docs/framework/react/reference/functions/mutationOptions.md
  • docs/framework/react/reference/functions/noop.md
  • docs/framework/react/reference/functions/queryOptions.md
  • docs/framework/react/reference/functions/useInfiniteQuery.md
  • docs/framework/react/reference/functions/useIsFetching.md
  • docs/framework/react/reference/functions/useIsMutating.md
  • docs/framework/react/reference/functions/useMutation.md
  • docs/framework/react/reference/functions/useQuery.md
  • docs/framework/react/reference/functions/useSuspenseInfiniteQuery.md
  • docs/framework/react/reference/functions/useSuspenseQueries.md
  • docs/framework/react/reference/functions/useSuspenseQuery.md
  • docs/framework/solid/reference/functions/QueryClientProvider.md
  • docs/framework/solid/reference/functions/dehydrate.md
  • docs/framework/solid/reference/functions/hydrate.md
  • docs/framework/solid/reference/functions/infiniteQueryOptions.md
  • docs/framework/solid/reference/functions/matchMutation.md
  • docs/framework/solid/reference/functions/matchQuery.md
  • docs/framework/solid/reference/functions/mutationOptions.md
  • docs/framework/solid/reference/functions/noop.md
  • docs/framework/solid/reference/functions/queryOptions.md
  • docs/framework/solid/reference/functions/useInfiniteQuery.md
  • docs/framework/solid/reference/functions/useQuery.md
  • docs/framework/svelte/reference/functions/createInfiniteQuery.md
  • docs/framework/svelte/reference/functions/createQuery.md
  • docs/framework/svelte/reference/functions/dehydrate.md
  • docs/framework/svelte/reference/functions/hydrate.md
  • docs/framework/svelte/reference/functions/infiniteQueryOptions.md
  • docs/framework/svelte/reference/functions/matchMutation.md
  • docs/framework/svelte/reference/functions/matchQuery.md
  • docs/framework/svelte/reference/functions/mutationOptions.md
  • docs/framework/svelte/reference/functions/noop.md
  • docs/framework/svelte/reference/functions/queryOptions.md
  • docs/framework/svelte/reference/functions/useHydrate.md
  • docs/framework/svelte/reference/functions/useIsFetching.md
  • docs/framework/svelte/reference/functions/useIsMutating.md
  • docs/framework/svelte/reference/functions/useMutationState.md
  • docs/framework/vue/reference/functions/dehydrate.md
  • docs/framework/vue/reference/functions/hydrate.md
  • docs/framework/vue/reference/functions/infiniteQueryOptions.md
  • docs/framework/vue/reference/functions/matchMutation.md
  • docs/framework/vue/reference/functions/matchQuery.md
  • docs/framework/vue/reference/functions/mutationOptions.md
  • docs/framework/vue/reference/functions/noop.md
  • docs/framework/vue/reference/functions/queryOptions.md
  • docs/framework/vue/reference/functions/useInfiniteQuery.md
  • docs/framework/vue/reference/functions/useQuery.md
  • scripts/generate-docs.ts

Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 9 remain after this review.


📝 Walkthrough

Walkthrough

The documentation generator now adds overload overviews, linked signature navigation, parameter and return summaries, and property tables to generated function references. The updated pages cover Angular, Lit, Preact, React, Solid, Svelte, and Vue APIs.

Changes

Generated reference documentation

Layer / File(s) Summary
Reference detail generation
scripts/generate-docs.ts
The generator resolves types and property tables from generated TypeDoc pages. It adds overload overviews, parameter and return summaries, and property tables to function references.
Overload and signature summaries
docs/framework/{angular,lit,preact,react,solid,svelte,vue}/reference/functions/*
Function references now include overload descriptions, signature anchors, and parameter or return summaries for documented APIs.
Option, filter, prop, and result tables
docs/framework/{angular,lit,preact,react,solid,svelte,vue}/reference/functions/*
References now document properties for options, filters, provider and boundary props, dehydrated state, and query or mutation results.

Priority: ➖ Normal

Estimated code review effort: 3 (Moderate) | ~25 minutes

Change: Other

Possibly related PRs

  • TanStack/query#11204: Adds Preact JSDoc and regenerates function pages, which this PR uses as source material for generated property tables and overload summaries.
  • TanStack/query#11366: Introduces the TypeDoc page layout that this PR resolves to add details to generated function references.

Suggested reviewers: tkdodo

Merge Risk: ⚪ Minimal · up to c7adf

The change adds navigation and property details to generated API references without changing runtime APIs. No actionable merge-blocking risk remains; merge after normal checks.

Architecture Summary

Architecture risk: 🟠 High · up to c7adf

The change affects 2 systems.

Changed systems: scripts, docs

Architecture concerns
No architecture-level concerns identified.

Review details

Systems and components

  • observed — scripts (service) was modified; 1 changed file maps to changed impact.
  • observed — docs (service) was modified; 103 changed files map to changed impact.

Before / after behavior

  • observed — Modified behavior in docs/framework/angular/reference/functions/dehydrate.md: Added an options properties table documenting serializeData, mutation and query dehydration predicates, and error redaction behavior.
  • observed — Modified behavior in docs/framework/angular/reference/functions/dehydrate.md: Added a result properties table listing the dehydrated mutations and queries.
  • observed — Modified behavior in docs/framework/angular/reference/functions/hydrate.md: Added the options properties section, documenting the optional defaults applied to restored queries and mutations and the data deserialization transformer.
  • observed — Modified behavior in docs/framework/angular/reference/functions/infiniteQueryOptions.md: Adds an overview listing the three infiniteQueryOptions overloads, their option and return types, and links to the call-signature sections and summary anchors.

Reliability and maintainability

  • inferred — Risk-relevant change factors for scripts: blast_radius_1; blast_radius_5; blast_radius_9; direct_dependents_1; direct_dependents_2; direct_dependents_4
🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 75.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 12 functions across 1 files. (103 skipped… Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly summarizes the main changes: adding parameter and result property tables and overviews to overloaded documentation pages.
Description check ✅ Passed The description includes all required template sections, explains the implementation and regenerated documentation, completes the checklist, and identifies the change as docs-only with no release impa…
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Full details: Docstring Coverage

Explanation

Docstring coverage is 75.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 12 functions across 1 files. (103 skipped: 103 unsupported.)

✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@pkg-pr-new

pkg-pr-new Bot commented Sep 30, 2026 •

Copy link
Copy Markdown
More templates

@tanstack/angular-query-experimental

npm i https://pkg.pr.new/@tanstack/angular-query-experimental@11758

@tanstack/eslint-plugin-query

npm i https://pkg.pr.new/@tanstack/eslint-plugin-query@11758

@tanstack/lit-query

npm i https://pkg.pr.new/@tanstack/lit-query@11758

@tanstack/preact-query

npm i https://pkg.pr.new/@tanstack/preact-query@11758

@tanstack/preact-query-devtools

npm i https://pkg.pr.new/@tanstack/preact-query-devtools@11758

@tanstack/preact-query-persist-client

npm i https://pkg.pr.new/@tanstack/preact-query-persist-client@11758

@tanstack/query-async-storage-persister

npm i https://pkg.pr.new/@tanstack/query-async-storage-persister@11758

@tanstack/query-broadcast-client-experimental

npm i https://pkg.pr.new/@tanstack/query-broadcast-client-experimental@11758

@tanstack/query-core

npm i https://pkg.pr.new/@tanstack/query-core@11758

@tanstack/query-devtools

npm i https://pkg.pr.new/@tanstack/query-devtools@11758

@tanstack/query-persist-client-core

npm i https://pkg.pr.new/@tanstack/query-persist-client-core@11758

@tanstack/query-sync-storage-persister

npm i https://pkg.pr.new/@tanstack/query-sync-storage-persister@11758

@tanstack/react-query

npm i https://pkg.pr.new/@tanstack/react-query@11758

@tanstack/react-query-devtools

npm i https://pkg.pr.new/@tanstack/react-query-devtools@11758

@tanstack/react-query-next-experimental

npm i https://pkg.pr.new/@tanstack/react-query-next-experimental@11758

@tanstack/react-query-persist-client

npm i https://pkg.pr.new/@tanstack/react-query-persist-client@11758

@tanstack/solid-query

npm i https://pkg.pr.new/@tanstack/solid-query@11758

@tanstack/solid-query-devtools

npm i https://pkg.pr.new/@tanstack/solid-query-devtools@11758

@tanstack/solid-query-persist-client

npm i https://pkg.pr.new/@tanstack/solid-query-persist-client@11758

@tanstack/svelte-query

npm i https://pkg.pr.new/@tanstack/svelte-query@11758

@tanstack/svelte-query-devtools

npm i https://pkg.pr.new/@tanstack/svelte-query-devtools@11758

@tanstack/svelte-query-persist-client

npm i https://pkg.pr.new/@tanstack/svelte-query-persist-client@11758

@tanstack/vue-query

npm i https://pkg.pr.new/@tanstack/vue-query@11758

@tanstack/vue-query-devtools

npm i https://pkg.pr.new/@tanstack/vue-query-devtools@11758

commit: 9f59740

@github-actions

Copy link
Copy Markdown
Contributor

size-limit report 📦

Path Size
react full 11.73 KB (0%)
react minimal 8.58 KB (0%)

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant