import type { estypes } from "@elastic/elasticsearch"; import type { AllFields, TextualFields, NumericFields, DateFields, KeywordFields } from "../fields.js"; export type TermLevelQuery = Exists | Fuzzy | IDs | RegExp | Prefix | Range | Term | Terms | TermsSet | Wildcard; /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-exists-query.html */ export interface Exists { exists: { field: AllFields; }; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-fuzzy-query.html */ export interface Fuzzy { fuzzy: { [field in TextualFields]: estypes.QueryDslFuzzyQuery; }; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-ids-query.html */ export interface IDs { ids: estypes.QueryDslIdsQuery; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-prefix-query.html */ export interface Prefix { prefix: { [field in TextualFields]: estypes.QueryDslPrefixQuery; }; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-range-query.html */ export interface Range { range: { [field in NumericFields]?: estypes.QueryDslNumberRangeQuery; } & { [field in DateFields]?: estypes.QueryDslDateRangeQuery; } & { [field in TextualFields]?: { gt?: string; gte?: string; lt?: string; lte?: string; from?: string | null; to?: string | null; }; }; } /** * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-regexp-query.html */ export interface RegExp { regexp: { [field in TextualFields]?: estypes.QueryDslRegexpQuery; }; } export interface Term { term: { [field in KeywordFields]?: estypes.QueryDslTermQuery; }; } export interface Terms { terms: { [field in KeywordFields]?: estypes.QueryDslTermQuery; } & estypes.QueryDslTermsQueryKeys; } export interface TermsSet { terms_set: { [field in KeywordFields]?: estypes.QueryDslTermsSetQuery; }; } export interface Wildcard { wildcard: { [field in TextualFields]?: estypes.QueryDslWildcardQuery; }; } //# sourceMappingURL=term-level-query.d.ts.map