import OpenAI, { type ClientOptions } from 'openai'; import { Images } from './resources/images.js'; import { SpeechToText } from './resources/speech-to-text.js'; import { TextToSpeech } from './resources/text-to-speech.js'; import { Messages } from './resources/messages.js'; import { OCR } from './resources/ocr.js'; import { Video } from './resources/video.js'; import { Bagoodex } from './resources/bagoodex.js'; import { Music } from './resources/music.js'; import { Account } from './resources/account.js'; import { Batches } from './resources/batches.js'; export { OpenAI }; /** * Interface for client passed to resources. * Extends the basic HTTP methods with baseURL access. */ export interface AIMLAPIClient { post: (path: string, options?: { body?: unknown | undefined; query?: Record | undefined; headers?: Record | undefined; }) => Promise; get: (path: string, options?: { query?: Record | undefined; }) => Promise; baseURL: string; } export interface AIMLAPIClientOptions extends Omit { /** * API key for authentication. * Defaults to process.env['AIML_API_KEY']. */ apiKey?: ClientOptions['apiKey']; /** * Override the default base URL. * Defaults to process.env['AIML_API_BASE']. */ baseURL?: ClientOptions['baseURL']; /** * Azure endpoint (only for AzureAIMLAPI). */ azure_endpoint?: string | undefined; } /** * Base client interface with AIMLAPI-specific resources */ interface AIMLAPIBaseClient { /** * Speech-to-text using new API with slam-1 and other models */ speechToText: SpeechToText; /** * Text-to-speech using various providers */ textToSpeech: TextToSpeech; /** * Messages API for Anthropic-compatible endpoint */ messages: Messages; /** * OCR and Vision processing */ ocr: OCR; /** * Video generation using various providers */ video: Video; /** * Bagoodex search for internal AI services */ bagoodex: Bagoodex; /** * Music generation with multiple providers */ music: Music; /** * Account balance and model information */ account: Account; /** * Batch processing for chat completions */ batch: Batches; } /** * Synchronous AIMLAPI Client */ export declare class AIMLAPI extends OpenAI implements AIMLAPIBaseClient { constructor(opts?: AIMLAPIClientOptions); private _speechToTextInstance; private _textToSpeechInstance; private _messagesInstance; private _ocrInstance; private _videoInstance; private _bagoodexInstance; private _musicInstance; private _accountInstance; private _batchInstance; get speechToText(): SpeechToText; get textToSpeech(): TextToSpeech; get messages(): Messages; get ocr(): OCR; get video(): Video; get bagoodex(): Bagoodex; get music(): Music; get account(): Account; get batch(): Batches; } export declare class AzureAIMLAPI extends OpenAI implements AIMLAPIBaseClient { constructor(opts?: AIMLAPIClientOptions); private _speechToTextInstance; private _textToSpeechInstance; private _messagesInstance; private _ocrInstance; private _videoInstance; private _bagoodexInstance; private _musicInstance; private _accountInstance; private _batchInstance; get speechToText(): SpeechToText; get textToSpeech(): TextToSpeech; get messages(): Messages; get ocr(): OCR; get video(): Video; get bagoodex(): Bagoodex; get music(): Music; get account(): Account; get batch(): Batches; } export type Client = AIMLAPI; export type AzureClient = AzureAIMLAPI; export { Images, Messages, OCR, Video, Bagoodex, Music, Batches, Account }; //# sourceMappingURL=client.d.ts.map