UNPKG

@neuroequality/neuroadapt-ai

Version:

AI-powered accessibility personalization for neurodivergent users

21 lines (20 loc) 1.14 kB
import { AIAdapter, AIAdapterConfig, AIMessage, AIResponse, AICompletionOptions, AIStreamChunk } from '../types/index.js'; export declare abstract class BaseAIAdapter implements AIAdapter { protected config: AIAdapterConfig; protected currentModel: string; constructor(config: AIAdapterConfig); abstract get name(): string; abstract get models(): string[]; protected abstract getDefaultModel(): string; abstract complete(messages: AIMessage[], options?: AICompletionOptions): Promise<AIResponse>; abstract stream?(messages: AIMessage[], options?: AICompletionOptions): AsyncIterable<AIStreamChunk>; abstract isAvailable(): Promise<boolean>; getModel(): string; setModel(model: string): void; protected retry<T>(operation: () => Promise<T>, attempts?: number, delay?: number): Promise<T>; protected isRetryableError(error: unknown): boolean; protected sleep(ms: number): Promise<void>; protected formatMessages(messages: AIMessage[]): unknown[]; protected createAbortController(signal?: AbortSignal, timeout?: number): AbortController; } //# sourceMappingURL=base-adapter.d.ts.map