# FilterRule

Filter rules for Lambda event filtering.

- Source: [`aws-lambda/lib/event-source-filter.ts`](https://github.com/aws/aws-cdk/blob/v2.274.0/packages/aws-cdk-lib/aws-lambda/lib/event-source-filter.ts#L4)
- Type last changed: v2.163.0 · 22 Oct 2024

## Example

```ts
import * as dynamodb from 'aws-cdk-lib/aws-dynamodb';
import { DynamoEventSource } from 'aws-cdk-lib/aws-lambda-event-sources';

declare const table: dynamodb.Table;

declare const fn: lambda.Function;
fn.addEventSource(new DynamoEventSource(table, {
  startingPosition: lambda.StartingPosition.LATEST,
  filters: [
    lambda.FilterCriteria.filter({
      eventName: lambda.FilterRule.isEqual('INSERT'),
      dynamodb: {
        NewImage: {
          id: { BOOL: lambda.FilterRule.isEqual(true) },
        },
      },
    }),
  ],
}));
```

## Initializer

```ts
new FilterRule()
```

## Methods

- `beginsWith(elem: string): { [key: string]: string }[]` (static) — Begins with comparison operator.

- `between(first: number, second: number): { [key: string]: any[] }[]` (static) — Numeric range comparison operator.

- `empty(): string[]` (static) — Empty comparison operator.

- `exists(): { [key: string]: boolean }[]` (static) — Exists comparison operator.

- `isEqual(item: string | number | boolean): any` (static) — Equals comparison operator.

- `notEquals(elem: string): { [key: string]: string[] }[]` (static) — Not equals comparison operator.

- `notExists(): { [key: string]: boolean }[]` (static) — Not exists comparison operator.

- `null(): any` (static) — Null comparison operator.

- `or(...elem: string[]): string[]` (static) — Or comparison operator.
