import { Options } from 'globby'; import { CreateCompletionRequest, CreateCompletionResponse } from 'openai/api.js'; import { ConfigurationParameters } from 'openai/configuration.js'; export interface InputItem { type: 'filepath' | 'text'; value: string; } export interface AICompleteOptions { openAI: { config: ConfigurationParameters; }; } export interface RequestArgs { globby?: { options?: Options; patterns: string | readonly string[]; }; input: (args: { args: RequestArgs; filePath: string; text: string; }) => Promise<{ content?: string; createCompletionRequest?: Partial; maxTokens?: number; prompt: string; }>; inputList?: InputItem[]; output: (args: { args: RequestArgs; content: string; createCompletionRequest: Partial; data: CreateCompletionResponse; filePath: string; maxTokens?: number; prompt: string; }) => Promise<{ choice: any; }>; } export declare const defaultCreateCompletionRequest: { temperature: number; top_p: number; frequency_penalty: number; presence_penalty: number; }; export declare class AIComplete { private readonly openai; private readonly options; private static MAX_TOKENS; private static DEFAULT_MODEL; constructor(options: AICompleteOptions); private request; createCompletion(args: RequestArgs): Promise; createCompletionFromText(args: RequestArgs, text: string, filePath?: string): Promise<{ data: import("openai").CreateCompletionResponse; input: { content?: string; createCompletionRequest?: Partial; maxTokens?: number; prompt: string; }; request: CreateCompletionRequest; output: { choice: any; }; args: RequestArgs; filePath: string; }>; }