/// import { estypes } from "@elastic/elasticsearch"; export type MappingToDocument = Property extends estypes.MappingAggregateMetricDoubleProperty ? { [metric in Property["metrics"][number]]: number; } : Property extends estypes.MappingBinaryProperty ? Buffer : Property extends estypes.MappingBooleanProperty ? boolean : Property extends estypes.MappingByteNumberProperty ? estypes.byte : Property extends estypes.MappingCompletionProperty ? string : Property extends estypes.MappingConstantKeywordProperty ? Property["value"] : Property extends estypes.MappingDateNanosProperty ? estypes.DateTime : Property extends estypes.MappingDateProperty ? estypes.DateTime : Property extends estypes.MappingDateRangeProperty ? RangeProperty : Property extends estypes.MappingDenseVectorProperty ? DenseVector : Property extends estypes.MappingDoubleNumberProperty ? estypes.double : Property extends estypes.MappingDoubleRangeProperty ? RangeProperty : Property extends estypes.MappingDynamicProperty ? any : Property extends estypes.MappingFieldAliasProperty ? never : Property extends estypes.MappingFlattenedProperty ? MappingPropertiesToJS : Property extends estypes.MappingFloatNumberProperty ? estypes.float : Property extends estypes.MappingFloatRangeProperty ? RangeProperty : Property extends estypes.MappingGeoPointProperty ? GeoPointValue : Property extends estypes.MappingGeoShapeProperty ? GeoShapeValue : Property extends estypes.MappingHalfFloatNumberProperty ? estypes.float : Property extends estypes.MappingHistogramProperty ? Histogram : Property extends estypes.MappingIntegerNumberProperty ? number : Property extends estypes.MappingIntegerRangeProperty ? RangeProperty : Property extends estypes.MappingIpProperty ? estypes.Ip : Property extends estypes.MappingIpRangeProperty ? RangeProperty : Property extends estypes.MappingJoinProperty ? any : Property extends estypes.MappingKeywordProperty ? string : Property extends estypes.MappingLongNumberProperty ? estypes.long : Property extends estypes.MappingLongRangeProperty ? RangeProperty : Property extends estypes.MappingMatchOnlyTextProperty ? string : Property extends estypes.MappingMurmur3HashProperty ? string : Property extends estypes.MappingNestedProperty ? MappingPropertiesToJS : Property extends estypes.MappingObjectProperty ? MappingPropertiesToJS : Property extends estypes.MappingPercolatorProperty ? any : Property extends estypes.MappingPointProperty ? PointValue : Property extends estypes.MappingRankFeatureProperty ? number : Property extends estypes.MappingRankFeaturesProperty ? { [feature: string]: number; } : Property extends estypes.MappingScaledFloatNumberProperty ? estypes.double : Property extends estypes.MappingSearchAsYouTypeProperty ? string : Property extends estypes.MappingShapeProperty ? GeoShapeValue : Property extends estypes.MappingShortNumberProperty ? number : Property extends estypes.MappingTextProperty ? string : Property extends estypes.MappingTokenCountProperty ? string : Property extends estypes.MappingUnsignedLongNumberProperty ? string : Property extends estypes.MappingVersionProperty ? string : Property extends estypes.MappingWildcardProperty ? string : any; type RangeProperty = { gte?: T; gt?: T; lt?: T; lte?: T; }; type DenseVectorElement = number | bigint; type DenseVector = DenseVectorElement[]; interface MappingProperties { [propertyName: string]: estypes.MappingProperty; } type MappingPropertiesToJS = Properties extends undefined ? any : { [property in keyof Properties]: MappingToDocument[property]>; }; type PointTupleValue = [x: number, y: number]; export type PointValue = PointTupleValue | GeoJson.Point | { x: number; y: number; } | { type: "Point"; coordinates: [x: number, y: number]; } | `POINT (${number} ${number})` | `${number},${number}`; export type GeoPointValue = { lat: number; lon: number; } | PointValue | string; declare namespace GeoJson { interface Point { type: "Point"; coordinates: [x: number, y: number]; } interface LineString { type: "LineString"; coordinates: [PointTupleValue, PointTupleValue]; } interface Polygon { type: "Polygon"; coordinates: PointTupleValue[]; } interface MultiPoint { type: "MultiPoint"; coordinates: PointTupleValue[]; } interface MultiLineString { type: "MultiLineString"; coordinates: LineString["coordinates"][]; } interface MultiPolygon { type: "MultiPolygon"; coordinates: Polygon["coordinates"][]; } interface GeometryCollection { type: "GeometryCollection"; geometries: Exclude[]; } } export type GeoShapeValue = GeoJson.GeometryCollection | GeoJson.LineString | GeoJson.MultiLineString | GeoJson.MultiPoint | GeoJson.MultiPolygon | GeoJson.Point | GeoJson.Polygon; interface Histogram { values: number; counts: number; } export {}; //# sourceMappingURL=mapping.d.ts.map