///
import { ArrayType, BooleanType, ByteaType, JSONBType, NumericType, TextType, TimestampType, Type, UnknownType } from '../types';
import { AnyExpression } from './any';
export * from './any';
export * from './array';
export * from './json';
export * from './math';
export * from './search';
export * from './string';
export * from './timezone';
declare const ExpressionImpl_base: {
new (...args: any[]): {
isNormalized(form?: "NFC" | "NFD" | "NFKC" | "NFKD" | undefined): import("../types").BooleanExpression;
isNotNormalized(form?: "NFC" | "NFD" | "NFKC" | "NFKD" | undefined): import("../types").BooleanExpression;
like(pattern: string | import("../types").StringExpression> | import("../types").StringExpression> | import("../types").StringExpression>, escape?: string | import("../types").StringExpression> | import("../types").StringExpression> | import("../types").StringExpression> | undefined): import("../types").BooleanExpression;
notLike(pattern: string | import("../types").StringExpression> | import("../types").StringExpression> | import("../types").StringExpression>, escape?: string | import("../types").StringExpression> | import("../types").StringExpression> | import("../types").StringExpression> | undefined): import("../types").BooleanExpression;
similarTo(pattern: string | import("../types").StringExpression> | import("../types").StringExpression> | import("../types").StringExpression>, escape?: string | import("../types").StringExpression> | import("../types").StringExpression> | import("../types").StringExpression> | undefined): import("../types").BooleanExpression;
notSimilarTo(pattern: string | import("../types").StringExpression> | import("../types").StringExpression> | import("../types").StringExpression>, escape?: string | import("../types").StringExpression> | import("../types").StringExpression> | import("../types").StringExpression> | undefined): import("../types").BooleanExpression;
matchRegex(pattern: string | import("../types").StringExpression> | import("../types").StringExpression> | import("../types").StringExpression>, caseSensitively?: boolean): import("../types").BooleanExpression;
notMatchRegex(pattern: string | import("../types").StringExpression> | import("../types").StringExpression> | import("../types").StringExpression>, caseSensitively?: boolean): import("../types").BooleanExpression;
type: Type, boolean, any>;
alias?: string | undefined;
columns?: string[] | undefined;
as(alias: string, columns?: string[] | undefined): any;
toQuery(start?: number): [string, any[]];
toSource(): import("../template").Template;
cast, boolean, any>>(type: NT): Expression;
concat(operand: any): AnyExpression, boolean, any>>;
eq(operand: any): import("../types").BooleanExpression;
ne(operand: any): import("../types").BooleanExpression;
is(operand: boolean | "UNKNOWN" | null): import("../types").BooleanExpression;
isNot(operand: boolean | "UNKNOWN" | null): import("../types").BooleanExpression;
isDistinctFrom(operand: any): import("../types").BooleanExpression;
isNotDistinctFrom(operand: any): import("../types").BooleanExpression;
gt(operand: any): import("../types").BooleanExpression;
lt(operand: any): import("../types").BooleanExpression;
gte(operand: any): import("../types").BooleanExpression;
lte(operand: any): import("../types").BooleanExpression;
gl(operand: any): import("../types").BooleanExpression;
between(from: any, to: any): import("../types").BooleanExpression;
notBetween(from: any, to: any): import("../types").BooleanExpression;
betweenSymetric(from: any, to: any): import("../types").BooleanExpression;
notBetweenSymetric(from: any, to: any): import("../types").BooleanExpression;
in(subquery: any): import("../types").BooleanExpression;
in(...operands: any[]): import("../types").BooleanExpression;
notIn(subquery: any): import("../types").BooleanExpression;
notIn(...operands: any[]): import("../types").BooleanExpression;
contain(arg: any): import("../types").BooleanExpression;
contained(arg: any): import("../types").BooleanExpression;
strings: string[];
literals: any[];
readonly text: string;
readonly values: any[];
};
} & {
new (...args: any[]): {
tz(operand: string | import("../types").StringExpression> | import("../types").StringExpression> | import("../types").StringExpression>): AnyExpression, boolean, any>>;
type: Type, boolean, any>;
alias?: string | undefined;
columns?: string[] | undefined;
as(alias: string, columns?: string[] | undefined): any;
toQuery(start?: number): [string, any[]];
toSource(): import("../template").Template;
cast, boolean, any>>(type: NT): Expression;
concat(operand: any): AnyExpression, boolean, any>>;
eq(operand: any): import("../types").BooleanExpression;
ne(operand: any): import("../types").BooleanExpression;
is(operand: boolean | "UNKNOWN" | null): import("../types").BooleanExpression;
isNot(operand: boolean | "UNKNOWN" | null): import("../types").BooleanExpression;
isDistinctFrom(operand: any): import("../types").BooleanExpression;
isNotDistinctFrom(operand: any): import("../types").BooleanExpression;
gt(operand: any): import("../types").BooleanExpression;
lt(operand: any): import("../types").BooleanExpression;
gte(operand: any): import("../types").BooleanExpression;
lte(operand: any): import("../types").BooleanExpression;
gl(operand: any): import("../types").BooleanExpression;
between(from: any, to: any): import("../types").BooleanExpression;
notBetween(from: any, to: any): import("../types").BooleanExpression;
betweenSymetric(from: any, to: any): import("../types").BooleanExpression;
notBetweenSymetric(from: any, to: any): import("../types").BooleanExpression;
in(subquery: any): import("../types").BooleanExpression;
in(...operands: any[]): import("../types").BooleanExpression;
notIn(subquery: any): import("../types").BooleanExpression;
notIn(...operands: any[]): import("../types").BooleanExpression;
contain(arg: any): import("../types").BooleanExpression;
contained(arg: any): import("../types").BooleanExpression;
strings: string[];
literals: any[];
readonly text: string;
readonly values: any[];
};
} & {
new (...args: any[]): {
add(operand: any): AnyExpression, boolean, any>>;
sub(operand: any): AnyExpression, boolean, any>>;
mul(operand: any): AnyExpression, boolean, any>>;
div(operand: any): AnyExpression, boolean, any>>;
mod(operand: any): AnyExpression, boolean, any>>;
neg(): AnyExpression, boolean, any>>;
abs(): AnyExpression, boolean, any>>;
pow(operand: any): AnyExpression, boolean, any>>;
sqrt(): AnyExpression, boolean, any>>;
cbrt(): AnyExpression, boolean, any>>;
type: Type, boolean, any>;
alias?: string | undefined;
columns?: string[] | undefined;
as(alias: string, columns?: string[] | undefined): any;
toQuery(start?: number): [string, any[]];
toSource(): import("../template").Template;
cast, boolean, any>>(type: NT): Expression;
concat(operand: any): AnyExpression, boolean, any>>;
eq(operand: any): import("../types").BooleanExpression;
ne(operand: any): import("../types").BooleanExpression;
is(operand: boolean | "UNKNOWN" | null): import("../types").BooleanExpression;
isNot(operand: boolean | "UNKNOWN" | null): import("../types").BooleanExpression;
isDistinctFrom(operand: any): import("../types").BooleanExpression;
isNotDistinctFrom(operand: any): import("../types").BooleanExpression;
gt(operand: any): import("../types").BooleanExpression;
lt(operand: any): import("../types").BooleanExpression;
gte(operand: any): import("../types").BooleanExpression;
lte(operand: any): import("../types").BooleanExpression;
gl(operand: any): import("../types").BooleanExpression;
between(from: any, to: any): import("../types").BooleanExpression;
notBetween(from: any, to: any): import("../types").BooleanExpression;
betweenSymetric(from: any, to: any): import("../types").BooleanExpression;
notBetweenSymetric(from: any, to: any): import("../types").BooleanExpression;
in(subquery: any): import("../types").BooleanExpression;
in(...operands: any[]): import("../types").BooleanExpression;
notIn(subquery: any): import("../types").BooleanExpression;
notIn(...operands: any[]): import("../types").BooleanExpression;
contain(arg: any): import("../types").BooleanExpression;
contained(arg: any): import("../types").BooleanExpression;
strings: string[];
literals: any[];
readonly text: string;
readonly values: any[];
};
} & {
new (...args: any[]): {
and(operand: any): AnyExpression, boolean, any>>;
or(operand: any): AnyExpression, boolean, any>>;
xor(operand: any): AnyExpression, boolean, any>>;
not(): AnyExpression, boolean, any>>;
lshift(operand: any): AnyExpression, boolean, any>>;
rshift(operand: any): AnyExpression, boolean, any>>;
type: Type, boolean, any>;
alias?: string | undefined;
columns?: string[] | undefined;
as(alias: string, columns?: string[] | undefined): any;
toQuery(start?: number): [string, any[]];
toSource(): import("../template").Template;
cast, boolean, any>>(type: NT): Expression;
concat(operand: any): AnyExpression, boolean, any>>;
eq(operand: any): import("../types").BooleanExpression;
ne(operand: any): import("../types").BooleanExpression;
is(operand: boolean | "UNKNOWN" | null): import("../types").BooleanExpression;
isNot(operand: boolean | "UNKNOWN" | null): import("../types").BooleanExpression;
isDistinctFrom(operand: any): import("../types").BooleanExpression;
isNotDistinctFrom(operand: any): import("../types").BooleanExpression;
gt(operand: any): import("../types").BooleanExpression;
lt(operand: any): import("../types").BooleanExpression;
gte(operand: any): import("../types").BooleanExpression;
lte(operand: any): import("../types").BooleanExpression;
gl(operand: any): import("../types").BooleanExpression;
between(from: any, to: any): import("../types").BooleanExpression;
notBetween(from: any, to: any): import("../types").BooleanExpression;
betweenSymetric(from: any, to: any): import("../types").BooleanExpression;
notBetweenSymetric(from: any, to: any): import("../types").BooleanExpression;
in(subquery: any): import("../types").BooleanExpression;
in(...operands: any[]): import("../types").BooleanExpression;
notIn(subquery: any): import("../types").BooleanExpression;
notIn(...operands: any[]): import("../types").BooleanExpression;
contain(arg: any): import("../types").BooleanExpression;
contained(arg: any): import("../types").BooleanExpression;
strings: string[];
literals: any[];
readonly text: string;
readonly values: any[];
};
} & {
new (...args: any[]): {
overlap(other: string | any[] | AnyExpression, boolean, any>> | import("../types").ArrayExpression, boolean, any>, boolean> | AnyExpression, boolean, any>>[]): import("../types").BooleanExpression;
unshift(other: string | any[] | AnyExpression, boolean, any>> | import("../types").ArrayExpression, boolean, any>, boolean> | AnyExpression, boolean, any>>[]): import("../types").ArrayExpression, boolean, any>, boolean>;
push(other: string | any[] | AnyExpression, boolean, any>> | import("../types").ArrayExpression, boolean, any>, boolean> | AnyExpression, boolean, any>>[]): import("../types").ArrayExpression, boolean, any>, boolean>;
item(l: string | number | bigint | import("../types").IntegralExpression> | import("../types").IntegralExpression> | import("../types").IntegralExpression>, u?: string | number | bigint | import("../types").IntegralExpression> | import("../types").IntegralExpression> | import("../types").IntegralExpression> | undefined): import("../types").ArrayExpression, boolean, any>, boolean>;
type: Type, boolean, any>;
alias?: string | undefined;
columns?: string[] | undefined;
as(alias: string, columns?: string[] | undefined): any;
toQuery(start?: number): [string, any[]];
toSource(): import("../template").Template;
cast, boolean, any>>(type: NT): Expression;
concat(operand: any): AnyExpression, boolean, any>>;
eq(operand: any): import("../types").BooleanExpression;
ne(operand: any): import("../types").BooleanExpression;
is(operand: boolean | "UNKNOWN" | null): import("../types").BooleanExpression;
isNot(operand: boolean | "UNKNOWN" | null): import("../types").BooleanExpression;
isDistinctFrom(operand: any): import("../types").BooleanExpression;
isNotDistinctFrom(operand: any): import("../types").BooleanExpression;
gt(operand: any): import("../types").BooleanExpression;
lt(operand: any): import("../types").BooleanExpression;
gte(operand: any): import("../types").BooleanExpression;
lte(operand: any): import("../types").BooleanExpression;
gl(operand: any): import("../types").BooleanExpression;
between(from: any, to: any): import("../types").BooleanExpression;
notBetween(from: any, to: any): import("../types").BooleanExpression;
betweenSymetric(from: any, to: any): import("../types").BooleanExpression;
notBetweenSymetric(from: any, to: any): import("../types").BooleanExpression;
in(subquery: any): import("../types").BooleanExpression;
in(...operands: any[]): import("../types").BooleanExpression;
notIn(subquery: any): import("../types").BooleanExpression;
notIn(...operands: any[]): import("../types").BooleanExpression;
contain(arg: any): import("../types").BooleanExpression;
contained(arg: any): import("../types").BooleanExpression;
strings: string[];
literals: any[];
readonly text: string;
readonly values: any[];
};
} & {
new (...args: any[]): {
get(item: string | number | bigint | import("../types").StringExpression> | import("../types").StringExpression> | import("../types").StringExpression> | import("../types").IntegralExpression>): import("../types").JSONExpression