/* * 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 { buildLlmUsageCompletionsQuery, LlmUsageCompletionsQueryData, prefetchLlmUsageCompletions, queryKeyLlmUsageCompletions, } from "./llmUsageCompletions.core.js"; export { buildLlmUsageCompletionsQuery, type LlmUsageCompletionsQueryData, prefetchLlmUsageCompletions, queryKeyLlmUsageCompletions, }; export type LlmUsageCompletionsQueryError = | SDKError | ResponseValidationError | ConnectionError | RequestAbortedError | RequestTimeoutError | InvalidRequestError | UnexpectedClientError | SDKValidationError; /** * Get completions usage * * @remarks * Retrieve usage metrics for chat completions, aggregated from the ChatCompletion table. */ export function useLlmUsageCompletions( request: operations.GetCompletionsUsageRequest, options?: QueryHookOptions< LlmUsageCompletionsQueryData, LlmUsageCompletionsQueryError >, ): UseQueryResult { const client = useSDKContext(); return useQuery({ ...buildLlmUsageCompletionsQuery( client, request, options, ), ...options, }); } /** * Get completions usage * * @remarks * Retrieve usage metrics for chat completions, aggregated from the ChatCompletion table. */ export function useLlmUsageCompletionsSuspense( request: operations.GetCompletionsUsageRequest, options?: SuspenseQueryHookOptions< LlmUsageCompletionsQueryData, LlmUsageCompletionsQueryError >, ): UseSuspenseQueryResult< LlmUsageCompletionsQueryData, LlmUsageCompletionsQueryError > { const client = useSDKContext(); return useSuspenseQuery({ ...buildLlmUsageCompletionsQuery( client, request, options, ), ...options, }); } export function setLlmUsageCompletionsData( 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: LlmUsageCompletionsQueryData, ): LlmUsageCompletionsQueryData | undefined { const key = queryKeyLlmUsageCompletions(...queryKeyBase); return client.setQueryData(key, data); } export function invalidateLlmUsageCompletions( 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", "completions", ...queryKeyBase], }); } export function invalidateAllLlmUsageCompletions( client: QueryClient, filters?: Omit, ): Promise { return client.invalidateQueries({ ...filters, queryKey: ["@meetkai/mka1", "usage", "completions"], }); }