/**
 * This file was auto-generated by Fern from our API Definition.
 */
import * as environments from "../../../../environments";
import * as core from "../../../../core";
import * as Cohere from "../../..";
export declare namespace EmbedJobs {
    interface Options {
        environment?: core.Supplier<environments.CohereEnvironment | string>;
        token?: core.Supplier<core.BearerToken | undefined>;
        clientName?: core.Supplier<string | undefined>;
    }
    interface RequestOptions {
        timeoutInSeconds?: number;
        maxRetries?: number;
    }
}
export declare class EmbedJobs {
    protected readonly _options: EmbedJobs.Options;
    constructor(_options?: EmbedJobs.Options);
    /**
     * The list embed job endpoint allows users to view all embed jobs history for that specific user.
     * @throws {@link Cohere.BadRequestError}
     * @throws {@link Cohere.TooManyRequestsError}
     * @throws {@link Cohere.InternalServerError}
     *
     * @example
     *     await cohere.embedJobs.list()
     */
    list(requestOptions?: EmbedJobs.RequestOptions): Promise<Cohere.ListEmbedJobResponse>;
    /**
     * This API launches an async Embed job for a [Dataset](https://docs.cohere.com/docs/datasets) of type `embed-input`. The result of a completed embed job is new Dataset of type `embed-output`, which contains the original text entries and the corresponding embeddings.
     * @throws {@link Cohere.BadRequestError}
     * @throws {@link Cohere.TooManyRequestsError}
     * @throws {@link Cohere.InternalServerError}
     *
     * @example
     *     await cohere.embedJobs.create({
     *         model: "model",
     *         datasetId: "dataset_id",
     *         inputType: Cohere.EmbedInputType.SearchDocument
     *     })
     */
    create(request: Cohere.CreateEmbedJobRequest, requestOptions?: EmbedJobs.RequestOptions): Promise<Cohere.CreateEmbedJobResponse>;
    /**
     * This API retrieves the details about an embed job started by the same user.
     * @throws {@link Cohere.BadRequestError}
     * @throws {@link Cohere.NotFoundError}
     * @throws {@link Cohere.TooManyRequestsError}
     * @throws {@link Cohere.InternalServerError}
     *
     * @example
     *     await cohere.embedJobs.get("id")
     *
     * @example
     *     await cohere.embedJobs.get("string")
     */
    get(id: string, requestOptions?: EmbedJobs.RequestOptions): Promise<Cohere.EmbedJob>;
    /**
     * This API allows users to cancel an active embed job. Once invoked, the embedding process will be terminated, and users will be charged for the embeddings processed up to the cancellation point. It's important to note that partial results will not be available to users after cancellation.
     * @throws {@link Cohere.BadRequestError}
     * @throws {@link Cohere.NotFoundError}
     * @throws {@link Cohere.TooManyRequestsError}
     * @throws {@link Cohere.InternalServerError}
     *
     * @example
     *     await cohere.embedJobs.cancel("id")
     *
     * @example
     *     await cohere.embedJobs.cancel("string")
     */
    cancel(id: string, requestOptions?: EmbedJobs.RequestOptions): Promise<void>;
    protected _getAuthorizationHeader(): Promise<string>;
}
