/**
 * This file was auto-generated by Fern from our API Definition.
 */
import * as core from "../../../../core";
import { OpenAI } from "../../../..";
export declare namespace Engine {
    interface Options {
        token: core.Supplier<core.BearerToken>;
        organization?: core.Supplier<string | undefined>;
        fetcher?: core.FetchFunction;
        streamingFetcher?: core.StreamingFetchFunction;
    }
}
export declare class Engine {
    private readonly options;
    constructor(options: Engine.Options);
    /**
     * Lists the currently available (non-finetuned) models, and provides basic information about each one such as the owner and availability.
     * @throws {OpenAI.UnauthorizedError}
     * @throws {OpenAI.RateLimitError}
     * @throws {OpenAI.InternalServerError}
     */
    list(): Promise<OpenAI.ListEnginesResponse>;
    /**
     * Retrieves a model instance, providing basic information about it such as the owner and availability.
     * @throws {OpenAI.UnauthorizedError}
     * @throws {OpenAI.RateLimitError}
     * @throws {OpenAI.InternalServerError}
     */
    retrieve(engineId: OpenAI.EngineId): Promise<OpenAI.Engine>;
    /**
     * The search endpoint computes similarity scores between provided query and documents. Documents can be passed directly to the API if there are no more than 200 of them. To go beyond the 200 document limit, documents can be processed offline and then used for efficient retrieval at query time. When `file` is set, the search endpoint searches over all the documents in the given file and returns up to the `max_rerank` number of documents. These documents will be returned along with their search scores. The similarity score is a positive score that usually ranges from 0 to 300 (but can sometimes go higher), where a score above 200 usually means the document is semantically similar to the query.
     *
     * @throws {OpenAI.UnauthorizedError}
     * @throws {OpenAI.RateLimitError}
     * @throws {OpenAI.InternalServerError}
     */
    create(engineId: OpenAI.EngineId, request: OpenAI.CreateSearchRequest): Promise<OpenAI.CreateSearchResponse>;
    private _getAuthorizationHeader;
}
