import { default as OpenAI } from 'openai';
import { Stream } from 'openai/streaming';
import { APIResource } from '../../resource';
import { OpenAICompletionsCompatibility } from '../dashscope';

export declare class Completions extends APIResource {
    /**
     * Creates a completion for the provided prompt and parameters.
     */
    create(body: OpenAICompletionsCompatibility.CompletionCreateParamsNonStreaming, options?: OpenAI.RequestOptions): Promise<OpenAI.Completion>;
    create(body: OpenAICompletionsCompatibility.CompletionCreateParamsStreaming, options?: OpenAI.RequestOptions): Promise<Stream<OpenAI.Completion>>;
    create(body: OpenAICompletionsCompatibility.CompletionCreateParamsBase, options?: OpenAI.RequestOptions): Promise<Stream<OpenAI.Completion> | OpenAI.Completion>;
}
export type CompletionModel = OpenAICompletionsCompatibility.CompletionModel;
export type CompletionCreateParams = OpenAICompletionsCompatibility.CompletionCreateParams;
export type CompletionCreateParamsStreaming = OpenAICompletionsCompatibility.CompletionCreateParamsStreaming;
export type CompletionCreateParamsNonStreaming = OpenAICompletionsCompatibility.CompletionCreateParamsNonStreaming;
