/**
 * Synapse REST API
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * The version of the OpenAPI document: v1
 *
 *
 * 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 { ExtendedBounds } from './ExtendedBounds';
/**
 * A <a href="https://docs.opensearch.org/latest/aggregations/bucket/histogram/"><code>histogram</code></a> bucket aggregation over a numeric column. Must specify <code>extended_bounds</code> or <code>hard_bounds</code> so the bucket count is bounded.
 * @export
 * @interface HistogramAggregation
 */
export interface HistogramAggregation {
    /**
     * Optional. Whether to return buckets as a keyed object rather than an array.
     * @type {boolean}
     * @memberof HistogramAggregation
     */
    keyed?: boolean;
    /**
     *
     * @type {ExtendedBounds}
     * @memberof HistogramAggregation
     */
    extended_bounds?: ExtendedBounds;
    /**
     *
     * @type {ExtendedBounds}
     * @memberof HistogramAggregation
     */
    hard_bounds?: ExtendedBounds;
    /**
     * Required. The numeric column to bucket.
     * @type {string}
     * @memberof HistogramAggregation
     */
    field?: string;
    /**
     * Required. Bucket width. Must be positive.
     * @type {number}
     * @memberof HistogramAggregation
     */
    interval?: number;
    /**
     * Optional. Minimum document count for a bucket to be returned.
     * @type {number}
     * @memberof HistogramAggregation
     */
    min_doc_count?: number;
    /**
     * Optional. Shifts bucket boundaries by this amount.
     * @type {number}
     * @memberof HistogramAggregation
     */
    offset?: number;
    /**
     * Optional. Bucket sort order &mdash; a <code>{metric: "asc|desc"}</code> object or an array of them.
     * @type {any}
     * @memberof HistogramAggregation
     */
    order?: any | null;
    /**
     * Optional. Bucket value assigned to documents missing <code>field</code>.
     * @type {any}
     * @memberof HistogramAggregation
     */
    missing?: any | null;
    /**
     * Optional. Format applied to the bucket key in the response.
     * @type {string}
     * @memberof HistogramAggregation
     */
    format?: string;
}
/**
 * Check if a given object implements the HistogramAggregation interface.
 */
export declare function instanceOfHistogramAggregation(value: object): value is HistogramAggregation;
export declare function HistogramAggregationFromJSON(json: any): HistogramAggregation;
export declare function HistogramAggregationFromJSONTyped(json: any, ignoreDiscriminator: boolean): HistogramAggregation;
export declare function HistogramAggregationToJSON(json: any): HistogramAggregation;
export declare function HistogramAggregationToJSONTyped(value?: HistogramAggregation | null, ignoreDiscriminator?: boolean): any;
