/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. * @generated-id: 674f01e09c9d */ import { InvalidateQueryFilters, QueryClient, useQuery, UseQueryResult, useSuspenseQuery, UseSuspenseQueryResult, } from "@tanstack/react-query"; import { GleanBaseError } from "../models/errors/gleanbaseerror.js"; import { ConnectionError, InvalidRequestError, RequestAbortedError, RequestTimeoutError, UnexpectedClientError, } from "../models/errors/httpclienterrors.js"; import { ResponseValidationError } from "../models/errors/responsevalidationerror.js"; import { SDKValidationError } from "../models/errors/sdkvalidationerror.js"; import { useGleanContext } from "./_context.js"; import { QueryHookOptions, SuspenseQueryHookOptions, TupleToPrefixes, } from "./_types.js"; import { buildClientGovernanceDataPoliciesRetrieveQuery, ClientGovernanceDataPoliciesRetrieveQueryData, prefetchClientGovernanceDataPoliciesRetrieve, queryKeyClientGovernanceDataPoliciesRetrieve, } from "./clientGovernanceDataPoliciesRetrieve.core.js"; export { buildClientGovernanceDataPoliciesRetrieveQuery, type ClientGovernanceDataPoliciesRetrieveQueryData, prefetchClientGovernanceDataPoliciesRetrieve, queryKeyClientGovernanceDataPoliciesRetrieve, }; export type ClientGovernanceDataPoliciesRetrieveQueryError = | GleanBaseError | ResponseValidationError | ConnectionError | RequestAbortedError | RequestTimeoutError | InvalidRequestError | UnexpectedClientError | SDKValidationError; /** * Gets specified policy * * @remarks * Fetches the specified policy version, or the latest if no version is provided. */ export function useClientGovernanceDataPoliciesRetrieve( id: string, version?: number | undefined, options?: QueryHookOptions< ClientGovernanceDataPoliciesRetrieveQueryData, ClientGovernanceDataPoliciesRetrieveQueryError >, ): UseQueryResult< ClientGovernanceDataPoliciesRetrieveQueryData, ClientGovernanceDataPoliciesRetrieveQueryError > { const client = useGleanContext(); return useQuery({ ...buildClientGovernanceDataPoliciesRetrieveQuery( client, id, version, options, ), ...options, }); } /** * Gets specified policy * * @remarks * Fetches the specified policy version, or the latest if no version is provided. */ export function useClientGovernanceDataPoliciesRetrieveSuspense( id: string, version?: number | undefined, options?: SuspenseQueryHookOptions< ClientGovernanceDataPoliciesRetrieveQueryData, ClientGovernanceDataPoliciesRetrieveQueryError >, ): UseSuspenseQueryResult< ClientGovernanceDataPoliciesRetrieveQueryData, ClientGovernanceDataPoliciesRetrieveQueryError > { const client = useGleanContext(); return useSuspenseQuery({ ...buildClientGovernanceDataPoliciesRetrieveQuery( client, id, version, options, ), ...options, }); } export function setClientGovernanceDataPoliciesRetrieveData( client: QueryClient, queryKeyBase: [id: string, parameters: { version?: number | undefined }], data: ClientGovernanceDataPoliciesRetrieveQueryData, ): ClientGovernanceDataPoliciesRetrieveQueryData | undefined { const key = queryKeyClientGovernanceDataPoliciesRetrieve(...queryKeyBase); return client.setQueryData( key, data, ); } export function invalidateClientGovernanceDataPoliciesRetrieve( client: QueryClient, queryKeyBase: TupleToPrefixes< [id: string, parameters: { version?: number | undefined }] >, filters?: Omit, ): Promise { return client.invalidateQueries({ ...filters, queryKey: [ "@gleanwork/api-client", "policies", "retrieve", ...queryKeyBase, ], }); } export function invalidateAllClientGovernanceDataPoliciesRetrieve( client: QueryClient, filters?: Omit, ): Promise { return client.invalidateQueries({ ...filters, queryKey: ["@gleanwork/api-client", "policies", "retrieve"], }); }