/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import { InvalidateQueryFilters, QueryClient, useQuery, UseQueryResult, useSuspenseQuery, UseSuspenseQueryResult, } from "@tanstack/react-query"; import * as components from "../models/components/index.js"; 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 { buildLlmUsageExtractQuery, LlmUsageExtractQueryData, prefetchLlmUsageExtract, queryKeyLlmUsageExtract, } from "./llmUsageExtract.core.js"; export { buildLlmUsageExtractQuery, type LlmUsageExtractQueryData, prefetchLlmUsageExtract, queryKeyLlmUsageExtract, }; export type LlmUsageExtractQueryError = | SDKError | ResponseValidationError | ConnectionError | RequestAbortedError | RequestTimeoutError | InvalidRequestError | UnexpectedClientError | SDKValidationError; /** * Get extract usage * * @remarks * Retrieve usage metrics for extract operations. */ export function useLlmUsageExtract( request: operations.GetExtractUsageRequest, options?: QueryHookOptions< LlmUsageExtractQueryData, LlmUsageExtractQueryError >, ): UseQueryResult { const client = useSDKContext(); return useQuery({ ...buildLlmUsageExtractQuery( client, request, options, ), ...options, }); } /** * Get extract usage * * @remarks * Retrieve usage metrics for extract operations. */ export function useLlmUsageExtractSuspense( request: operations.GetExtractUsageRequest, options?: SuspenseQueryHookOptions< LlmUsageExtractQueryData, LlmUsageExtractQueryError >, ): UseSuspenseQueryResult { const client = useSDKContext(); return useSuspenseQuery({ ...buildLlmUsageExtractQuery( client, request, options, ), ...options, }); } export function setLlmUsageExtractData( client: QueryClient, queryKeyBase: [ parameters: { startTime: number; endTime?: number | undefined; bucketWidth?: components.BucketWidth | undefined; limit?: number | undefined; page?: string | undefined; userIds?: Array | undefined; externalUserIds?: Array | undefined; allOrgs?: string | undefined; orgIds?: Array | undefined; groupBy?: Array | undefined; models?: Array | undefined; xOnBehalfOf?: string | undefined; }, ], data: LlmUsageExtractQueryData, ): LlmUsageExtractQueryData | undefined { const key = queryKeyLlmUsageExtract(...queryKeyBase); return client.setQueryData(key, data); } export function invalidateLlmUsageExtract( client: QueryClient, queryKeyBase: TupleToPrefixes< [parameters: { startTime: number; endTime?: number | undefined; bucketWidth?: components.BucketWidth | undefined; limit?: number | undefined; page?: string | undefined; userIds?: Array | undefined; externalUserIds?: Array | undefined; allOrgs?: string | undefined; orgIds?: Array | undefined; groupBy?: Array | undefined; models?: Array | undefined; xOnBehalfOf?: string | undefined; }] >, filters?: Omit, ): Promise { return client.invalidateQueries({ ...filters, queryKey: ["@meetkai/mka1", "usage", "extract", ...queryKeyBase], }); } export function invalidateAllLlmUsageExtract( client: QueryClient, filters?: Omit, ): Promise { return client.invalidateQueries({ ...filters, queryKey: ["@meetkai/mka1", "usage", "extract"], }); }