/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import { InvalidateQueryFilters, QueryClient, useQuery, UseQueryResult, useSuspenseQuery, UseSuspenseQueryResult, } from "@tanstack/react-query"; import { ConnectionError, InvalidRequestError, RequestAbortedError, RequestTimeoutError, UnexpectedClientError, } from "../models/errors/httpclienterrors.js"; import { ResponseValidationError } from "../models/errors/responsevalidationerror.js"; import { SDKError } from "../models/errors/sdkerror.js"; import { SDKValidationError } from "../models/errors/sdkvalidationerror.js"; import * as operations from "../models/operations/index.js"; import { useSDKContext } from "./_context.js"; import { QueryHookOptions, SuspenseQueryHookOptions, TupleToPrefixes, } from "./_types.js"; import { BudgetsGetExternalUserDefaultQueryData, buildBudgetsGetExternalUserDefaultQuery, prefetchBudgetsGetExternalUserDefault, queryKeyBudgetsGetExternalUserDefault, } from "./budgetsGetExternalUserDefault.core.js"; export { type BudgetsGetExternalUserDefaultQueryData, buildBudgetsGetExternalUserDefaultQuery, prefetchBudgetsGetExternalUserDefault, queryKeyBudgetsGetExternalUserDefault, }; export type BudgetsGetExternalUserDefaultQueryError = | SDKError | ResponseValidationError | ConnectionError | RequestAbortedError | RequestTimeoutError | InvalidRequestError | UnexpectedClientError | SDKValidationError; /** * List per-external user default budgets * * @remarks * Returns the org's per-external user default budgets (self-set and/or operator ceiling). A default budget applies to every external user in the org against that external user's own spend counter, unless an explicit external user budget of the same owner and period exists for them. It has no spend gauge of its own. Targets the caller's own organization (inferred from the API key or session) unless the optional org_id query parameter names another org — cluster admins only. Callable by cluster admins, or org admins for their own organization (owner=org). */ export function useBudgetsGetExternalUserDefault( request: operations.GetExternalUserDefaultBudgetsRequest, options?: QueryHookOptions< BudgetsGetExternalUserDefaultQueryData, BudgetsGetExternalUserDefaultQueryError >, ): UseQueryResult< BudgetsGetExternalUserDefaultQueryData, BudgetsGetExternalUserDefaultQueryError > { const client = useSDKContext(); return useQuery({ ...buildBudgetsGetExternalUserDefaultQuery( client, request, options, ), ...options, }); } /** * List per-external user default budgets * * @remarks * Returns the org's per-external user default budgets (self-set and/or operator ceiling). A default budget applies to every external user in the org against that external user's own spend counter, unless an explicit external user budget of the same owner and period exists for them. It has no spend gauge of its own. Targets the caller's own organization (inferred from the API key or session) unless the optional org_id query parameter names another org — cluster admins only. Callable by cluster admins, or org admins for their own organization (owner=org). */ export function useBudgetsGetExternalUserDefaultSuspense( request: operations.GetExternalUserDefaultBudgetsRequest, options?: SuspenseQueryHookOptions< BudgetsGetExternalUserDefaultQueryData, BudgetsGetExternalUserDefaultQueryError >, ): UseSuspenseQueryResult< BudgetsGetExternalUserDefaultQueryData, BudgetsGetExternalUserDefaultQueryError > { const client = useSDKContext(); return useSuspenseQuery({ ...buildBudgetsGetExternalUserDefaultQuery( client, request, options, ), ...options, }); } export function setBudgetsGetExternalUserDefaultData( client: QueryClient, queryKeyBase: [parameters: { orgId?: string | undefined }], data: BudgetsGetExternalUserDefaultQueryData, ): BudgetsGetExternalUserDefaultQueryData | undefined { const key = queryKeyBudgetsGetExternalUserDefault(...queryKeyBase); return client.setQueryData(key, data); } export function invalidateBudgetsGetExternalUserDefault( client: QueryClient, queryKeyBase: TupleToPrefixes<[parameters: { orgId?: string | undefined }]>, filters?: Omit, ): Promise { return client.invalidateQueries({ ...filters, queryKey: [ "@meetkai/mka1", "budgets", "getExternalUserDefault", ...queryKeyBase, ], }); } export function invalidateAllBudgetsGetExternalUserDefault( client: QueryClient, filters?: Omit, ): Promise { return client.invalidateQueries({ ...filters, queryKey: ["@meetkai/mka1", "budgets", "getExternalUserDefault"], }); }