import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient.js";
import * as core from "../../../../core/index.js";
import type * as Vapi from "../../../index.js";
export declare namespace EvalClient {
    interface Options extends BaseClientOptions {
    }
    interface RequestOptions extends BaseRequestOptions {
    }
}
export declare class EvalClient {
    protected readonly _options: EvalClient.Options;
    constructor(options: EvalClient.Options);
    /**
     * @param {Vapi.EvalControllerGetPaginatedRequest} request
     * @param {EvalClient.RequestOptions} requestOptions - Request-specific configuration.
     *
     * @example
     *     await client.eval.evalControllerGetPaginated()
     */
    evalControllerGetPaginated(request?: Vapi.EvalControllerGetPaginatedRequest, requestOptions?: EvalClient.RequestOptions): core.HttpResponsePromise<Vapi.EvalPaginatedResponse>;
    private __evalControllerGetPaginated;
    /**
     * @param {Vapi.CreateEvalDto} request
     * @param {EvalClient.RequestOptions} requestOptions - Request-specific configuration.
     *
     * @example
     *     await client.eval.evalControllerCreate({
     *         messages: [{
     *                 role: "assistant"
     *             }],
     *         type: "chat.mockConversation"
     *     })
     */
    evalControllerCreate(request: Vapi.CreateEvalDto, requestOptions?: EvalClient.RequestOptions): core.HttpResponsePromise<Vapi.Eval>;
    private __evalControllerCreate;
    /**
     * @param {Vapi.EvalControllerGetRequest} request
     * @param {EvalClient.RequestOptions} requestOptions - Request-specific configuration.
     *
     * @example
     *     await client.eval.evalControllerGet({
     *         id: "id"
     *     })
     */
    evalControllerGet(request: Vapi.EvalControllerGetRequest, requestOptions?: EvalClient.RequestOptions): core.HttpResponsePromise<Vapi.Eval>;
    private __evalControllerGet;
    /**
     * @param {Vapi.EvalControllerRemoveRequest} request
     * @param {EvalClient.RequestOptions} requestOptions - Request-specific configuration.
     *
     * @example
     *     await client.eval.evalControllerRemove({
     *         id: "id"
     *     })
     */
    evalControllerRemove(request: Vapi.EvalControllerRemoveRequest, requestOptions?: EvalClient.RequestOptions): core.HttpResponsePromise<Vapi.Eval>;
    private __evalControllerRemove;
    /**
     * @param {Vapi.UpdateEvalDto} request
     * @param {EvalClient.RequestOptions} requestOptions - Request-specific configuration.
     *
     * @example
     *     await client.eval.evalControllerUpdate({
     *         id: "id"
     *     })
     */
    evalControllerUpdate(request: Vapi.UpdateEvalDto, requestOptions?: EvalClient.RequestOptions): core.HttpResponsePromise<Vapi.Eval>;
    private __evalControllerUpdate;
    /**
     * @param {Vapi.EvalControllerGetRunRequest} request
     * @param {EvalClient.RequestOptions} requestOptions - Request-specific configuration.
     *
     * @example
     *     await client.eval.evalControllerGetRun({
     *         id: "id"
     *     })
     */
    evalControllerGetRun(request: Vapi.EvalControllerGetRunRequest, requestOptions?: EvalClient.RequestOptions): core.HttpResponsePromise<Vapi.EvalRun>;
    private __evalControllerGetRun;
    /**
     * @param {Vapi.EvalControllerRemoveRunRequest} request
     * @param {EvalClient.RequestOptions} requestOptions - Request-specific configuration.
     *
     * @example
     *     await client.eval.evalControllerRemoveRun({
     *         id: "id"
     *     })
     */
    evalControllerRemoveRun(request: Vapi.EvalControllerRemoveRunRequest, requestOptions?: EvalClient.RequestOptions): core.HttpResponsePromise<Vapi.EvalRun>;
    private __evalControllerRemoveRun;
    /**
     * @param {Vapi.EvalControllerGetRunsPaginatedRequest} request
     * @param {EvalClient.RequestOptions} requestOptions - Request-specific configuration.
     *
     * @example
     *     await client.eval.evalControllerGetRunsPaginated()
     */
    evalControllerGetRunsPaginated(request?: Vapi.EvalControllerGetRunsPaginatedRequest, requestOptions?: EvalClient.RequestOptions): core.HttpResponsePromise<Vapi.EvalRunPaginatedResponse>;
    private __evalControllerGetRunsPaginated;
    /**
     * @param {Vapi.CreateEvalRunDto} request
     * @param {EvalClient.RequestOptions} requestOptions - Request-specific configuration.
     *
     * @example
     *     await client.eval.evalControllerRun({
     *         target: {
     *             type: "assistant"
     *         },
     *         type: "eval"
     *     })
     */
    evalControllerRun(request: Vapi.CreateEvalRunDto, requestOptions?: EvalClient.RequestOptions): core.HttpResponsePromise<Record<string, unknown>>;
    private __evalControllerRun;
    protected _getAuthorizationHeader(): Promise<string>;
}
