import { KueryNode, DslQuery, KueryParseOptions } from '../types';
import { IIndexPattern } from '../../../index_patterns/types';
import { JsonObject } from 'src/type';
export declare const fromLiteralExpression: (expression: string | DslQuery, parseOptions?: Partial<KueryParseOptions>) => KueryNode;
export declare const fromKueryExpression: (expression: string | DslQuery, parseOptions?: Partial<KueryParseOptions>) => KueryNode;
export declare const doesKueryExpressionHaveLuceneSyntaxError: (expression: string | DslQuery) => boolean;
/**
 * @params {String} indexPattern
 * @params {Object} config - contains the dateFormatTZ
 *
 * IndexPattern isn't required, but if you pass one in, we can be more intelligent
 * about how we craft the queries (e.g. scripted fields)
 */
export declare const toOpenSearchQuery: (node: KueryNode, indexPattern?: IIndexPattern, config?: Record<string, any>, context?: Record<string, any>) => JsonObject;
