UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

52 lines (51 loc) 1.99 kB
import { ScheduleTargetBase, ScheduleTargetBaseProps } from './target'; import * as events from '../../aws-events'; import { IRole } from '../../aws-iam'; import { IScheduleTarget, ISchedule, ScheduleTargetInput, ScheduleTargetConfig } from '../../aws-scheduler'; /** * An entry to be sent to EventBridge * * @see https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_PutEventsRequestEntry.html */ export interface EventBridgePutEventsEntry { /** * The event body * * Can either be provided as an object or as a JSON-serialized string * @example * * ScheduleTargetInput.fromText('{"instance-id": "i-1234567890abcdef0", "state": "terminated"}'); * ScheduleTargetInput.fromObject({ Message: 'Hello from a friendly event :)' }); */ readonly detail: ScheduleTargetInput; /** * Used along with the source field to help identify the fields and values expected in the detail field * * For example, events by CloudTrail have detail type "AWS API Call via CloudTrail" * @see https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-events.html */ readonly detailType: string; /** * The event bus the entry will be sent to. * */ readonly eventBus: events.IEventBus; /** * The service or application that caused this event to be generated * * Example value: `com.example.service` * * @see https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-events.html */ readonly source: string; } /** * Send an event to an AWS EventBridge by AWS EventBridge Scheduler. */ export declare class EventBridgePutEvents extends ScheduleTargetBase implements IScheduleTarget { private readonly entry; private readonly props; constructor(entry: EventBridgePutEventsEntry, props?: ScheduleTargetBaseProps); protected addTargetActionToRole(role: IRole): void; protected bindBaseTargetConfig(_schedule: ISchedule): ScheduleTargetConfig; }