import type { AudioClassificationInput, AudioClassificationOutput, AutomaticSpeechRecognitionInput, AutomaticSpeechRecognitionOutput, ChatCompletionInput, ChatCompletionOutput, DocumentQuestionAnsweringInput, DocumentQuestionAnsweringOutput, FeatureExtractionInput, FeatureExtractionOutput, FillMaskInput, FillMaskOutput, ImageClassificationInput, ImageClassificationOutput, ImageSegmentationInput, ImageSegmentationOutput, ImageToImageInput, ImageToTextInput, ImageToTextOutput, ImageToVideoInput, ImageTextToImageInput, ImageTextToVideoInput, ObjectDetectionInput, ObjectDetectionOutput, QuestionAnsweringInput, QuestionAnsweringOutput, SentenceSimilarityInput, SentenceSimilarityOutput, SummarizationInput, SummarizationOutput, TableQuestionAnsweringInput, TableQuestionAnsweringOutput, TextClassificationOutput, TextGenerationInput, TextGenerationOutput, TextToImageInput, TextToSpeechInput, TextToVideoInput, TokenClassificationInput, TokenClassificationOutput, TranslationInput, TranslationOutput, VisualQuestionAnsweringInput, VisualQuestionAnsweringOutput, ZeroShotClassificationInput, ZeroShotClassificationOutput, ZeroShotImageClassificationInput, ZeroShotImageClassificationOutput } from "@huggingface/tasks"; import type { AudioToAudioArgs, AudioToAudioOutput } from "../tasks/audio/audioToAudio.js"; import type { BaseArgs, BodyParams, HeaderParams, InferenceProvider, OutputType, RequestArgs, UrlParams } from "../types.js"; import type { ImageToImageArgs } from "../tasks/cv/imageToImage.js"; import type { AutomaticSpeechRecognitionArgs } from "../tasks/audio/automaticSpeechRecognition.js"; import type { ImageToVideoArgs } from "../tasks/cv/imageToVideo.js"; import type { ImageTextToImageArgs } from "../tasks/cv/imageTextToImage.js"; import type { ImageTextToVideoArgs } from "../tasks/cv/imageTextToVideo.js"; import type { ImageSegmentationArgs } from "../tasks/cv/imageSegmentation.js"; import type { ImageToTextArgs } from "../tasks/cv/imageToText.js"; /** * Base class for task-specific provider helpers */ export declare abstract class TaskProviderHelper { readonly provider: InferenceProvider; protected baseUrl: string; readonly clientSideRoutingOnly: boolean; constructor(provider: InferenceProvider, baseUrl: string, clientSideRoutingOnly?: boolean); /** * Return the response in the expected format. * Needs to be implemented in the subclasses. */ abstract getResponse(response: unknown, url?: string, headers?: HeadersInit, outputType?: OutputType, signal?: AbortSignal): Promise; /** * Prepare the route for the request * Needs to be implemented in the subclasses. */ abstract makeRoute(params: UrlParams): string; /** * Prepare the payload for the request * Needs to be implemented in the subclasses. */ abstract preparePayload(params: BodyParams): unknown; /** * Prepare the base URL for the request */ makeBaseUrl(params: UrlParams): string; /** * Prepare the body for the request */ makeBody(params: BodyParams): BodyInit; /** * Prepare the URL for the request */ makeUrl(params: UrlParams): string; /** * Prepare the headers for the request */ prepareHeaders(params: HeaderParams, isBinary: boolean): Record; } export interface TextToImageTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit, outputType?: OutputType, signal?: AbortSignal): Promise>; preparePayload(params: BodyParams): Record; } export interface TextToVideoTaskHelper { getResponse(response: unknown, url?: string, headers?: Record, outputType?: undefined, signal?: AbortSignal): Promise; preparePayload(params: BodyParams): Record; } export interface ImageToImageTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit, outputType?: undefined, signal?: AbortSignal): Promise; preparePayload(params: BodyParams): Record; preparePayloadAsync(args: ImageToImageArgs): Promise; } export interface ImageToVideoTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit, outputType?: undefined, signal?: AbortSignal): Promise; preparePayload(params: BodyParams): Record; preparePayloadAsync(args: ImageToVideoArgs): Promise; } export interface ImageTextToImageTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit, outputType?: undefined, signal?: AbortSignal): Promise; preparePayload(params: BodyParams): Record; preparePayloadAsync(args: ImageTextToImageArgs): Promise; } export interface ImageTextToVideoTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit, outputType?: undefined, signal?: AbortSignal): Promise; preparePayload(params: BodyParams): Record; preparePayloadAsync(args: ImageTextToVideoArgs): Promise; } export interface ImageSegmentationTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit, outputType?: undefined, signal?: AbortSignal): Promise; preparePayload(params: BodyParams): Record | BodyInit; preparePayloadAsync(args: ImageSegmentationArgs): Promise; } export interface ImageClassificationTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit): Promise; preparePayload(params: BodyParams): Record | BodyInit; } export interface ObjectDetectionTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit): Promise; preparePayload(params: BodyParams): Record | BodyInit; } export interface ImageToTextTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit): Promise; preparePayload(params: BodyParams): Record | BodyInit; preparePayloadAsync(args: ImageToTextArgs, signal?: AbortSignal): Promise; } export interface ZeroShotImageClassificationTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit): Promise; preparePayload(params: BodyParams): Record | BodyInit; } export interface TextGenerationTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit): Promise; preparePayload(params: BodyParams): Record; } export interface ConversationalTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit): Promise; preparePayload(params: BodyParams): Record; } export interface TextClassificationTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit): Promise; preparePayload(params: BodyParams): Record; } export interface QuestionAnsweringTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit): Promise; preparePayload(params: BodyParams): Record; } export interface FillMaskTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit): Promise; preparePayload(params: BodyParams): Record; } export interface ZeroShotClassificationTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit): Promise; preparePayload(params: BodyParams): Record; } export interface SentenceSimilarityTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit): Promise; preparePayload(params: BodyParams): Record; } export interface TableQuestionAnsweringTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit): Promise; preparePayload(params: BodyParams): Record; } export interface TokenClassificationTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit): Promise; preparePayload(params: BodyParams): Record; } export interface TranslationTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit): Promise; preparePayload(params: BodyParams): Record; } export interface SummarizationTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit): Promise; preparePayload(params: BodyParams): Record; } export interface TextToSpeechTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit, outputType?: undefined, signal?: AbortSignal): Promise; preparePayload(params: BodyParams): Record; } export interface TextToAudioTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit, outputType?: undefined, signal?: AbortSignal): Promise; preparePayload(params: BodyParams & BaseArgs>): Record; } export interface AudioToAudioTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit, outputType?: undefined, signal?: AbortSignal): Promise; preparePayload(params: BodyParams>): Record | BodyInit; preparePayloadAsync(args: AudioToAudioArgs): Promise; } export interface AutomaticSpeechRecognitionTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit, outputType?: undefined, signal?: AbortSignal): Promise; preparePayload(params: BodyParams): Record | BodyInit; preparePayloadAsync(args: AutomaticSpeechRecognitionArgs): Promise; } export interface AudioClassificationTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit): Promise; preparePayload(params: BodyParams): Record | BodyInit; } export interface DocumentQuestionAnsweringTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit): Promise; preparePayload(params: BodyParams): Record | BodyInit; } export interface FeatureExtractionTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit): Promise; preparePayload(params: BodyParams): Record; } export interface VisualQuestionAnsweringTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit): Promise; preparePayload(params: BodyParams): Record | BodyInit; } export interface TabularClassificationTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit): Promise; preparePayload(params: BodyParams; }; } & Record>): Record | BodyInit; } export interface TabularRegressionTaskHelper { getResponse(response: unknown, url?: string, headers?: HeadersInit): Promise; preparePayload(params: BodyParams; }; } & Record>): Record | BodyInit; } export declare class BaseConversationalTask extends TaskProviderHelper implements ConversationalTaskHelper { constructor(provider: InferenceProvider, baseUrl: string, clientSideRoutingOnly?: boolean); makeRoute(): string; preparePayload(params: BodyParams): Record; getResponse(response: ChatCompletionOutput): Promise; } export declare class BaseTextGenerationTask extends TaskProviderHelper implements TextGenerationTaskHelper { constructor(provider: InferenceProvider, baseUrl: string, clientSideRoutingOnly?: boolean); preparePayload(params: BodyParams): Record; makeRoute(): string; getResponse(response: unknown): Promise; } export declare class AutoRouterConversationalTask extends BaseConversationalTask { constructor(); makeBaseUrl(params: UrlParams): string; } //# sourceMappingURL=providerHelper.d.ts.map