# QueryClient

Defined in: [packages/vue-query/src/queryClient.ts:44](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L44)

Vue-aware subclass of `@tanstack/query-core`'s `QueryClient`. Methods that accept `options` (such as
`CancelOptions` or `InvalidateOptions`) or filters (such as the `QueryFilters` accepted by
`invalidateQueries`) also accept a MaybeRefDeep version of it, so you can pass `ref`s directly
without unwrapping them yourself — e.g. `queryClient.invalidateQueries({ queryKey: ['post', myRef] })`.
Install one on your app with `VueQueryPlugin`, or retrieve it with `useQueryClient`.

## Extends

- `QueryClient`

## Constructors

### Constructor

```ts
new QueryClient(config): QueryClient;
```

Defined in: [packages/vue-query/src/queryClient.ts:45](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L45)

#### Parameters

##### config

`QueryClientConfig` = `{}`

#### Returns

`QueryClient`

#### Overrides

```ts
QC.constructor
```

## Properties

### isRestoring?

```ts
optional isRestoring: Ref<boolean, boolean>;
```

Defined in: [packages/vue-query/src/queryClient.ts:58](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L58)

`true` while a `clientPersister` passed to `VueQueryPlugin` is restoring the cache. Queries don't fetch
while this is `true`. Defaults to `false` if no persister is configured.

## Methods

### cancelQueries()

```ts
cancelQueries<TTaggedQueryKey>(filters?, options?): Promise<void>;
```

Defined in: [packages/vue-query/src/queryClient.ts:185](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L185)

Cancels outgoing fetches for queries matching the given filters. Most useful when performing
optimistic updates, since any outgoing refetch that resolves afterwards would otherwise
overwrite the optimistic update. By default (`revert: true`), a cancelled query's data is
reverted to its state before the outgoing fetch started.

The returned promise never rejects, even if individual cancellations fail.

#### Type Parameters

##### TTaggedQueryKey

`TTaggedQueryKey` *extends* readonly `unknown`[] = readonly `unknown`[]

#### Parameters

##### filters?

`QueryFilters`\<`TTaggedQueryKey`\>

##### options?

`MaybeRefDeep`\<[`CancelOptions`](../interfaces/CancelOptions.md)\>

#### Returns

`Promise`\<`void`\>

#### Example

```ts
await queryClient.cancelQueries({ queryKey: ['posts'], exact: true })
```

#### Overrides

```ts
QC.cancelQueries
```

***

### clear()

```ts
clear(): void;
```

