import { BooleanType, CharacterArg, TextType, TSQueryArg } from '../' import { AnyExpression, Expression } from '../../expressions' import { ConstraintConfig } from '../../functions' import { Type, type } from '../index' export const TSVECTOR = () => type`TSVECTOR` as TSVectorType export type TSVectorArg = TSVectorType['argument'] export interface TSVectorType extends Type<'TSVECTOR', R> { expression: TSVectorExpression argument: Expression | this['input'] required(conf?: ConstraintConfig): TSVectorType } export interface TSVectorExpression extends AnyExpression> { concat(arg: TSVectorArg): Expression> concat(arg: CharacterArg): Expression> match (arg: TSQueryArg): Expression> }