UNPKG

1.52 kBTypeScriptView Raw
1import * as events from '@aws-cdk/aws-events';
2import * as sqs from '@aws-cdk/aws-sqs';
3import { TargetBaseProps } from './util';
4/**
5 * Customize the SQS Queue Event Target
6 */
7export 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 */
35export 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}