/**
 * Admin API
 * The Admin API is used to manage the ApeCloud platform.
 *
 * The version of the OpenAPI document: 1.0.0
 * Contact: support@apecloud.com
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import type { Configuration } from '../configuration';
import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios';
import { type RequestArgs, BaseAPI } from '../base';
import type { AggregateMetaData } from '../models';
import type { AggregateMetaDataType } from '../models';
/**
 * MetricsApi - axios parameter creator
 * @export
 */
export declare const MetricsApiAxiosParamCreator: (configuration?: Configuration) => {
    /**
     * Get aggregate meta data including total count and time series
     * @summary Get aggregate meta data
     * @param {AggregateMetaDataType} metaData
     * @param {number} start The start of the time range for the query, unit is seconds.
     * @param {number} end The end of the time range for the query, unit is seconds.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getAggregateMetaData: (metaData: AggregateMetaDataType, start: number, end: number, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
};
/**
 * MetricsApi - functional programming interface
 * @export
 */
export declare const MetricsApiFp: (configuration?: Configuration) => {
    /**
     * Get aggregate meta data including total count and time series
     * @summary Get aggregate meta data
     * @param {AggregateMetaDataType} metaData
     * @param {number} start The start of the time range for the query, unit is seconds.
     * @param {number} end The end of the time range for the query, unit is seconds.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getAggregateMetaData(metaData: AggregateMetaDataType, start: number, end: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AggregateMetaData>>;
};
/**
 * MetricsApi - factory interface
 * @export
 */
export declare const MetricsApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
    /**
     * Get aggregate meta data including total count and time series
     * @summary Get aggregate meta data
     * @param {MetricsApiGetAggregateMetaDataRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getAggregateMetaData(requestParameters: MetricsApiGetAggregateMetaDataRequest, options?: RawAxiosRequestConfig): AxiosPromise<AggregateMetaData>;
};
/**
 * MetricsApi - interface
 * @export
 * @interface MetricsApi
 */
export interface MetricsApiInterface {
    /**
     * Get aggregate meta data including total count and time series
     * @summary Get aggregate meta data
     * @param {MetricsApiGetAggregateMetaDataRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof MetricsApiInterface
     */
    getAggregateMetaData(requestParameters: MetricsApiGetAggregateMetaDataRequest, options?: RawAxiosRequestConfig): AxiosPromise<AggregateMetaData>;
}
/**
 * Request parameters for getAggregateMetaData operation in MetricsApi.
 * @export
 * @interface MetricsApiGetAggregateMetaDataRequest
 */
export interface MetricsApiGetAggregateMetaDataRequest {
    /**
     *
     * @type {AggregateMetaDataType}
     * @memberof MetricsApiGetAggregateMetaData
     */
    readonly metaData: AggregateMetaDataType;
    /**
     * The start of the time range for the query, unit is seconds.
     * @type {number}
     * @memberof MetricsApiGetAggregateMetaData
     */
    readonly start: number;
    /**
     * The end of the time range for the query, unit is seconds.
     * @type {number}
     * @memberof MetricsApiGetAggregateMetaData
     */
    readonly end: number;
}
/**
 * MetricsApi - object-oriented interface
 * @export
 * @class MetricsApi
 * @extends {BaseAPI}
 */
export declare class MetricsApi extends BaseAPI implements MetricsApiInterface {
    /**
     * Get aggregate meta data including total count and time series
     * @summary Get aggregate meta data
     * @param {MetricsApiGetAggregateMetaDataRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof MetricsApi
     */
    getAggregateMetaData(requestParameters: MetricsApiGetAggregateMetaDataRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AggregateMetaData, any, {}>>;
}
//# sourceMappingURL=metrics-api.d.ts.map