1 | import * as events from '@aws-cdk/aws-events';
|
2 | import * as sqs from '@aws-cdk/aws-sqs';
|
3 | import { TargetBaseProps } from './util';
|
4 | /**
|
5 | * Customize the SQS Queue Event Target
|
6 | */
|
7 | export interface SqsQueueProps extends TargetBaseProps {
|
8 | /**
|
9 | * Message Group ID for messages sent to this queue
|
10 | *
|
11 | * Required for FIFO queues, leave empty for regular queues.
|
12 | *
|
13 | * @default - no message group ID (regular queue)
|
14 | */
|
15 | readonly messageGroupId?: string;
|
16 | /**
|
17 | * The message to send to the queue.
|
18 | *
|
19 | * Must be a valid JSON text passed to the target queue.
|
20 | *
|
21 | * @default the entire EventBridge event
|
22 | */
|
23 | readonly message?: events.RuleTargetInput;
|
24 | }
|
25 | /**
|
26 | * Use an SQS Queue as a target for Amazon EventBridge rules.
|
27 | *
|
28 | * @example
|
29 | * /// fixture=withRepoAndSqsQueue
|
30 | * // publish to an SQS queue every time code is committed
|
31 | * // to a CodeCommit repository
|
32 | * repository.onCommit('onCommit', { target: new targets.SqsQueue(queue) });
|
33 | *
|
34 | */
|
35 | export declare class SqsQueue implements events.IRuleTarget {
|
36 | readonly queue: sqs.IQueue;
|
37 | private readonly props;
|
38 | constructor(queue: sqs.IQueue, props?: SqsQueueProps);
|
39 | /**
|
40 | * Returns a RuleTarget that can be used to trigger this SQS queue as a
|
41 | * result from an EventBridge event.
|
42 | *
|
43 | * @see https://docs.aws.amazon.com/eventbridge/latest/userguide/resource-based-policies-eventbridge.html#sqs-permissions
|
44 | */
|
45 | bind(rule: events.IRule, _id?: string): events.RuleTargetConfig;
|
46 | }
|