## Index

### Functions

- buildBetweenConditionExpression
- buildDefaultConditionExpression
- buildFilterExpression
- buildInConditionExpression
- deepFilter
- validateValues

## Functions

### buildBetweenConditionExpression

- buildBetweenConditionExpression(attributePath: string, namePlaceholder: string, valuePlaceholder: string, attributeNames: object, values: string[], existingValueNames: string[] | undefined, propertyMetadata: PropertyMetadata<any> | undefined): Expression

- - Defined in dynamo/expression/condition-expression-builder.ts:174

  #### Parameters

  - ##### attributePath: string

  - ##### namePlaceholder: string

  - ##### valuePlaceholder: string

  - ##### attributeNames: object

    - ##### [key: string]: string

  - ##### values: string[]

  - ##### existingValueNames: string[] | undefined

  - ##### propertyMetadata: PropertyMetadata<any> | undefined

  #### Returns Expression

### buildDefaultConditionExpression

- buildDefaultConditionExpression(attributePath: string, namePlaceholder: string, valuePlaceholder: string, attributeNames: object, values: any[], existingValueNames: string[] | undefined, propertyMetadata: PropertyMetadata<any> | undefined, operator: ConditionOperator): Expression

- - Defined in dynamo/expression/condition-expression-builder.ts:204

  #### Parameters

  - ##### attributePath: string

  - ##### namePlaceholder: string

  - ##### valuePlaceholder: string

  - ##### attributeNames: object

    - ##### [key: string]: string

  - ##### values: any[]

  - ##### existingValueNames: string[] | undefined

  - ##### propertyMetadata: PropertyMetadata<any> | undefined

  - ##### operator: ConditionOperator

  #### Returns Expression

### buildFilterExpression

- buildFilterExpression(attributePath: string, operator: ConditionOperator, values: any[], existingValueNames: string[] | undefined, metadata: Metadata<any> | undefined): Expression

- - Defined in dynamo/expression/condition-expression-builder.ts:77

  Will create a condition which can be added to a request using the param object. It will create the expression statement and the attribute names and values.

  #### Parameters

  - ##### attributePath: string

  - ##### operator: ConditionOperator

  - ##### values: any[]

    Depending on the operator the amount of values differs

  - ##### existingValueNames: string[] | undefined

    If provided the existing names are used to make sure we have a unique name for the current attributePath

  - ##### metadata: Metadata<any> | undefined

    If provided we use the metadata to define the attribute name and use it to map the given value(s) to attributeValue(s)

  #### Returns Expression

### buildInConditionExpression

- buildInConditionExpression(attributePath: string, namePlaceholder: string, valuePlaceholder: string, attributeNames: object, values: any[], existingValueNames: string[] | undefined, propertyMetadata: PropertyMetadata<any> | undefined): Expression

- - Defined in dynamo/expression/condition-expression-builder.ts:144

  IN expression is unlike all the others property the operand is an array of unwrapped values (not attribute values)

  #### Parameters

  - ##### attributePath: string

  - ##### namePlaceholder: string

  - ##### valuePlaceholder: string

  - ##### attributeNames: object

    - ##### [key: string]: string

  - ##### values: any[]

  - ##### existingValueNames: string[] | undefined

  - ##### propertyMetadata: PropertyMetadata<any> | undefined

  #### Returns Expression

### deepFilter

- deepFilter(obj: any, filterFn: function): any | null

- - Defined in dynamo/expression/condition-expression-builder.ts:25

  Will walk the object tree recursively and removes all items which do not satisfy the filterFn

  #### Parameters

  - ##### obj: any

  - ##### filterFn: function

    - - (value: any): boolean

      - #### Parameters

        - ##### value: any

        #### Returns boolean

  #### Returns any | null

### validateValues

- validateValues(operator: ConditionOperator, values?: any[]): void

- - Defined in dynamo/expression/condition-expression-builder.ts:260

  Every operator requires a predefined arity of parameters, this method checks for the correct arity and throws an Error if not correct

  throws

    {Error} error Throws an error if the amount of values won't match the operator function parameter arity or the given values is not an array

  #### Parameters

  - ##### operator: ConditionOperator

  - ##### Optional values: any[]

    The values which will be applied to the operator function implementation

  #### Returns void

Generated using TypeDoc