import { ESQueryBuilderTypes } from ".."; import ElasticSearchNestedBuilder from "./query/nested.builder"; import { ESRanges } from "./property/range.property"; import { ESQueryString } from "./property/query-string.property"; import { ScriptParams } from "./property/script.property"; export default class ElasticSearchBoolBuilder { private builder; private esMinimumShouldMatch; private stack; constructor(builder: T); minimumShouldMatch(minimumShouldMatch: number): this; should(): ElasticSearchBoolBuilder; should(builder: (boolBuilder: ElasticSearchBoolBuilder) => ElasticSearchBoolBuilder): this; must(): ElasticSearchBoolBuilder; mustNot(): ElasticSearchBoolBuilder; bool(): ElasticSearchBoolBuilder; bool(builder: (boolBuilder: ElasticSearchBoolBuilder) => ElasticSearchBoolBuilder): this; nested(path: string): ElasticSearchNestedBuilder; term(key: string, value: string | number | boolean): this; match(key: string, value: string | number | boolean): this; exists(field: string): this; range(key: string, ranges: ESRanges): this; queryString(queryStrings: ESQueryString): this; script(source: string, params?: ScriptParams): this; build(): any; end(): T; }