import { BaseAPIRequestFactory } from "../../datadog-api-client-common/baseapi";
import { Configuration } from "../../datadog-api-client-common/configuration";
import { RequestContext, ResponseContext } from "../../datadog-api-client-common/http/http";
import { GetDataObservabilityMonitorRunStatusResponse } from "../models/GetDataObservabilityMonitorRunStatusResponse";
import { RunDataObservabilityMonitorResponse } from "../models/RunDataObservabilityMonitorResponse";
export declare class DataObservabilityApiRequestFactory extends BaseAPIRequestFactory {
    getDataObservabilityMonitorRunStatus(runId: string, _options?: Configuration): Promise<RequestContext>;
    runDataObservabilityMonitor(monitorId: number, _options?: Configuration): Promise<RequestContext>;
}
export declare class DataObservabilityApiResponseProcessor {
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to getDataObservabilityMonitorRunStatus
     * @throws ApiException if the response code was not in [200, 299]
     */
    getDataObservabilityMonitorRunStatus(response: ResponseContext): Promise<GetDataObservabilityMonitorRunStatusResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to runDataObservabilityMonitor
     * @throws ApiException if the response code was not in [200, 299]
     */
    runDataObservabilityMonitor(response: ResponseContext): Promise<RunDataObservabilityMonitorResponse>;
}
export interface DataObservabilityApiGetDataObservabilityMonitorRunStatusRequest {
    /**
     * The ID of the monitor run to retrieve status for.
     * @type string
     */
    runId: string;
}
export interface DataObservabilityApiRunDataObservabilityMonitorRequest {
    /**
     * The ID of the data observability monitor to run.
     * @type number
     */
    monitorId: number;
}
export declare class DataObservabilityApi {
    private requestFactory;
    private responseProcessor;
    private configuration;
    constructor(configuration: Configuration, requestFactory?: DataObservabilityApiRequestFactory, responseProcessor?: DataObservabilityApiResponseProcessor);
    /**
     * Retrieves the current status of a data observability monitor run. Poll this endpoint after triggering a run to determine when evaluation is complete.
     * @param param The request object
     */
    getDataObservabilityMonitorRunStatus(param: DataObservabilityApiGetDataObservabilityMonitorRunStatusRequest, options?: Configuration): Promise<GetDataObservabilityMonitorRunStatusResponse>;
    /**
     * Manually triggers a run for a data observability monitor. Only monitors that are not scheduled (manually-runnable) can be triggered this way.
     * @param param The request object
     */
    runDataObservabilityMonitor(param: DataObservabilityApiRunDataObservabilityMonitorRequest, options?: Configuration): Promise<RunDataObservabilityMonitorResponse>;
}
