import type { estypes } from "@elastic/elasticsearch"; import type { AllFields, DateFields, GeoFields, IpFields, NumericFields, TermFields, TextFields, TextualFields } from "../fields.js"; import type { MappingObject, Query } from "../query/search-query.js"; export type BucketAggregation = AdjacencyMatrix | AutoDateHistogram | CategorizeText | Children | Composite | DateHistogramAggregation | DiversifiedSamplerAggregation | FiltersAggregation | GeoHashGridAggregation | GeoHexGridAggregation | GeoTileGridAggregation | GlobalAggregation | HistogramAggregation | IpPrefixAggregation | IpRangeAggregation | MissingAggregation | MultiTermsAggregation | NestedAggregation | ParentAggregation | RangeAggregation | RareTermsAggregation | ReverseNestedAggregation | SamplerAggregation | SignificantTermsAggregation | SignificantTextAggregation | TermsAggregation | VariableWidthAggregation; /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-adjacency-matrix-aggregation.html */ export interface AdjacencyMatrix { adjacency_matrix: estypes.AggregationsAdjacencyMatrixAggregation & { filters: Record>; }; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-autodatehistogram-aggregation.html */ export interface AutoDateHistogram { auto_date_histogram: estypes.AggregationsAutoDateHistogramAggregation & { field?: DateFields; }; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-categorize-text-aggregation.html */ export interface CategorizeText { categorize_text: estypes.AggregationsCategorizeTextAggregation & { field: TextualFields; }; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-children-aggregation.html */ export interface Children { categorize_text: estypes.AggregationsChildrenAggregation; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-composite-aggregation.html */ export interface Composite { categorize_text: estypes.AggregationsCompositeAggregation & { sources: { [field in AllFields]: CompositeFieldAggregation; }[]; }; } export type CompositeFieldAggregation = HistogramAggregation | DateHistogramAggregation | GeoTileGridAggregation | TermsAggregation; /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-datehistogram-aggregation.html */ export interface DateHistogramAggregation { date_histogram: estypes.AggregationsDateHistogramAggregation & { field?: DateFields; }; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-daterange-aggregation.html */ export interface DateRangeAggregation { date_range: estypes.AggregationsDateRangeAggregation & { field?: DateFields; }; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-diversified-sampler-aggregation.html */ export interface DiversifiedSamplerAggregation { diversified_sampler: estypes.AggregationsDiversifiedSamplerAggregation & { field?: DateFields; }; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-filters-aggregation.html */ export interface FiltersAggregation { filters: estypes.AggregationsFiltersAggregate; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-geodistance-aggregation.html */ export interface GeoDistanceAggregation { geo_distance: estypes.AggregationsGeoDistanceAggregation & { field?: GeoFields; }; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-geohashgrid-aggregation.html */ export interface GeoHashGridAggregation { geohash_grid: estypes.AggregationsGeoHashGridAggregation & { field?: GeoFields; }; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-geohexgrid-aggregation.html */ export interface GeoHexGridAggregation { geohex_grid: estypes.AggregationsGeohexGridAggregation & { field?: GeoFields; }; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-geotilegrid-aggregation.html */ export interface GeoTileGridAggregation { geotile_grid: estypes.AggregationsGeoTileGridAggregation & { field?: GeoFields; }; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-global-aggregation.html */ export interface GlobalAggregation { global: estypes.AggregationsGlobalAggregation; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-histogram-aggregation.html */ export interface HistogramAggregation { histogram: estypes.AggregationsHistogramAggregation & { field?: NumericFields; }; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-ipprefix-aggregation.html */ export interface IpPrefixAggregation { ip_prefix: estypes.AggregationsIpPrefixAggregation & { field?: IpFields; }; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-iprange-aggregation.html */ export interface IpRangeAggregation { ip_range: estypes.AggregationsIpRangeAggregation & { field?: IpFields; }; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-missing-aggregation.html */ export interface MissingAggregation { missing: estypes.AggregationsMissingAggregation & { field?: AllFields; }; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-multi-terms-aggregation.html */ export interface MultiTermsAggregation { missing: estypes.AggregationsMultiTermsAggregation & { terms?: (estypes.AggregationsMultiTermLookup & { field: AllFields; })[]; }; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-nested-aggregation.html */ export interface NestedAggregation { nested: estypes.AggregationsNestedAggregation & { path: AllFields; }; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-parent-aggregation.html */ export interface ParentAggregation { parent: estypes.AggregationsParentAggregation; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-range-aggregation.html */ export interface RangeAggregation { range: estypes.AggregationsRangeAggregation & { field: TermFields; }; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-rare-terms-aggregation.html */ export interface RareTermsAggregation { rare_terms: estypes.AggregationsRareTermsAggregation & { field: TermFields; }; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-reverse-nested-aggregation.html */ export interface ReverseNestedAggregation { reverse_nested: estypes.AggregationsReverseNestedAggregation; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-sampler-aggregation.html */ export interface SamplerAggregation { reverse_nested: estypes.AggregationsSamplerAggregation; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-significantterms-aggregation.html */ export interface SignificantTermsAggregation { significant_terms: estypes.AggregationsSignificantTermsAggregation & { field?: TermFields; }; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-significanttext-aggregation.html */ export interface SignificantTextAggregation { significant_text: estypes.AggregationsSignificantTextAggregation & { field?: TextFields; }; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-terms-aggregation.html */ export interface TermsAggregation { terms: estypes.AggregationsTermsAggregation & { field: TermFields; }; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-variablewidthhistogram-aggregation.html */ export interface VariableWidthAggregation { significant_text: estypes.AggregationsVariableWidthHistogramAggregation & { field?: TermFields; }; } //# sourceMappingURL=bucket-aggregation.d.ts.map