export interface Query {
    field: string;
    value: string | number;
    boost: number;
    prepareQuery: () => string;
}
export interface OperatorQuery extends Query {
    operator: string;
}
export declare const reserveQuery: (value: string) => string;
export declare const escapeQuery: (value: string) => string;
export declare const queryStringPrepare: (queries: Query[]) => string;
export declare const escapeString: (value: string) => string;
export declare const prepareSQL: (sql: string, sqlString: string) => string;
export declare class MatchQuery implements Query {
    field: string;
    value: string;
    boost: number;
    constructor(field: string, value: string, boost?: number);
    prepareQuery(): string;
    toString(): string;
}
export declare class MatchPhraseQuery implements Query {
    field: string;
    value: string;
    boost: number;
    constructor(field: string, value: string, boost?: number);
    prepareQuery(): string;
    toString(): string;
}
export declare class RegexpQuery implements Query {
    field: string;
    value: string;
    boost: number;
    constructor(field: string, value: string, boost?: number);
    prepareQuery(): string;
    toString(): string;
}
export declare class NumericRangeQuery implements OperatorQuery {
    field: string;
    operator: string;
    value: number;
    boost: number;
    constructor(field: string, operator: string, value: number, boost?: number);
    prepareQuery(): string;
    toString(): string;
}
export declare class DateRangeQuery implements OperatorQuery {
    field: string;
    operator: string;
    value: string;
    boost: number;
    constructor(field: string, operator: string, value: string, boost?: number);
    prepareQuery(): string;
    toString(): string;
}
