# Filter

Filter implementation of FilterOrPolicy.

Extends: FilterOrPolicy › Filter

- Source: [`aws-sns/lib/subscription.ts`](https://github.com/aws/aws-cdk/blob/v2.275.0/packages/aws-cdk-lib/aws-sns/lib/subscription.ts#L413)
- Type last changed: v2.67.0 · 2 Mar 2023

## Example

```ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_sns as sns } from 'aws-cdk-lib';

declare const subscriptionFilter: sns.SubscriptionFilter;
const filter = new sns.Filter(subscriptionFilter);
```

## Initializer

```ts
new Filter(filterDoc: SubscriptionFilter)
```

## Properties

- `filterDoc`: [SubscriptionFilter](/cdk/api/v2/docs/aws-cdk-lib.aws_sns.SubscriptionFilter.html) — filter argument to construct.

- `type`: [FilterOrPolicyType](/cdk/api/v2/docs/aws-cdk-lib.aws_sns.FilterOrPolicyType.html) — Type used in DFS buildFilterPolicyWithMessageBody to determine json value type.

## Methods

- `filter(filter: SubscriptionFilter): Filter // chainable` (static) — Filter of MessageBody.

- `isFilter(): boolean` — Check if instance is `Filter` type.

- `isPolicy(): boolean` — Check if instance is `Policy` type.

- `policy(policy: { [key: string]: FilterOrPolicy }): Policy` (static) — Policy of MessageBody.
