/* * 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 { buildLlmUsageFilesQuery, LlmUsageFilesQueryData, prefetchLlmUsageFiles, queryKeyLlmUsageFiles, } from "./llmUsageFiles.core.js"; export { buildLlmUsageFilesQuery, type LlmUsageFilesQueryData, prefetchLlmUsageFiles, queryKeyLlmUsageFiles, }; export type LlmUsageFilesQueryError = | SDKError | ResponseValidationError | ConnectionError | RequestAbortedError | RequestTimeoutError | InvalidRequestError | UnexpectedClientError | SDKValidationError; /** * Get files usage * * @remarks * Retrieve bytes of files created per period from durable file creation events. This does not reflect current retained storage, buckets remain counted after file deletion, and grouped results collapse by requested output dimensions rather than one row per UserContext. */ export function useLlmUsageFiles( request: operations.GetFilesUsageRequest, options?: QueryHookOptions, ): UseQueryResult { const client = useSDKContext(); return useQuery({ ...buildLlmUsageFilesQuery( client, request, options, ), ...options, }); } /** * Get files usage * * @remarks * Retrieve bytes of files created per period from durable file creation events. This does not reflect current retained storage, buckets remain counted after file deletion, and grouped results collapse by requested output dimensions rather than one row per UserContext. */ export function useLlmUsageFilesSuspense( request: operations.GetFilesUsageRequest, options?: SuspenseQueryHookOptions< LlmUsageFilesQueryData, LlmUsageFilesQueryError >, ): UseSuspenseQueryResult { const client = useSDKContext(); return useSuspenseQuery({ ...buildLlmUsageFilesQuery( client, request, options, ), ...options, }); } export function setLlmUsageFilesData( 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; xOnBehalfOf?: string | undefined; }, ], data: LlmUsageFilesQueryData, ): LlmUsageFilesQueryData | undefined { const key = queryKeyLlmUsageFiles(...queryKeyBase); return client.setQueryData(key, data); } export function invalidateLlmUsageFiles( 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; xOnBehalfOf?: string | undefined; }] >, filters?: Omit, ): Promise { return client.invalidateQueries({ ...filters, queryKey: ["@meetkai/mka1", "usage", "files", ...queryKeyBase], }); } export function invalidateAllLlmUsageFiles( client: QueryClient, filters?: Omit, ): Promise { return client.invalidateQueries({ ...filters, queryKey: ["@meetkai/mka1", "usage", "files"], }); }