/**
 * This file was auto-generated by Fern from our API Definition.
 */
import * as core from "../../../../core";
import { OpenAI } from "../../../..";
export declare namespace Completion {
    interface Options {
        token: core.Supplier<core.BearerToken>;
        organization?: core.Supplier<string | undefined>;
        fetcher?: core.FetchFunction;
        streamingFetcher?: core.StreamingFetchFunction;
    }
}
export declare class Completion {
    private readonly options;
    constructor(options: Completion.Options);
    create(request: OpenAI.CreateCompletionRequest & {
        stream?: false;
    }): Promise<OpenAI.CreateCompletionResponse>;
    create(request: OpenAI.CreateCompletionRequest & {
        stream: true;
    }, cb: (data: OpenAI.CreateCompletionResponseChunk) => void, opts?: Pick<core.StreamingFetcher.Args, "onError" | "onFinish" | "abortController" | "timeoutMs">): Promise<void>;
    private _getAuthorizationHeader;
}
