import type { MakeOptional, ModelApi, ModelId, ModelProvider, ModelRequestOptions } from "@typeDefs"; export interface BaseModelProviderConfig { modelId: ModelId; } /** * @category Core Implementations */ export declare abstract class BaseModelProvider implements ModelProvider { readonly api: ModelApi; readonly config: TModelProviderConfig; readonly history: { options: TRequestOptions; meta: TMetaOptions | undefined; response: TResponse | undefined; }[]; constructor({ api, config, }: { api: ModelApi; config: TModelProviderConfig; }); protected abstract dispatchRequest(options: TRequestOptions, meta?: TMetaOptions): Promise; sendRequest(options: MakeOptional, meta?: TMetaOptions): Promise; }