import { Value } from '@aws-sdk/smithy-client'; import { Comparator, ConditionBuilderFunc, ConditionFunc } from './types.mjs'; export type DynamoDBType = 'S' | 'SS' | 'M' | 'L' | 'N' | 'NS' | 'BOOL' | 'B' | 'BS' | 'NULL'; /** * Wrap given conditions into braces with AND. * * @param conditions the list of conditions */ export declare const and: (...conditions: ConditionBuilderFunc[]) => ConditionBuilderFunc; /** * Wrap given conditions into braces with OR. * * @param conditions the list of conditions */ export declare const or: (...conditions: ConditionBuilderFunc[]) => ConditionBuilderFunc; /** * Negates the given condition. * * @param condition the nested condition */ export declare const not: (condition: ConditionBuilderFunc) => ConditionBuilderFunc; /** * Check if the attribute is either not defined or explicit null. */ export declare const nullOrUndefined: () => ConditionBuilderFunc; /** * Check if attribute is explicit set to null. */ export declare const isNull: () => ConditionBuilderFunc; /** * Performs a '=' check with given value. * * @param value the value to check against */ export declare const equal: ConditionFunc; /** * Performs a '<>' check with given value. * * @param value the value to check against */ export declare const notEqual: ConditionFunc; /** * Performs a '<' check with given value. * * @param value the value to check against */ export declare const lessThan: ConditionFunc; /** * Performs a '<=' check with given value. * * @param value the value to check against */ export declare const lessThanOrEqual: ConditionFunc; /** * Performs a '>' check with given value. * * @param value the value to check against */ export declare const greaterThan: ConditionFunc; /** * Performs a '>=' check with given value. * * @param value the value to check against */ export declare const greaterThanOrEqual: ConditionFunc; /** * Performs a 'BETWEEN' check with given from and to values. * * @param from the inclusive starting value * @param to the inclusive end value */ export declare const between: (from: Value, to: Value) => ConditionBuilderFunc; /** * Performs an 'IN' check with given values. If no values are provided nothing will be evaluated. * * @param values list of values */ export declare const isIn: (...values: Value[]) => ConditionBuilderFunc; /** * Checks if the attribute exists on an item. */ export declare const attributeExists: () => ConditionBuilderFunc; /** * Checks if the attribute does not exist on an item. */ export declare const attributeNotExists: () => ConditionBuilderFunc; /** * Check if the DynamoDB type equals the given type. * @param type the DynamoDB type */ export declare const attributeType: (type: DynamoDBType) => ConditionBuilderFunc; /** * Check if the attribute starts with the given string. * * @param value the value to check against */ export declare const beginsWith: ConditionFunc; /** * Check if a string or set (BS, NS, SS) contains the given value. * * @param value the value to check */ export declare const contains: ConditionFunc; /** * Check if the size if the attribute matches the given comparator and operand. * * @param comparator the comparator to use * @param value the operand to evaluate against */ export declare const size: (comparator: Comparator, value: number) => ConditionBuilderFunc;