/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import { InvalidateQueryFilters, QueryClient, useQuery, UseQueryResult, useSuspenseQuery, UseSuspenseQueryResult, } from "@tanstack/react-query"; import { GustoEmbeddedError } from "../models/errors/gustoembeddederror.js"; import { ConnectionError, InvalidRequestError, RequestAbortedError, RequestTimeoutError, UnexpectedClientError, } from "../models/errors/httpclienterrors.js"; import { NotFoundErrorObject } from "../models/errors/notfounderrorobject.js"; import { ResponseValidationError } from "../models/errors/responsevalidationerror.js"; import { SDKValidationError } from "../models/errors/sdkvalidationerror.js"; import { GetV1WebhookSubscriptionVerificationTokenUuidHeaderXGustoAPIVersion, GetV1WebhookSubscriptionVerificationTokenUuidRequest, GetV1WebhookSubscriptionVerificationTokenUuidSecurity, } from "../models/operations/getv1webhooksubscriptionverificationtokenuuid.js"; import { useGustoEmbeddedContext } from "./_context.js"; import { QueryHookOptions, SuspenseQueryHookOptions, TupleToPrefixes, } from "./_types.js"; import { buildWebhooksRequestVerificationTokenQuery, prefetchWebhooksRequestVerificationToken, queryKeyWebhooksRequestVerificationToken, WebhooksRequestVerificationTokenQueryData, } from "./webhooksRequestVerificationToken.core.js"; export { buildWebhooksRequestVerificationTokenQuery, prefetchWebhooksRequestVerificationToken, queryKeyWebhooksRequestVerificationToken, type WebhooksRequestVerificationTokenQueryData, }; export type WebhooksRequestVerificationTokenQueryError = | NotFoundErrorObject | GustoEmbeddedError | ResponseValidationError | ConnectionError | RequestAbortedError | RequestTimeoutError | InvalidRequestError | UnexpectedClientError | SDKValidationError; /** * Request a verification token for a webhook subscription * * @remarks * Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. * * 📘 System Access Authentication * * This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * * scope: `webhook_subscriptions:read` */ export function useWebhooksRequestVerificationToken( security: GetV1WebhookSubscriptionVerificationTokenUuidSecurity, request: GetV1WebhookSubscriptionVerificationTokenUuidRequest, options?: QueryHookOptions< WebhooksRequestVerificationTokenQueryData, WebhooksRequestVerificationTokenQueryError >, ): UseQueryResult< WebhooksRequestVerificationTokenQueryData, WebhooksRequestVerificationTokenQueryError > { const client = useGustoEmbeddedContext(); return useQuery({ ...buildWebhooksRequestVerificationTokenQuery( client, security, request, options, ), ...options, }); } /** * Request a verification token for a webhook subscription * * @remarks * Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. * * 📘 System Access Authentication * * This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * * scope: `webhook_subscriptions:read` */ export function useWebhooksRequestVerificationTokenSuspense( security: GetV1WebhookSubscriptionVerificationTokenUuidSecurity, request: GetV1WebhookSubscriptionVerificationTokenUuidRequest, options?: SuspenseQueryHookOptions< WebhooksRequestVerificationTokenQueryData, WebhooksRequestVerificationTokenQueryError >, ): UseSuspenseQueryResult< WebhooksRequestVerificationTokenQueryData, WebhooksRequestVerificationTokenQueryError > { const client = useGustoEmbeddedContext(); return useSuspenseQuery({ ...buildWebhooksRequestVerificationTokenQuery( client, security, request, options, ), ...options, }); } export function setWebhooksRequestVerificationTokenData( client: QueryClient, queryKeyBase: [ webhookSubscriptionUuid: string, parameters: { xGustoAPIVersion?: | GetV1WebhookSubscriptionVerificationTokenUuidHeaderXGustoAPIVersion | undefined; }, ], data: WebhooksRequestVerificationTokenQueryData, ): WebhooksRequestVerificationTokenQueryData | undefined { const key = queryKeyWebhooksRequestVerificationToken(...queryKeyBase); return client.setQueryData( key, data, ); } export function invalidateWebhooksRequestVerificationToken( client: QueryClient, queryKeyBase: TupleToPrefixes< [ webhookSubscriptionUuid: string, parameters: { xGustoAPIVersion?: | GetV1WebhookSubscriptionVerificationTokenUuidHeaderXGustoAPIVersion | undefined; }, ] >, filters?: Omit, ): Promise { return client.invalidateQueries({ ...filters, queryKey: [ "@gusto/embedded-api", "Webhooks", "requestVerificationToken", ...queryKeyBase, ], }); } export function invalidateAllWebhooksRequestVerificationToken( client: QueryClient, filters?: Omit, ): Promise { return client.invalidateQueries({ ...filters, queryKey: ["@gusto/embedded-api", "Webhooks", "requestVerificationToken"], }); }