import { Expression } from '../expressions'; import { ArrayType, BitArg, BooleanType, ByteaArg, IntegerType, CharacterArg, TextType, BitType, MathArg, IntegerArg, TSVectorArg, BooleanArg, BigintArg, TimestampArg, IntervalArg, ByteaType, UUIDType } from '../types'; export declare function GEN_RANDOM_UUID(): Expression; export declare function BIT_LENGTH(arg: CharacterArg | ByteaArg | BitArg): Expression; export declare function CHAR_LENGTH(arg: CharacterArg): Expression; export declare function LOWER(arg: CharacterArg): Expression; /** * @description Converts the string to the specified Unicode normalization form. * The optional form key word specifies the form: NFC (the default), NFD, NFKC, or NFKD. * This function can only be used when the server encoding is UTF8. */ export declare function NORMALIZE(arg: CharacterArg, form?: 'NFC' | 'NFD' | 'NFKC' | 'NFKD'): Expression; export declare function OCTET_LENGTH(arg: CharacterArg | ByteaArg | BitArg): Expression; export declare function OVERLAY(str: CharacterArg, repl: CharacterArg, fromStart: IntegerArg, forCount?: IntegerArg): Expression; export declare function OVERLAY(str: ByteaArg, repl: ByteaArg, fromStart: IntegerArg, forCount?: IntegerArg): Expression; export declare function OVERLAY(str: BitArg, repl: BitArg, fromStart: IntegerArg, forCount?: IntegerArg): Expression; export declare function POSITION(str: CharacterArg, search: CharacterArg): Expression; export declare function POSITION(str: ByteaArg, search: ByteaArg): Expression; export declare function POSITION(str: BitArg, search: BitArg): Expression; export declare function SUBSTRING(str: CharacterArg, fromStart: IntegerArg, forCount?: IntegerArg): Expression; export declare function SUBSTRING(str: ByteaArg, fromStart: IntegerArg, forCount?: IntegerArg): Expression; export declare function SUBSTRING(str: BitArg, fromStart?: IntegerArg, forCount?: IntegerArg): Expression; export declare function SUBSTRING(str: CharacterArg, pattern: CharacterArg, forEscape?: CharacterArg): Expression; export declare function TRIM(from: ByteaArg, chars: ByteaArg, type?: 'BOTH'): Expression; export declare function TRIM(from: CharacterArg, chars?: CharacterArg, type?: 'LEADING' | 'TRAILING' | 'BOTH'): Expression; export declare function UPPER(arg: CharacterArg): Expression; export declare function ASCII(arg: CharacterArg): Expression; export declare function BTRIM(str: CharacterArg, chars?: CharacterArg): Expression; export declare function BTRIM(str: ByteaArg, chars?: ByteaArg): Expression; export declare function CHR(code: IntegerArg): Expression; export declare function CONCAT(...args: any[]): Expression; export declare function CONCAT_WS(separator: CharacterArg, ...args: any[]): Expression; export declare function FORMAT(format: CharacterArg, ...args: any[]): Expression; export declare function INITCAP(arg: CharacterArg): Expression; export declare function LEFT(str: CharacterArg, count: IntegerArg): Expression; export declare function LENGTH(arg: CharacterArg | TSVectorArg | BitArg): Expression; export declare function LENGTH(arg: ByteaArg, encoding?: CharacterArg): Expression; export declare function LPAD(str: CharacterArg, count: IntegerArg, fill?: CharacterArg): Expression; export declare function LTRIM(str: CharacterArg, chars?: CharacterArg): Expression; export declare function MD5(arg: CharacterArg | ByteaArg): Expression; export declare function PARSE_IDENT(arg: CharacterArg, strict?: BooleanArg): Expression>; export declare function PG_CLIENT_ENCODING(): Expression; export declare function QUOTE_IDENT(arg: CharacterArg): Expression; export declare function QUOTE_LITERAL(arg: any): Expression; export declare function QUOTE_NULLABLE(arg: any): Expression; export declare function REGEXP_MATCH(str: CharacterArg, regexp: CharacterArg, flags?: CharacterArg): Expression>; export declare function REGEXP_MATCHES(str: CharacterArg, regexp: CharacterArg, flags?: CharacterArg): Expression>; export declare function REGEXP_REPLACE(str: CharacterArg, regexp: CharacterArg, replacement: CharacterArg, flags?: CharacterArg): Expression; export declare function REGEXP_SPLIT_TO_ARRAY(str: CharacterArg, regexp: CharacterArg, flags?: CharacterArg): Expression>; export declare function REGEXP_SPLIT_TO_TABLE(str: CharacterArg, regexp: CharacterArg, flags?: CharacterArg): Expression; export declare function REPEAT(str: CharacterArg, count: IntegerArg): Expression; export declare function REPLACE(str: CharacterArg, from: CharacterArg, to: CharacterArg): Expression; export declare function REVERSE(str: CharacterArg): Expression; export declare function RIGHT(str: CharacterArg, count: IntegerArg): Expression; export declare function RPAD(str: CharacterArg, count: IntegerArg, pad?: CharacterArg): Expression; export declare function RTRIM(str: CharacterArg, chars?: CharacterArg): Expression; export declare function SPLIT_PART(str: CharacterArg, separator: CharacterArg, limit: IntegerArg): Expression; export declare function STRPOS(str: CharacterArg, find: CharacterArg): Expression; export declare function SUBSTR(str: CharacterArg, start: IntegerArg, length?: IntegerArg): Expression; export declare function SUBSTR(str: ByteaArg, start: IntegerArg, length?: IntegerArg): Expression; export declare function STARTS_WITH(str: CharacterArg, prefix: CharacterArg): Expression; /** * @description Converts string to ASCII from another encoding, which may be identified by name or number. * If encoding is omitted the database encoding is assumed (which in practice is the only useful case). * The conversion consists primarily of dropping accents. * Conversion is only supported from LATIN1, LATIN2, LATIN9, and WIN1250 encodings. * (See the unaccent module for another, more flexible solution.) */ export declare function TO_ASCII(str: CharacterArg, encoding?: IntegerArg): Expression; export declare function TO_HEX(str: BigintArg): Expression; export declare function TRANSLATE(str: CharacterArg, from: CharacterArg, to: CharacterArg): Expression; export declare function TO_CHAR(from: TimestampArg, to: CharacterArg): Expression; export declare function TO_CHAR(from: IntervalArg, to: CharacterArg): Expression; export declare function TO_CHAR(from: MathArg, to: CharacterArg): Expression;