/* * 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 { buildLlmEvalsGetSampleAudioQuery, LlmEvalsGetSampleAudioQueryData, prefetchLlmEvalsGetSampleAudio, queryKeyLlmEvalsGetSampleAudio, } from "./llmEvalsGetSampleAudio.core.js"; export { buildLlmEvalsGetSampleAudioQuery, type LlmEvalsGetSampleAudioQueryData, prefetchLlmEvalsGetSampleAudio, queryKeyLlmEvalsGetSampleAudio, }; export type LlmEvalsGetSampleAudioQueryError = | SDKError | ResponseValidationError | ConnectionError | RequestAbortedError | RequestTimeoutError | InvalidRequestError | UnexpectedClientError | SDKValidationError; /** * Get eval sample audio * * @remarks * Returns `{ object, audio, sample_index, task_id, model }` for a single transcription sample — the clip reference (a base64 `data:` URI or a URL) read from the un-redacted `dataset_row` (list responses redact inline `data:` blobs), plus the resolved task/model. Prefers the task's configured `audio_column`, falling back to a heuristic scan. The clip differs across tasks, so pass `task_id` when a run has more than one transcription task; if the index spans multiple tasks and `task_id` is omitted, returns 400 rather than guessing. `model` is optional (the clip is identical across models) and only extends the index prefix. Returns 404 when the sample or its audio is absent, 413 when the inline clip is too large. Returns 503 when object storage is briefly unreachable, as distinct from 404 for a clip that is genuinely gone. */ export function useLlmEvalsGetSampleAudio( request: operations.GetEvalSampleAudioRequest, options?: QueryHookOptions< LlmEvalsGetSampleAudioQueryData, LlmEvalsGetSampleAudioQueryError >, ): UseQueryResult< LlmEvalsGetSampleAudioQueryData, LlmEvalsGetSampleAudioQueryError > { const client = useSDKContext(); return useQuery({ ...buildLlmEvalsGetSampleAudioQuery( client, request, options, ), ...options, }); } /** * Get eval sample audio * * @remarks * Returns `{ object, audio, sample_index, task_id, model }` for a single transcription sample — the clip reference (a base64 `data:` URI or a URL) read from the un-redacted `dataset_row` (list responses redact inline `data:` blobs), plus the resolved task/model. Prefers the task's configured `audio_column`, falling back to a heuristic scan. The clip differs across tasks, so pass `task_id` when a run has more than one transcription task; if the index spans multiple tasks and `task_id` is omitted, returns 400 rather than guessing. `model` is optional (the clip is identical across models) and only extends the index prefix. Returns 404 when the sample or its audio is absent, 413 when the inline clip is too large. Returns 503 when object storage is briefly unreachable, as distinct from 404 for a clip that is genuinely gone. */ export function useLlmEvalsGetSampleAudioSuspense( request: operations.GetEvalSampleAudioRequest, options?: SuspenseQueryHookOptions< LlmEvalsGetSampleAudioQueryData, LlmEvalsGetSampleAudioQueryError >, ): UseSuspenseQueryResult< LlmEvalsGetSampleAudioQueryData, LlmEvalsGetSampleAudioQueryError > { const client = useSDKContext(); return useSuspenseQuery({ ...buildLlmEvalsGetSampleAudioQuery( client, request, options, ), ...options, }); } export function setLlmEvalsGetSampleAudioData( client: QueryClient, queryKeyBase: [ runId: string, sampleIndex: number, parameters: { model?: string | undefined; taskId?: string | undefined; xOnBehalfOf?: string | undefined; }, ], data: LlmEvalsGetSampleAudioQueryData, ): LlmEvalsGetSampleAudioQueryData | undefined { const key = queryKeyLlmEvalsGetSampleAudio(...queryKeyBase); return client.setQueryData(key, data); } export function invalidateLlmEvalsGetSampleAudio( client: QueryClient, queryKeyBase: TupleToPrefixes< [ runId: string, sampleIndex: number, parameters: { model?: string | undefined; taskId?: string | undefined; xOnBehalfOf?: string | undefined; }, ] >, filters?: Omit, ): Promise { return client.invalidateQueries({ ...filters, queryKey: ["@meetkai/mka1", "evals", "getSampleAudio", ...queryKeyBase], }); } export function invalidateAllLlmEvalsGetSampleAudio( client: QueryClient, filters?: Omit, ): Promise { return client.invalidateQueries({ ...filters, queryKey: ["@meetkai/mka1", "evals", "getSampleAudio"], }); }