Defined in: [packages/query-core/src/queryClient.ts:1083](https://github.com/TanStack/query/blob/main/packages/query-core/src/queryClient.ts#L1083)

Clears both the query cache and the mutation cache this client is connected to.

#### Returns

`void`

#### Example

```ts
import { QueryClient } from '@tanstack/query-core'

const queryClient = new QueryClient()
queryClient.clear()
```

#### Inherited from

```ts
QC.clear
```

***

### defaultMutationOptions()

```ts
defaultMutationOptions<T>(options?): T;
```

Defined in: [packages/query-core/src/queryClient.ts:1057](https://github.com/TanStack/query/blob/main/packages/query-core/src/queryClient.ts#L1057)

The mutation counterpart of [QueryClient#defaultQueryOptions](#defaultqueryoptions). Called by framework
adapters (e.g. inside `useMutation`) to merge `queryClient.setMutationDefaults` for the
given `mutationKey`, then the client's `defaultOptions.mutations`, then the caller's options
on top. A no-op if the options are already defaulted (`_defaulted: true`).

#### Type Parameters

##### T

`T` *extends* `MutationOptions`\<`any`, `any`, `any`, `any`\>

#### Parameters

##### options?

`T`

#### Returns

`T`

#### Inherited from

```ts
QC.defaultMutationOptions
```

***

### defaultQueryOptions()

```ts
defaultQueryOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey, TPageParam>(options): DefaultedQueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>;
```

Defined in: [packages/query-core/src/queryClient.ts:970](https://github.com/TanStack/query/blob/main/packages/query-core/src/queryClient.ts#L970)

Called by framework adapters (e.g. inside `useQuery`) to resolve the options passed by the
caller into their final, defaulted form: merging `queryClient.setQueryDefaults` for the
given `queryKey`, then the client's own `defaultOptions.queries`, then the caller's options
on top. A no-op if the options are already defaulted (`_defaulted: true`).

#### Type Parameters

##### TQueryFnData

`TQueryFnData` = `unknown`

##### TError

`TError` = `Error`

##### TData

`TData` = `TQueryFnData`

##### TQueryData

`TQueryData` = `TQueryFnData`

##### TQueryKey

`TQueryKey` *extends* readonly `unknown`[] = readonly `unknown`[]

##### TPageParam

`TPageParam` = `never`

#### Parameters

##### options

[`QueryObserverOptions`](../interfaces/QueryObserverOptions.md)\<`TQueryFnData`, `TError`, `TData`, `TQueryData`, `TQueryKey`, `TPageParam`\> | [`DefaultedQueryObserverOptions`](../type-aliases/DefaultedQueryObserverOptions.md)\<`TQueryFnData`, `TError`, `TData`, `TQueryData`, `TQueryKey`\>

#### Returns

[`DefaultedQueryObserverOptions`](../type-aliases/DefaultedQueryObserverOptions.md)\<`TQueryFnData`, `TError`, `TData`, `TQueryData`, `TQueryKey`\>

#### Inherited from

```ts
QC.defaultQueryOptions
```

***

### ~~ensureInfiniteQueryData()~~

```ts
ensureInfiniteQueryData<TQueryFnData, TError, TData, TQueryKey, TPageParam>(options): Promise<InfiniteData<TData, TPageParam>>;
```

Defined in: [packages/query-core/src/queryClient.ts:735](https://github.com/TanStack/query/blob/main/packages/query-core/src/queryClient.ts#L735)

#### Type Parameters

##### TQueryFnData

`TQueryFnData`

##### TError

`TError` = `Error`

##### TData

`TData` = `TQueryFnData`

##### TQueryKey

`TQueryKey` *extends* readonly `unknown`[] = readonly `unknown`[]

##### TPageParam

`TPageParam` = `unknown`

#### Parameters

##### options

[`EnsureInfiniteQueryDataOptions`](../type-aliases/EnsureInfiniteQueryDataOptions.md)\<`TQueryFnData`, `TError`, `TData`, `TQueryKey`, `TPageParam`\>

#### Returns

`Promise`\<[`InfiniteData`](../interfaces/InfiniteData.md)\<`TData`, `TPageParam`\>\>

#### Deprecated

Use queryClient.infiniteQuery({ ...options, staleTime: 'static' }) instead. This method will be removed in the next major version.

#### Inherited from

```ts
QC.ensureInfiniteQueryData
```

***

### ~~ensureQueryData()~~

#### Call Signature

```ts
ensureQueryData<TQueryFnData, TError, TData, TQueryKey>(options): Promise<TData>;
```

Defined in: [packages/vue-query/src/queryClient.ts:83](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L83)

##### Type Parameters

###### TQueryFnData

`TQueryFnData`

###### TError

`TError` = `Error`

###### TData

`TData` = `TQueryFnData`

###### TQueryKey

`TQueryKey` *extends* readonly `unknown`[] = readonly `unknown`[]

##### Parameters

###### options

[`EnsureQueryDataOptions`](../interfaces/EnsureQueryDataOptions.md)\<`TQueryFnData`, `TError`, `TData`, `TQueryKey`\>

##### Returns

`Promise`\<`TData`\>

##### Deprecated

Use queryClient.query({ ...options, staleTime: 'static' }) instead. This method will be removed in the next major version.

##### Overrides

```ts
QC.ensureQueryData
```

#### Call Signature

```ts
ensureQueryData<TQueryFnData, TError, TData, TQueryKey>(options): Promise<TData>;
```

Defined in: [packages/vue-query/src/queryClient.ts:91](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L91)

##### Type Parameters

###### TQueryFnData

`TQueryFnData`

###### TError

`TError` = `Error`

###### TData

`TData` = `TQueryFnData`

###### TQueryKey

`TQueryKey` *extends* readonly `unknown`[] = readonly `unknown`[]

##### Parameters

###### options

`MaybeRefDeep`\<[`EnsureQueryDataOptions`](../interfaces/EnsureQueryDataOptions.md)\<`TQueryFnData`, `TError`, `TData`, `TQueryKey`, `never`\>\>

##### Returns

`Promise`\<`TData`\>

##### Deprecated

Use queryClient.query({ ...options, staleTime: 'static' }) instead. This method will be removed in the next major version.

##### Overrides

```ts
QC.ensureQueryData
```

***

### ~~fetchInfiniteQuery()~~

#### Call Signature

```ts
fetchInfiniteQuery<TQueryFnData, TError, TData, TQueryKey, TPageParam>(options): Promise<InfiniteData<TData, TPageParam>>;
```

Defined in: [packages/vue-query/src/queryClient.ts:464](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L464)

##### Type Parameters

###### TQueryFnData

`TQueryFnData` = `unknown`

###### TError

`TError` = `Error`

###### TData

`TData` = `TQueryFnData`

###### TQueryKey

`TQueryKey` *extends* readonly `unknown`[] = readonly `unknown`[]

###### TPageParam

`TPageParam` = `unknown`

##### Parameters

###### options

[`FetchInfiniteQueryOptions`](../type-aliases/FetchInfiniteQueryOptions.md)\<`TQueryFnData`, `TError`, `TData`, `TQueryKey`, `TPageParam`\>

##### Returns

`Promise`\<[`InfiniteData`](../interfaces/InfiniteData.md)\<`TData`, `TPageParam`\>\>

##### Deprecated

Use queryClient.infiniteQuery(options) instead. This method will be removed in the next major version.

##### Overrides

```ts
QC.fetchInfiniteQuery
```

#### Call Signature

```ts
fetchInfiniteQuery<TQueryFnData, TError, TData, TQueryKey, TPageParam>(options): Promise<InfiniteData<TData, TPageParam>>;
```

Defined in: [packages/vue-query/src/queryClient.ts:479](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L479)

##### Type Parameters

###### TQueryFnData

`TQueryFnData`

###### TError

`TError` = `Error`

###### TData

`TData` = `TQueryFnData`

###### TQueryKey

`TQueryKey` *extends* readonly `unknown`[] = readonly `unknown`[]

###### TPageParam

`TPageParam` = `unknown`

##### Parameters

###### options

`MaybeRefDeep`\<[`FetchInfiniteQueryOptions`](../type-aliases/FetchInfiniteQueryOptions.md)\<`TQueryFnData`, `TError`, `TData`, `TQueryKey`, `TPageParam`\>\>

##### Returns

`Promise`\<[`InfiniteData`](../interfaces/InfiniteData.md)\<`TData`, `TPageParam`\>\>

##### Deprecated

Use queryClient.infiniteQuery(options) instead. This method will be removed in the next major version.

##### Overrides

```ts
QC.fetchInfiniteQuery
```

***

### ~~fetchQuery()~~

#### Call Signature

```ts
fetchQuery<TQueryFnData, TError, TData, TQueryKey, TPageParam>(options): Promise<TData>;
```

Defined in: [packages/vue-query/src/queryClient.ts:313](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L313)

##### Type Parameters

###### TQueryFnData

`TQueryFnData`

###### TError

`TError` = `Error`

###### TData

`TData` = `TQueryFnData`

###### TQueryKey

`TQueryKey` *extends* readonly `unknown`[] = readonly `unknown`[]

###### TPageParam

`TPageParam` = `never`

##### Parameters

###### options

[`FetchQueryOptions`](../interfaces/FetchQueryOptions.md)\<`TQueryFnData`, `TError`, `TData`, `TQueryKey`, `TPageParam`\>

##### Returns

`Promise`\<`TData`\>

##### Deprecated

Use queryClient.query(options) instead. This method will be removed in the next major version.

##### Overrides

```ts
QC.fetchQuery
```

#### Call Signature

```ts
fetchQuery<TQueryFnData, TError, TData, TQueryKey, TPageParam>(options): Promise<TData>;
```

Defined in: [packages/vue-query/src/queryClient.ts:328](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L328)

##### Type Parameters

###### TQueryFnData

`TQueryFnData`

###### TError

`TError` = `Error`

###### TData

`TData` = `TQueryFnData`

###### TQueryKey

`TQueryKey` *extends* readonly `unknown`[] = readonly `unknown`[]

###### TPageParam

`TPageParam` = `never`

##### Parameters

###### options

`MaybeRefDeep`\<[`FetchQueryOptions`](../interfaces/FetchQueryOptions.md)\<`TQueryFnData`, `TError`, `TData`, `TQueryKey`, `TPageParam`\>\> | () => [`FetchQueryOptions`](../interfaces/FetchQueryOptions.md)\<`TQueryFnData`, `TError`, `TData`, `TQueryKey`, `TPageParam`\>

##### Returns

`Promise`\<`TData`\>

##### Deprecated

Use queryClient.query(options) instead. This method will be removed in the next major version.

##### Overrides

```ts
QC.fetchQuery
```

***

### getDefaultOptions()

```ts
getDefaultOptions(): DefaultOptions;
```

Defined in: [packages/query-core/src/queryClient.ts:818](https://github.com/TanStack/query/blob/main/packages/query-core/src/queryClient.ts#L818)

Returns the default options that were set when creating the client, or via
[QueryClient#setDefaultOptions](#setdefaultoptions).

#### Returns

[`DefaultOptions`](../interfaces/DefaultOptions.md)

#### Example

```ts
import { QueryClient } from '@tanstack/query-core'

const queryClient = new QueryClient()
const defaultOptions = queryClient.getDefaultOptions()
```

#### Inherited from

```ts
QC.getDefaultOptions
```

***

### getMutationCache()

```ts
getMutationCache(): MutationCache;
```

Defined in: [packages/query-core/src/queryClient.ts:802](https://github.com/TanStack/query/blob/main/packages/query-core/src/queryClient.ts#L802)

Returns the mutation cache this client is connected to.

#### Returns

`MutationCache`

#### Example

```ts
import { QueryClient } from '@tanstack/query-core'

const queryClient = new QueryClient()
const mutationCache = queryClient.getMutationCache()
const mutations = mutationCache.findAll({ status: 'pending' })
```

#### Inherited from

```ts
QC.getMutationCache
```

***

### getMutationDefaults()

```ts
getMutationDefaults(mutationKey): MutationObserverOptions<any, any, any, any>;
```

Defined in: [packages/vue-query/src/queryClient.ts:612](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L612)

Returns the default options registered for mutations whose mutation key partially matches
the given `mutationKey`, via [QueryClient#setMutationDefaults](#setmutationdefaults). If multiple registered
defaults match, they are merged together in registration order.

#### Parameters

##### mutationKey

`MaybeRefDeep`\<readonly `unknown`[]\>

#### Returns

[`MutationObserverOptions`](../interfaces/MutationObserverOptions.md)\<`any`, `any`, `any`, `any`\>

#### Example

```ts
const defaultOptions = queryClient.getMutationDefaults(['addPost'])
```

#### Overrides

```ts
QC.getMutationDefaults
```

***

### getQueriesData()

```ts
getQueriesData<TData>(filters): [readonly unknown[], TData | undefined][];
```

Defined in: [packages/vue-query/src/queryClient.ts:114](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L114)

Imperative (non-reactive) way to retrieve the cached data of multiple queries at once.
Only queries matching the given filters are returned; if none match, an empty array is
returned.

Because the matched queries can hold data of different shapes (e.g. a broad filter can match
queries with unrelated data types), the `TQueryFnData` generic defaults to `unknown` rather
than being inferred. Passing a more specific type is a convenience for call sites that know
every matched query holds the same shape — it is not checked against the actual cache
contents.

#### Type Parameters

##### TData

`TData` = `unknown`

#### Parameters

##### filters

`MaybeRefDeep`\<`QueryFilters`\<readonly `unknown`[]\>\>

#### Returns

\[readonly `unknown`[], `TData` \| `undefined`\][]

#### See

[QueryClient#getQueryData](#getquerydata)

#### Example

```ts
const data = queryClient.getQueriesData({ queryKey: ['posts'] })
```

#### Overrides

```ts
QC.getQueriesData
```

***

### getQueryCache()

```ts
getQueryCache(): QueryCache;
```

Defined in: [packages/query-core/src/queryClient.ts:786](https://github.com/TanStack/query/blob/main/packages/query-core/src/queryClient.ts#L786)

Returns the query cache this client is connected to.

#### Returns

`QueryCache`

#### Example

```ts
import { QueryClient } from '@tanstack/query-core'

const queryClient = new QueryClient()
const queryCache = queryClient.getQueryCache()
const queries = queryCache.findAll({ queryKey: ['posts'] })
```

#### Inherited from

```ts
QC.getQueryCache
```

***

### getQueryData()

#### Call Signature

```ts
getQueryData<TData, TTaggedQueryKey>(queryKey): 
  | InferDataFromTag<TData, TTaggedQueryKey>
  | undefined;
```

Defined in: [packages/vue-query/src/queryClient.ts:68](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L68)

Imperative (non-reactive) way to retrieve data for a QueryKey.
Should only be used in callbacks or functions where reading the latest data is necessary, e.g. for optimistic updates.

Hint: Do not use this function inside a component, because it won't receive updates.
Use `useQuery` to create a `QueryObserver` that subscribes to changes.

##### Type Parameters

###### TData

`TData` = `unknown`

###### TTaggedQueryKey

`TTaggedQueryKey` *extends* readonly `unknown`[] = readonly `unknown`[]

##### Parameters

###### queryKey

`TTaggedQueryKey`

##### Returns

  \| [`InferDataFromTag`](../type-aliases/InferDataFromTag.md)\<`TData`, `TTaggedQueryKey`\>
  \| `undefined`

##### See

[QueryClient#getQueriesData](#getqueriesdata)

##### Overrides

```ts
QC.getQueryData
```

#### Call Signature

```ts
getQueryData<TData>(queryKey): TData | undefined;
```

Defined in: [packages/vue-query/src/queryClient.ts:71](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L71)

##### Type Parameters

###### TData

`TData` = `unknown`

##### Parameters

###### queryKey

`MaybeRefDeep`\<readonly `unknown`[]\>

##### Returns

`TData` \| `undefined`

##### Overrides

```ts
QC.getQueryData
```

***

### getQueryDefaults()

```ts
getQueryDefaults(queryKey): OmitKeyof<QueryObserverOptions<any, any, any, any, any>, "queryKey">;
```

Defined in: [packages/vue-query/src/queryClient.ts:589](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L589)

Returns the default options registered for queries whose query key partially matches the
given `queryKey`, via [QueryClient#setQueryDefaults](#setquerydefaults). If multiple registered defaults
match, they are merged together in registration order.

#### Parameters

##### queryKey

`MaybeRefDeep`\<readonly `unknown`[]\>

#### Returns

[`OmitKeyof`](../type-aliases/OmitKeyof.md)\<[`QueryObserverOptions`](../interfaces/QueryObserverOptions.md)\<`any`, `any`, `any`, `any`, `any`\>, `"queryKey"`\>

#### Example

```ts
const defaultOptions = queryClient.getQueryDefaults(['posts'])
```

#### Overrides

```ts
QC.getQueryDefaults
```

***

### getQueryState()

```ts
getQueryState<TData, TError>(queryKey): 
  | QueryState<TData, TError>
  | undefined;
```

Defined in: [packages/vue-query/src/queryClient.ts:161](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L161)

Imperative (non-reactive) way to retrieve an existing query's state. If the query does not
exist, `undefined` is returned.

#### Type Parameters

##### TData

`TData` = `unknown`

##### TError

`TError` = `Error`

#### Parameters

##### queryKey

`MaybeRefDeep`\<readonly `unknown`[]\>

#### Returns

  \| [`QueryState`](../interfaces/QueryState.md)\<`TData`, `TError`\>
  \| `undefined`

#### Example

```ts
const state = queryClient.getQueryState(['posts'])
console.log(state?.dataUpdatedAt)
```

#### Overrides

```ts
QC.getQueryState
```

***

### infiniteQuery()

#### Call Signature

```ts
infiniteQuery<TQueryFnData, TError, TData, TQueryKey, TPageParam>(options): Promise<TData[] extends InfiniteData<TQueryFnData, unknown>[] ? InfiniteData<TQueryFnData, TPageParam> : TData>;
```

Defined in: [packages/vue-query/src/queryClient.ts:397](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L397)

Asynchronous method to fetch and cache an infinite query, resolving with an
[InfiniteData](../interfaces/InfiniteData.md) object or throwing with the error.

Behaves like [QueryClient#query](#query), accepting the same options (minus
`initialPageParam`), plus the required `initialPageParam`, and an optional `pages` /
`getNextPageParam` pair used to refetch a fixed number of pages from the start.

This method replaces the deprecated `fetchInfiniteQuery`, and — combined with
`{ staleTime: 'static' }` — the deprecated `ensureInfiniteQueryData`.

##### Type Parameters

###### TQueryFnData

`TQueryFnData` = `unknown`

###### TError

`TError` = `Error`

###### TData

`TData` = [`InfiniteData`](../interfaces/InfiniteData.md)\<`TQueryFnData`, `unknown`\>

###### TQueryKey

`TQueryKey` *extends* readonly `unknown`[] = readonly `unknown`[]

###### TPageParam

`TPageParam` = `unknown`

##### Parameters

###### options

[`InfiniteQueryExecuteOptions`](../type-aliases/InfiniteQueryExecuteOptions.md)\<`TQueryFnData`, `TError`, `TData`, `TQueryKey`, `TPageParam`\>

##### Returns

`Promise`\<`TData`[] *extends* [`InfiniteData`](../interfaces/InfiniteData.md)\<`TQueryFnData`, `unknown`\>[] ? [`InfiniteData`](../interfaces/InfiniteData.md)\<`TQueryFnData`, `TPageParam`\> : `TData`\>

##### Example

```ts
try {
  const data = await queryClient.infiniteQuery({ queryKey, queryFn, initialPageParam: 0 })
  console.log(data.pages)
} catch (error) {
  console.log(error)
}
```

##### Overrides

```ts
QC.infiniteQuery
```

#### Call Signature

```ts
infiniteQuery<TQueryFnData, TError, TData, TQueryKey, TPageParam>(options): Promise<TData[] extends InfiniteData<TQueryFnData, unknown>[] ? InfiniteData<TQueryFnData, TPageParam> : TData>;
```

Defined in: [packages/vue-query/src/queryClient.ts:416](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L416)

##### Type Parameters

###### TQueryFnData

`TQueryFnData` = `unknown`

###### TError

`TError` = `Error`

###### TData

`TData` = [`InfiniteData`](../interfaces/InfiniteData.md)\<`TQueryFnData`, `unknown`\>

###### TQueryKey

`TQueryKey` *extends* readonly `unknown`[] = readonly `unknown`[]

###### TPageParam

`TPageParam` = `unknown`

##### Parameters

###### options

`MaybeRefDeep`\<[`InfiniteQueryExecuteOptions`](../type-aliases/InfiniteQueryExecuteOptions.md)\<`TQueryFnData`, `TError`, `TData`, `TQueryKey`, `TPageParam`\>\>

##### Returns

`Promise`\<`TData`[] *extends* [`InfiniteData`](../interfaces/InfiniteData.md)\<`TQueryFnData`, `unknown`\>[] ? [`InfiniteData`](../interfaces/InfiniteData.md)\<`TQueryFnData`, `TPageParam`\> : `TData`\>

##### Overrides

```ts
QC.infiniteQuery
```

***

### invalidateQueries()

```ts
invalidateQueries<TTaggedQueryKey>(filters?, options?): Promise<void>;
```

Defined in: [packages/vue-query/src/queryClient.ts:196](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L196)

Marks queries matching the given filters as invalidated. Unlike
[QueryClient#removeQueries](#removequeries), invalidated queries stay in the cache.

Unless `filters.refetchType` is `'none'`, matching queries are then refetched via
[QueryClient#refetchQueries](#refetchqueries), using `filters.refetchType` if set, otherwise
`filters.type`, otherwise `'active'`.

#### Type Parameters

##### TTaggedQueryKey

`TTaggedQueryKey` *extends* readonly `unknown`[] = readonly `unknown`[]

#### Parameters

##### filters?

[`InvalidateQueryFilters`](../interfaces/InvalidateQueryFilters.md)\<`TTaggedQueryKey`\> | () => [`InvalidateQueryFilters`](../interfaces/InvalidateQueryFilters.md)\<`TTaggedQueryKey`\>

##### options?

`MaybeRefDeep`\<[`InvalidateOptions`](../interfaces/InvalidateOptions.md)\>

#### Returns

`Promise`\<`void`\>

#### Example

```ts
await queryClient.invalidateQueries({ queryKey: ['posts'], refetchType: 'active' })
```

#### Overrides

```ts
QC.invalidateQueries
```

***

### isFetching()

```ts
isFetching(filters): number;
```

Defined in: [packages/vue-query/src/queryClient.ts:60](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L60)

Returns the number of queries in the cache that are currently fetching, optionally
matching a set of filters. This includes background-fetching, loading new pages, and
loading more infinite query results.

#### Parameters

##### filters

`MaybeRefDeep`\<`QueryFilters`\<readonly `unknown`[]\>\> = `{}`

#### Returns

`number`

#### Example

```ts
if (queryClient.isFetching()) {
  console.log('At least one query is fetching!')
}
```

#### Overrides

```ts
QC.isFetching
```

***

### isMutating()

```ts
isMutating(filters): number;
```

Defined in: [packages/vue-query/src/queryClient.ts:64](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L64)

Returns the number of mutations in the cache that are currently pending, optionally
matching a set of filters.

#### Parameters

##### filters

`MaybeRefDeep`\<`MutationFilters`\<`unknown`, `Error`, `unknown`, `unknown`\>\> = `{}`

#### Returns

`number`

#### Example

```ts
if (queryClient.isMutating()) {
  console.log('At least one mutation is pending!')
}
```

#### Overrides

```ts
QC.isMutating
```

***

### mount()

```ts
mount(): void;
```

Defined in: [packages/query-core/src/queryClient.ts:104](https://github.com/TanStack/query/blob/main/packages/query-core/src/queryClient.ts#L104)

Called by a framework adapter's `QueryClientProvider`-equivalent when it mounts, to start
listening for focus/online events and resume paused mutations. Ref-counted via an internal
mount count, so nested or multiple providers sharing the same `QueryClient` don't tear down
the shared listeners until the last one unmounts.

#### Returns

`void`

#### Inherited from

```ts
QC.mount
```

***

### ~~prefetchInfiniteQuery()~~

#### Call Signature

```ts
prefetchInfiniteQuery<TQueryFnData, TError, TData, TQueryKey, TPageParam>(options): Promise<void>;
```

Defined in: [packages/vue-query/src/queryClient.ts:519](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L519)

##### Type Parameters

###### TQueryFnData

`TQueryFnData`

###### TError

`TError` = `Error`

###### TData

`TData` = `TQueryFnData`

###### TQueryKey

`TQueryKey` *extends* readonly `unknown`[] = readonly `unknown`[]

###### TPageParam

`TPageParam` = `unknown`

##### Parameters

###### options

[`FetchInfiniteQueryOptions`](../type-aliases/FetchInfiniteQueryOptions.md)\<`TQueryFnData`, `TError`, `TData`, `TQueryKey`, `TPageParam`\>

##### Returns

`Promise`\<`void`\>

##### Deprecated

use void queryClient.infiniteQuery(options) instead. You can swallow errors with `.catch(noop)`. This method will be removed in the next major version.

##### Overrides

```ts
QC.prefetchInfiniteQuery
```

#### Call Signature

```ts
prefetchInfiniteQuery<TQueryFnData, TError, TData, TQueryKey, TPageParam>(options): Promise<void>;
```

Defined in: [packages/vue-query/src/queryClient.ts:534](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L534)

##### Type Parameters

###### TQueryFnData

`TQueryFnData`

###### TError

`TError` = `Error`

###### TData

`TData` = `TQueryFnData`

###### TQueryKey

`TQueryKey` *extends* readonly `unknown`[] = readonly `unknown`[]

###### TPageParam

`TPageParam` = `unknown`

##### Parameters

###### options

`MaybeRefDeep`\<[`FetchInfiniteQueryOptions`](../type-aliases/FetchInfiniteQueryOptions.md)\<`TQueryFnData`, `TError`, `TData`, `TQueryKey`, `TPageParam`\>\>

##### Returns

`Promise`\<`void`\>

##### Deprecated

use void queryClient.infiniteQuery(options) instead. You can swallow errors with `.catch(noop)`. This method will be removed in the next major version.

##### Overrides

```ts
QC.prefetchInfiniteQuery
```

***

### ~~prefetchQuery()~~

#### Call Signature

```ts
prefetchQuery<TQueryFnData, TError, TData, TQueryKey>(options): Promise<void>;
```

Defined in: [packages/vue-query/src/queryClient.ts:364](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L364)

##### Type Parameters

###### TQueryFnData

`TQueryFnData` = `unknown`

###### TError

`TError` = `Error`

###### TData

`TData` = `TQueryFnData`

###### TQueryKey

`TQueryKey` *extends* readonly `unknown`[] = readonly `unknown`[]

##### Parameters

###### options

[`FetchQueryOptions`](../interfaces/FetchQueryOptions.md)\<`TQueryFnData`, `TError`, `TData`, `TQueryKey`\>

##### Returns

`Promise`\<`void`\>

##### Deprecated

Use queryClient.query(options) instead. You can swallow errors with `.catch(noop)`. This method will be removed in the next major version.

##### Overrides

```ts
QC.prefetchQuery
```

#### Call Signature

```ts
prefetchQuery<TQueryFnData, TError, TData, TQueryKey>(options): Promise<void>;
```

Defined in: [packages/vue-query/src/queryClient.ts:372](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L372)

##### Type Parameters

###### TQueryFnData

`TQueryFnData` = `unknown`

###### TError

`TError` = `Error`

###### TData

`TData` = `TQueryFnData`

###### TQueryKey

`TQueryKey` *extends* readonly `unknown`[] = readonly `unknown`[]

##### Parameters

###### options

`MaybeRefDeep`\<[`FetchQueryOptions`](../interfaces/FetchQueryOptions.md)\<`TQueryFnData`, `TError`, `TData`, `TQueryKey`, `never`\>\>

##### Returns

`Promise`\<`void`\>

##### Deprecated

Use queryClient.query(options) instead. You can swallow errors with `.catch(noop)`. This method will be removed in the next major version.

##### Overrides

```ts
QC.prefetchQuery
```

***

### query()

#### Call Signature

```ts
query<TQueryFnData, TError, TData, TQueryData, TQueryKey, TPageParam>(options): Promise<TData>;
```

Defined in: [packages/vue-query/src/queryClient.ts:252](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L252)

Asynchronous method to fetch and cache a query, resolving with the data or throwing with
the error.

If the query already exists in the cache and its data is not stale (per the given
`staleTime`), the cached data is returned without fetching. Otherwise, the query is fetched
and the promise resolves once the fetch settles. If a `select` function is provided, it is
applied to the data in both cases (cached or freshly fetched) before it is returned.

Unlike a reactive observer, retries are disabled by default here (`retry: false`) unless
explicitly configured, since there is no component to catch a thrown error and retry through
re-render.

The accepted options are `QueryObserverOptions` minus the fields that only make sense for a
reactive observer — `enabled`, `refetchInterval`, `refetchIntervalInBackground`,
`refetchOnWindowFocus`, `refetchOnReconnect`, `refetchOnMount`, `retryOnMount`,
`notifyOnChangeProps`, `throwOnError`, `suspense`, and `placeholderData` are not part of this
method's options.

This method replaces the deprecated `fetchQuery`, and — combined with
`{ staleTime: 'static' }` — the deprecated `ensureQueryData`.

##### Type Parameters

###### TQueryFnData

`TQueryFnData`

###### TError

`TError` = `Error`

###### TData

`TData` = `TQueryFnData`

###### TQueryData

`TQueryData` = `TQueryFnData`

###### TQueryKey

`TQueryKey` *extends* readonly `unknown`[] = readonly `unknown`[]

###### TPageParam

`TPageParam` = `never`

##### Parameters

###### options

[`QueryExecuteOptions`](../interfaces/QueryExecuteOptions.md)\<`TQueryFnData`, `TError`, `TData`, `TQueryData`, `TQueryKey`, `TPageParam`\>

##### Returns

`Promise`\<`TData`\>

##### Example

```ts
try {
  const data = await queryClient.query({ queryKey, queryFn, staleTime: 10000 })
} catch (error) {
  console.log(error)
}
```

##### Overrides

```ts
QC.query
```

#### Call Signature

```ts
query<TQueryFnData, TError, TData, TQueryData, TQueryKey, TPageParam>(options): Promise<TData>;
```

Defined in: [packages/vue-query/src/queryClient.ts:269](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L269)

##### Type Parameters

###### TQueryFnData

`TQueryFnData`

###### TError

`TError` = `Error`

###### TData

`TData` = `TQueryFnData`

###### TQueryData

`TQueryData` = `TQueryFnData`

###### TQueryKey

`TQueryKey` *extends* readonly `unknown`[] = readonly `unknown`[]

###### TPageParam

`TPageParam` = `never`

##### Parameters

###### options

`MaybeRefDeep`\<[`QueryExecuteOptions`](../interfaces/QueryExecuteOptions.md)\<`TQueryFnData`, `TError`, `TData`, `TQueryData`, `TQueryKey`, `TPageParam`\>\>

##### Returns

`Promise`\<`TData`\>

##### Overrides

```ts
QC.query
```

***

### refetchQueries()

```ts
refetchQueries<TTaggedQueryKey>(filters?, options?): Promise<void>;
```

Defined in: [packages/vue-query/src/queryClient.ts:236](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L236)

Refetches queries matching the given filters, regardless of whether they are stale. Without
filters, every query in the cache is refetched. Queries that are disabled, or static (only
have observers with a static `staleTime`), are never refetched.

By default (`cancelRefetch: true`), a currently running fetch is cancelled before the new
one starts. The returned promise resolves once all matching queries have settled; it does
not reject on individual query failures unless `throwOnError` is set.

#### Type Parameters

##### TTaggedQueryKey

`TTaggedQueryKey` *extends* readonly `unknown`[] = readonly `unknown`[]

#### Parameters

##### filters?

[`RefetchQueryFilters`](../interfaces/RefetchQueryFilters.md)\<`TTaggedQueryKey`\>

##### options?

`MaybeRefDeep`\<[`RefetchOptions`](../interfaces/RefetchOptions.md)\>

#### Returns

`Promise`\<`void`\>

#### Example

```ts
// refetch all active queries partially matching a query key:
await queryClient.refetchQueries({ queryKey: ['posts'], type: 'active' })
```

#### Overrides

```ts
QC.refetchQueries
```

***

### removeQueries()

```ts
removeQueries<TTaggedQueryKey>(filters?): void;
```

Defined in: [packages/vue-query/src/queryClient.ts:167](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L167)

Removes queries from the cache that match the given filters. Unlike
[QueryClient#invalidateQueries](#invalidatequeries) or [QueryClient#refetchQueries](#refetchqueries), this removes
matching queries from the cache instead of refetching them. Without filters, every query in
the cache is removed.

#### Type Parameters

##### TTaggedQueryKey

`TTaggedQueryKey` *extends* readonly `unknown`[] = readonly `unknown`[]

#### Parameters

##### filters?

`QueryFilters`\<`TTaggedQueryKey`\>

#### Returns

`void`

#### Example

```ts
queryClient.removeQueries({ queryKey: ['posts'], exact: true })
```

#### Overrides

```ts
QC.removeQueries
```

***

### resetQueries()

```ts
resetQueries<TTaggedQueryKey>(filters?, options?): Promise<void>;
```

Defined in: [packages/vue-query/src/queryClient.ts:174](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L174)

Resets queries matching the given filters back to their initial state (e.g. any
`initialData`), notifying subscribers rather than removing them. Active queries among the
matched set are then refetched, and the returned promise resolves once that refetch settles.

#### Type Parameters

##### TTaggedQueryKey

`TTaggedQueryKey` *extends* readonly `unknown`[] = readonly `unknown`[]

#### Parameters

##### filters?

`QueryFilters`\<`TTaggedQueryKey`\>

##### options?

`MaybeRefDeep`\<[`ResetOptions`](../interfaces/ResetOptions.md)\>

#### Returns

`Promise`\<`void`\>

#### Example

```ts
await queryClient.resetQueries({ queryKey: ['posts'], exact: true })
```

#### Overrides

```ts
QC.resetQueries
```

***

### resumePausedMutations()

```ts
resumePausedMutations(): Promise<unknown>;
```

Defined in: [packages/query-core/src/queryClient.ts:767](https://github.com/TanStack/query/blob/main/packages/query-core/src/queryClient.ts#L767)

Resumes mutations that were paused because there was no network connection. Does nothing
(resolving immediately) if the client is currently offline.

#### Returns

`Promise`\<`unknown`\>

#### Example

```ts
import { QueryClient } from '@tanstack/query-core'

const queryClient = new QueryClient()
await queryClient.resumePausedMutations()
```

#### Inherited from

```ts
QC.resumePausedMutations
```

***

### setDefaultOptions()

```ts
setDefaultOptions(options): void;
```

Defined in: [packages/vue-query/src/queryClient.ts:571](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L571)

Dynamically sets the default options for this client, overwriting any previously defined
default options.

#### Parameters

##### options

`MaybeRefDeep`\<[`DefaultOptions`](../interfaces/DefaultOptions.md)\<`Error`\>\>

#### Returns

`void`

#### See

[QueryClient#getDefaultOptions](#getdefaultoptions)

#### Example

```ts
import { QueryClient } from '@tanstack/query-core'

const queryClient = new QueryClient()
queryClient.setDefaultOptions({
  queries: {
    staleTime: Infinity,
  },
})
```

#### Overrides

```ts
QC.setDefaultOptions
```

***

### setMutationDefaults()

```ts
setMutationDefaults<TData, TError, TVariables, TOnMutateResult>(mutationKey, options): void;
```

Defined in: [packages/vue-query/src/queryClient.ts:595](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L595)

Sets default options for mutations whose mutation key partially matches the given
`mutationKey`. As with [QueryClient#setQueryDefaults](#setquerydefaults), the order of registration
matters when several registered defaults match the same mutation key.

#### Type Parameters

##### TData

`TData` = `unknown`

##### TError

`TError` = `Error`

##### TVariables

`TVariables` = `void`

##### TOnMutateResult

`TOnMutateResult` = `unknown`

#### Parameters

##### mutationKey

`MaybeRefDeep`\<readonly `unknown`[]\>

##### options

`MaybeRefDeep`\<[`MutationObserverOptions`](../interfaces/MutationObserverOptions.md)\<`TData`, `TError`, `TVariables`, `TOnMutateResult`\>\>

#### Returns

`void`

#### See

[QueryClient#getMutationDefaults](#getmutationdefaults)

#### Example

```ts
queryClient.setMutationDefaults(['addPost'], { mutationFn: addPost })
```

#### Overrides

```ts
QC.setMutationDefaults
```

***

### setQueriesData()

```ts
setQueriesData<TData>(
   filters, 
   updater, 
   options): [readonly unknown[], TData | undefined][];
```

Defined in: [packages/vue-query/src/queryClient.ts:149](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L149)

Synchronous way to immediately update the cached data of multiple queries at once, using
filters or partial query key matching. Only queries that already exist and match the given
filters are updated; no new cache entries are created. Internally this calls
[QueryClient#setQueryData](#setquerydata) for each matching query.

#### Type Parameters

##### TData

`TData`

#### Parameters

##### filters

`MaybeRefDeep`\<`QueryFilters`\<readonly `unknown`[]\>\>

##### updater

[`Updater`](../type-aliases/Updater.md)\<`TData` \| `undefined`, `TData` \| `undefined`\>

##### options

`MaybeRefDeep`\<[`SetDataOptions`](../interfaces/SetDataOptions.md)\> = `{}`

#### Returns

\[readonly `unknown`[], `TData` \| `undefined`\][]

#### Example

```ts
queryClient.setQueriesData({ queryKey: ['posts'] }, (oldPosts) =>
  oldPosts ? oldPosts.filter((post) => post.id !== deletedId) : oldPosts,
)
```

#### Overrides

```ts
QC.setQueriesData
```

***

### setQueryData()

#### Call Signature

```ts
setQueryData<TQueryFnData, TTaggedQueryKey, TInferredQueryFnData>(
   queryKey, 
   updater, 
   options?): NoInfer<TInferredQueryFnData> | undefined;
```

Defined in: [packages/vue-query/src/queryClient.ts:120](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L120)

Synchronous way to immediately update a query's cached data. If the updater (or the value
passed) resolves to `undefined`, the cache is left untouched and no query is created;
otherwise, if the query does not exist yet, it will be created. To update multiple queries
at once by partially matching query keys, use [QueryClient#setQueriesData](#setqueriesdata) instead.

Updates must be performed immutably: do not mutate `oldData`, or data previously retrieved
via [QueryClient#getQueryData](#getquerydata), in place.

##### Type Parameters

###### TQueryFnData

`TQueryFnData` = `unknown`

###### TTaggedQueryKey

`TTaggedQueryKey` *extends* readonly `unknown`[] = readonly `unknown`[]

###### TInferredQueryFnData

`TInferredQueryFnData` = [`InferDataFromTag`](../type-aliases/InferDataFromTag.md)\<`TQueryFnData`, `TTaggedQueryKey`\>

##### Parameters

###### queryKey

`TTaggedQueryKey`

The query key to set data for.

###### updater

[`Updater`](../type-aliases/Updater.md)\<`NoInfer`\<`TInferredQueryFnData`\> \| `undefined`, `NoInfer`\<`TInferredQueryFnData`\> \| `undefined`\>

Either the new data, or a function that receives the current data (which
may be `undefined`) and returns the new data.

###### options?

`MaybeRefDeep`\<[`SetDataOptions`](../interfaces/SetDataOptions.md)\>

##### Returns

`NoInfer`\<`TInferredQueryFnData`\> \| `undefined`

##### Example

```ts
queryClient.setQueryData(['posts'], newPosts)

// Or, using an updater function that receives the current data:
queryClient.setQueryData(['posts'], (oldPosts) => [...oldPosts, newPost])
```

##### Overrides

```ts
QC.setQueryData
```

#### Call Signature

```ts
setQueryData<TQueryFnData, TData>(
   queryKey, 
   updater, 
   options?): NoInfer<TData> | undefined;
```

Defined in: [packages/vue-query/src/queryClient.ts:132](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L132)

##### Type Parameters

###### TQueryFnData

`TQueryFnData`

###### TData

`TData` = `NoUnknown`\<`TQueryFnData`\>

##### Parameters

###### queryKey

`MaybeRefDeep`\<readonly `unknown`[]\>

###### updater

[`Updater`](../type-aliases/Updater.md)\<`NoInfer`\<`TData`\> \| `undefined`, `NoInfer`\<`TData`\> \| `undefined`\>

###### options?

`MaybeRefDeep`\<[`SetDataOptions`](../interfaces/SetDataOptions.md)\>

##### Returns

`NoInfer`\<`TData`\> \| `undefined`

##### Overrides

```ts
QC.setQueryData
```

***

### setQueryDefaults()

```ts
setQueryDefaults<TQueryFnData, TError, TData, TQueryData>(queryKey, options): void;
```

Defined in: [packages/vue-query/src/queryClient.ts:575](https://github.com/TanStack/query/blob/main/packages/vue-query/src/queryClient.ts#L575)

Sets default options for queries whose query key partially matches the given `queryKey`.

If several registered query defaults match a given query key, they are merged together in
registration order by [QueryClient#getQueryDefaults](#getquerydefaults), so register defaults from the
most generic key to the least generic one — more specific defaults should be registered
after more generic ones so they take precedence.

#### Type Parameters

##### TQueryFnData

`TQueryFnData` = `unknown`

##### TError

`TError` = `Error`

##### TData

`TData` = `TQueryFnData`

##### TQueryData

`TQueryData` = `TQueryFnData`

#### Parameters

##### queryKey

`MaybeRefDeep`\<readonly `unknown`[]\>

##### options

`MaybeRefDeep`\<`Omit`\<[`UseQueryOptions`](../type-aliases/UseQueryOptions.md)\<`TQueryFnData`, `TError`, `TData`, `TQueryData`\>, `"queryKey"`\>\>

#### Returns

`void`

#### Example

```ts
queryClient.setQueryDefaults(['posts'], { queryFn: fetchPosts })

await queryClient.query({ queryKey: ['posts'] })
```

#### Overrides

```ts
QC.setQueryDefaults
```

***

### unmount()

```ts
unmount(): void;
```

Defined in: [packages/query-core/src/queryClient.ts:127](https://github.com/TanStack/query/blob/main/packages/query-core/src/queryClient.ts#L127)

The inverse of [QueryClient#mount](#mount) — called by a framework adapter's
`QueryClientProvider`-equivalent when it unmounts. Only tears down the focus/online
listeners once the mount count returns to `0`.

#### Returns

`void`

#### Inherited from

```ts
QC.unmount
```
