import { HttpHandlerOptions as __HttpHandlerOptions } from "@aws-sdk/types" ; import { ActivateEventSourceCommand , ActivateEventSourceCommandInput , ActivateEventSourceCommandOutput , } from "./commands/ActivateEventSourceCommand" ; import { CancelReplayCommand , CancelReplayCommandInput , CancelReplayCommandOutput , } from "./commands/CancelReplayCommand" ; import { CreateApiDestinationCommand , CreateApiDestinationCommandInput , CreateApiDestinationCommandOutput , } from "./commands/CreateApiDestinationCommand" ; import { CreateArchiveCommand , CreateArchiveCommandInput , CreateArchiveCommandOutput , } from "./commands/CreateArchiveCommand" ; import { CreateConnectionCommand , CreateConnectionCommandInput , CreateConnectionCommandOutput , } from "./commands/CreateConnectionCommand" ; import { CreateEventBusCommand , CreateEventBusCommandInput , CreateEventBusCommandOutput , } from "./commands/CreateEventBusCommand" ; import { CreatePartnerEventSourceCommand , CreatePartnerEventSourceCommandInput , CreatePartnerEventSourceCommandOutput , } from "./commands/CreatePartnerEventSourceCommand" ; import { DeactivateEventSourceCommand , DeactivateEventSourceCommandInput , DeactivateEventSourceCommandOutput , } from "./commands/DeactivateEventSourceCommand" ; import { DeauthorizeConnectionCommand , DeauthorizeConnectionCommandInput , DeauthorizeConnectionCommandOutput , } from "./commands/DeauthorizeConnectionCommand" ; import { DeleteApiDestinationCommand , DeleteApiDestinationCommandInput , DeleteApiDestinationCommandOutput , } from "./commands/DeleteApiDestinationCommand" ; import { DeleteArchiveCommand , DeleteArchiveCommandInput , DeleteArchiveCommandOutput , } from "./commands/DeleteArchiveCommand" ; import { DeleteConnectionCommand , DeleteConnectionCommandInput , DeleteConnectionCommandOutput , } from "./commands/DeleteConnectionCommand" ; import { DeleteEventBusCommand , DeleteEventBusCommandInput , DeleteEventBusCommandOutput , } from "./commands/DeleteEventBusCommand" ; import { DeletePartnerEventSourceCommand , DeletePartnerEventSourceCommandInput , DeletePartnerEventSourceCommandOutput , } from "./commands/DeletePartnerEventSourceCommand" ; import { DeleteRuleCommand , DeleteRuleCommandInput , DeleteRuleCommandOutput } from "./commands/DeleteRuleCommand" ; import { DescribeApiDestinationCommand , DescribeApiDestinationCommandInput , DescribeApiDestinationCommandOutput , } from "./commands/DescribeApiDestinationCommand" ; import { DescribeArchiveCommand , DescribeArchiveCommandInput , DescribeArchiveCommandOutput , } from "./commands/DescribeArchiveCommand" ; import { DescribeConnectionCommand , DescribeConnectionCommandInput , DescribeConnectionCommandOutput , } from "./commands/DescribeConnectionCommand" ; import { DescribeEventBusCommand , DescribeEventBusCommandInput , DescribeEventBusCommandOutput , } from "./commands/DescribeEventBusCommand" ; import { DescribeEventSourceCommand , DescribeEventSourceCommandInput , DescribeEventSourceCommandOutput , } from "./commands/DescribeEventSourceCommand" ; import { DescribePartnerEventSourceCommand , DescribePartnerEventSourceCommandInput , DescribePartnerEventSourceCommandOutput , } from "./commands/DescribePartnerEventSourceCommand" ; import { DescribeReplayCommand , DescribeReplayCommandInput , DescribeReplayCommandOutput , } from "./commands/DescribeReplayCommand" ; import { DescribeRuleCommand , DescribeRuleCommandInput , DescribeRuleCommandOutput , } from "./commands/DescribeRuleCommand" ; import { DisableRuleCommand , DisableRuleCommandInput , DisableRuleCommandOutput } from "./commands/DisableRuleCommand" ; import { EnableRuleCommand , EnableRuleCommandInput , EnableRuleCommandOutput } from "./commands/EnableRuleCommand" ; import { ListApiDestinationsCommand , ListApiDestinationsCommandInput , ListApiDestinationsCommandOutput , } from "./commands/ListApiDestinationsCommand" ; import { ListArchivesCommand , ListArchivesCommandInput , ListArchivesCommandOutput , } from "./commands/ListArchivesCommand" ; import { ListConnectionsCommand , ListConnectionsCommandInput , ListConnectionsCommandOutput , } from "./commands/ListConnectionsCommand" ; import { ListEventBusesCommand , ListEventBusesCommandInput , ListEventBusesCommandOutput , } from "./commands/ListEventBusesCommand" ; import { ListEventSourcesCommand , ListEventSourcesCommandInput , ListEventSourcesCommandOutput , } from "./commands/ListEventSourcesCommand" ; import { ListPartnerEventSourceAccountsCommand , ListPartnerEventSourceAccountsCommandInput , ListPartnerEventSourceAccountsCommandOutput , } from "./commands/ListPartnerEventSourceAccountsCommand" ; import { ListPartnerEventSourcesCommand , ListPartnerEventSourcesCommandInput , ListPartnerEventSourcesCommandOutput , } from "./commands/ListPartnerEventSourcesCommand" ; import { ListReplaysCommand , ListReplaysCommandInput , ListReplaysCommandOutput } from "./commands/ListReplaysCommand" ; import { ListRuleNamesByTargetCommand , ListRuleNamesByTargetCommandInput , ListRuleNamesByTargetCommandOutput , } from "./commands/ListRuleNamesByTargetCommand" ; import { ListRulesCommand , ListRulesCommandInput , ListRulesCommandOutput } from "./commands/ListRulesCommand" ; import { ListTagsForResourceCommand , ListTagsForResourceCommandInput , ListTagsForResourceCommandOutput , } from "./commands/ListTagsForResourceCommand" ; import { ListTargetsByRuleCommand , ListTargetsByRuleCommandInput , ListTargetsByRuleCommandOutput , } from "./commands/ListTargetsByRuleCommand" ; import { PutEventsCommand , PutEventsCommandInput , PutEventsCommandOutput } from "./commands/PutEventsCommand" ; import { PutPartnerEventsCommand , PutPartnerEventsCommandInput , PutPartnerEventsCommandOutput , } from "./commands/PutPartnerEventsCommand" ; import { PutPermissionCommand , PutPermissionCommandInput , PutPermissionCommandOutput , } from "./commands/PutPermissionCommand" ; import { PutRuleCommand , PutRuleCommandInput , PutRuleCommandOutput } from "./commands/PutRuleCommand" ; import { PutTargetsCommand , PutTargetsCommandInput , PutTargetsCommandOutput } from "./commands/PutTargetsCommand" ; import { RemovePermissionCommand , RemovePermissionCommandInput , RemovePermissionCommandOutput , } from "./commands/RemovePermissionCommand" ; import { RemoveTargetsCommand , RemoveTargetsCommandInput , RemoveTargetsCommandOutput , } from "./commands/RemoveTargetsCommand" ; import { StartReplayCommand , StartReplayCommandInput , StartReplayCommandOutput } from "./commands/StartReplayCommand" ; import { TagResourceCommand , TagResourceCommandInput , TagResourceCommandOutput } from "./commands/TagResourceCommand" ; import { TestEventPatternCommand , TestEventPatternCommandInput , TestEventPatternCommandOutput , } from "./commands/TestEventPatternCommand" ; import { UntagResourceCommand , UntagResourceCommandInput , UntagResourceCommandOutput , } from "./commands/UntagResourceCommand" ; import { UpdateApiDestinationCommand , UpdateApiDestinationCommandInput , UpdateApiDestinationCommandOutput , } from "./commands/UpdateApiDestinationCommand" ; import { UpdateArchiveCommand , UpdateArchiveCommandInput , UpdateArchiveCommandOutput , } from "./commands/UpdateArchiveCommand" ; import { UpdateConnectionCommand , UpdateConnectionCommandInput , UpdateConnectionCommandOutput , } from "./commands/UpdateConnectionCommand" ; import { EventBridgeClient } from "./EventBridgeClient" ; /**
 * <p>Amazon EventBridge helps you to respond to state changes in your Amazon Web Services resources. When your
 *       resources change state, they automatically send events to an event stream. You can create
 *       rules that match selected events in the stream and route them to targets to take action. You
 *       can also use rules to take action on a predetermined schedule. For example, you can configure
 *       rules to:</p>
 *          <ul>
 *             <li>
 *                <p>Automatically invoke an Lambda function to update DNS entries when an event
 *           notifies you that Amazon EC2 instance enters the running state.</p>
 *             </li>
 *             <li>
 *                <p>Direct specific API records from CloudTrail to an Amazon Kinesis data stream for
 *           detailed analysis of potential security or availability risks.</p>
 *             </li>
 *             <li>
 *                <p>Periodically invoke a built-in target to create a snapshot of an Amazon EBS
 *           volume.</p>
 *             </li>
 *          </ul>
 *          <p>For more information about the features of Amazon EventBridge, see the <a href="https://docs.aws.amazon.com/eventbridge/latest/userguide">Amazon EventBridge User
 *         Guide</a>.</p>
 */ export class EventBridge extends EventBridgeClient { /**
     * <p>Activates a partner event source that has been deactivated. Once activated, your matching
     *       event bus will start receiving events from the event source.</p>
     */ public activateEventSource ( args , options ? ) ; public activateEventSource ( args , cb ) ; public activateEventSource ( args , options , cb ) ; public activateEventSource ( args , optionsOrCb ? , cb ? ) { const command = new ActivateEventSourceCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Cancels the specified replay.</p>
     */ public cancelReplay ( args , options ? ) ; public cancelReplay ( args , cb ) ; public cancelReplay ( args , options , cb ) ; public cancelReplay ( args , optionsOrCb ? , cb ? ) { const command = new CancelReplayCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Creates an API destination, which is an HTTP invocation endpoint configured as a target
     *       for events.</p>
     */ public createApiDestination ( args , options ? ) ; public createApiDestination ( args , cb ) ; public createApiDestination ( args , options , cb ) ; public createApiDestination ( args , optionsOrCb ? , cb ? ) { const command = new CreateApiDestinationCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Creates an archive of events with the specified settings. When you create an archive,
     *       incoming events might not immediately start being sent to the archive. Allow a short period of
     *       time for changes to take effect. If you do not specify a pattern to filter events sent to the
     *       archive, all events are sent to the archive except replayed events. Replayed events are not
     *       sent to an archive.</p>
     */ public createArchive ( args , options ? ) ; public createArchive ( args , cb ) ; public createArchive ( args , options , cb ) ; public createArchive ( args , optionsOrCb ? , cb ? ) { const command = new CreateArchiveCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Creates a connection. A connection defines the authorization type and credentials to use
     *       for authorization with an API destination HTTP endpoint.</p>
     */ public createConnection ( args , options ? ) ; public createConnection ( args , cb ) ; public createConnection ( args , options , cb ) ; public createConnection ( args , optionsOrCb ? , cb ? ) { const command = new CreateConnectionCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Creates a new event bus within your account. This can be a custom event bus which you can
     *       use to receive events from your custom applications and services, or it can be a partner event
     *       bus which can be matched to a partner event source.</p>
     */ public createEventBus ( args , options ? ) ; public createEventBus ( args , cb ) ; public createEventBus ( args , options , cb ) ; public createEventBus ( args , optionsOrCb ? , cb ? ) { const command = new CreateEventBusCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Called by an SaaS partner to create a partner event source. This operation is not used by
     *       Amazon Web Services customers.</p>
     *          <p>Each partner event source can be used by one Amazon Web Services account to create a matching partner
     *       event bus in that Amazon Web Services account. A SaaS partner must create one partner event source for each
     *       Amazon Web Services account that wants to receive those event types. </p>
     *          <p>A partner event source creates events based on resources within the SaaS partner's service
     *       or application.</p>
     *          <p>An Amazon Web Services account that creates a partner event bus that matches the partner event source can
     *       use that event bus to receive events from the partner, and then process them using Amazon Web Services Events
     *       rules and targets.</p>
     *          <p>Partner event source names follow this format:</p>
     *          <p>
     *             <code>
     *                <i>partner_name</i>/<i>event_namespace</i>/<i>event_name</i>
     *             </code>
     *          </p>
     *          <p>
     *             <i>partner_name</i> is determined during partner registration and identifies
     *       the partner to Amazon Web Services customers. <i>event_namespace</i> is determined by the
     *       partner and is a way for the partner to categorize their events.
     *         <i>event_name</i> is determined by the partner, and should uniquely identify
     *       an event-generating resource within the partner system. The combination of
     *         <i>event_namespace</i> and <i>event_name</i> should help Amazon Web Services
     *       customers decide whether to create an event bus to receive these events.</p>
     */ public createPartnerEventSource ( args , options ? ) ; public createPartnerEventSource ( args , cb ) ; public createPartnerEventSource ( args , options , cb ) ; public createPartnerEventSource ( args , optionsOrCb ? , cb ? ) { const command = new CreatePartnerEventSourceCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>You can use this operation to temporarily stop receiving events from the specified partner
     *       event source. The matching event bus is not deleted. </p>
     *          <p>When you deactivate a partner event source, the source goes into PENDING state. If it
     *       remains in PENDING state for more than two weeks, it is deleted.</p>
     *          <p>To activate a deactivated partner event source, use <a href="https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_ActivateEventSource.html">ActivateEventSource</a>.</p>
     */ public deactivateEventSource ( args , options ? ) ; public deactivateEventSource ( args , cb ) ; public deactivateEventSource ( args , options , cb ) ; public deactivateEventSource ( args , optionsOrCb ? , cb ? ) { const command = new DeactivateEventSourceCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Removes all authorization parameters from the connection. This lets you remove the secret
     *       from the connection so you can reuse it without having to create a new connection.</p>
     */ public deauthorizeConnection ( args , options ? ) ; public deauthorizeConnection ( args , cb ) ; public deauthorizeConnection ( args , options , cb ) ; public deauthorizeConnection ( args , optionsOrCb ? , cb ? ) { const command = new DeauthorizeConnectionCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Deletes the specified API destination.</p>
     */ public deleteApiDestination ( args , options ? ) ; public deleteApiDestination ( args , cb ) ; public deleteApiDestination ( args , options , cb ) ; public deleteApiDestination ( args , optionsOrCb ? , cb ? ) { const command = new DeleteApiDestinationCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Deletes the specified archive.</p>
     */ public deleteArchive ( args , options ? ) ; public deleteArchive ( args , cb ) ; public deleteArchive ( args , options , cb ) ; public deleteArchive ( args , optionsOrCb ? , cb ? ) { const command = new DeleteArchiveCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Deletes a connection.</p>
     */ public deleteConnection ( args , options ? ) ; public deleteConnection ( args , cb ) ; public deleteConnection ( args , options , cb ) ; public deleteConnection ( args , optionsOrCb ? , cb ? ) { const command = new DeleteConnectionCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Deletes the specified custom event bus or partner event bus. All rules associated with
     *       this event bus need to be deleted. You can't delete your account's default event bus.</p>
     */ public deleteEventBus ( args , options ? ) ; public deleteEventBus ( args , cb ) ; public deleteEventBus ( args , options , cb ) ; public deleteEventBus ( args , optionsOrCb ? , cb ? ) { const command = new DeleteEventBusCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>This operation is used by SaaS partners to delete a partner event source. This operation
     *       is not used by Amazon Web Services customers.</p>
     *          <p>When you delete an event source, the status of the corresponding partner event bus in the
     *       Amazon Web Services customer account becomes DELETED.</p>
     *          <p></p>
     */ public deletePartnerEventSource ( args , options ? ) ; public deletePartnerEventSource ( args , cb ) ; public deletePartnerEventSource ( args , options , cb ) ; public deletePartnerEventSource ( args , optionsOrCb ? , cb ? ) { const command = new DeletePartnerEventSourceCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Deletes the specified rule.</p>
     *          <p>Before you can delete the rule, you must remove all targets, using <a href="https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_RemoveTargets.html">RemoveTargets</a>.</p>
     *
     *          <p>When you delete a rule, incoming events might continue to match to the deleted rule. Allow
     *       a short period of time for changes to take effect.</p>
     *
     *          <p>If you call delete rule multiple times for the same rule, all calls will succeed. When you
     *       call delete rule for a non-existent custom eventbus, <code>ResourceNotFoundException</code> is
     *       returned.</p>
     *
     *          <p>Managed rules are rules created and managed by another Amazon Web Services service on your behalf. These
     *       rules are created by those other Amazon Web Services services to support functionality in those services. You
     *       can delete these rules using the <code>Force</code> option, but you should do so only if you
     *       are sure the other service is not still using that rule.</p>
     */ public deleteRule ( args , options ? ) ; public deleteRule ( args , cb ) ; public deleteRule ( args , options , cb ) ; public deleteRule ( args , optionsOrCb ? , cb ? ) { const command = new DeleteRuleCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Retrieves details about an API destination.</p>
     */ public describeApiDestination ( args , options ? ) ; public describeApiDestination ( args , cb ) ; public describeApiDestination ( args , options , cb ) ; public describeApiDestination ( args , optionsOrCb ? , cb ? ) { const command = new DescribeApiDestinationCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Retrieves details about an archive.</p>
     */ public describeArchive ( args , options ? ) ; public describeArchive ( args , cb ) ; public describeArchive ( args , options , cb ) ; public describeArchive ( args , optionsOrCb ? , cb ? ) { const command = new DescribeArchiveCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Retrieves details about a connection.</p>
     */ public describeConnection ( args , options ? ) ; public describeConnection ( args , cb ) ; public describeConnection ( args , options , cb ) ; public describeConnection ( args , optionsOrCb ? , cb ? ) { const command = new DescribeConnectionCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Displays details about an event bus in your account. This can include the external Amazon Web Services
     *       accounts that are permitted to write events to your default event bus, and the associated
     *       policy. For custom event buses and partner event buses, it displays the name, ARN, policy,
     *       state, and creation time.</p>
     *          <p> To enable your account to receive events from other accounts on its default event bus,
     *       use <a href="https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_PutPermission.html">PutPermission</a>.</p>
     *          <p>For more information about partner event buses, see <a href="https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_CreateEventBus.html">CreateEventBus</a>.</p>
     */ public describeEventBus ( args , options ? ) ; public describeEventBus ( args , cb ) ; public describeEventBus ( args , options , cb ) ; public describeEventBus ( args , optionsOrCb ? , cb ? ) { const command = new DescribeEventBusCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>This operation lists details about a partner event source that is shared with your
     *       account.</p>
     */ public describeEventSource ( args , options ? ) ; public describeEventSource ( args , cb ) ; public describeEventSource ( args , options , cb ) ; public describeEventSource ( args , optionsOrCb ? , cb ? ) { const command = new DescribeEventSourceCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>An SaaS partner can use this operation to list details about a partner event source that
     *       they have created. Amazon Web Services customers do not use this operation. Instead, Amazon Web Services customers can use <a href="https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_DescribeEventSource.html">DescribeEventSource</a>
     *       to see details about a partner event source that is
     *       shared with them.</p>
     */ public describePartnerEventSource ( args , options ? ) ; public describePartnerEventSource ( args , cb ) ; public describePartnerEventSource ( args , options , cb ) ; public describePartnerEventSource ( args , optionsOrCb ? , cb ? ) { const command = new DescribePartnerEventSourceCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Retrieves details about a replay. Use <code>DescribeReplay</code> to determine the
     *       progress of a running replay. A replay processes events to replay based on the time in the
     *       event, and replays them using 1 minute intervals. If you use <code>StartReplay</code> and
     *       specify an <code>EventStartTime</code> and an <code>EventEndTime</code> that covers a 20
     *       minute time range, the events are replayed from the first minute of that 20 minute range
     *       first. Then the events from the second minute are replayed. You can use
     *         <code>DescribeReplay</code> to determine the progress of a replay. The value returned for
     *         <code>EventLastReplayedTime</code> indicates the time within the specified time range
     *       associated with the last event replayed.</p>
     */ public describeReplay ( args , options ? ) ; public describeReplay ( args , cb ) ; public describeReplay ( args , options , cb ) ; public describeReplay ( args , optionsOrCb ? , cb ? ) { const command = new DescribeReplayCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Describes the specified rule.</p>
     *          <p>DescribeRule does not list the targets of a rule. To see the targets associated with a
     *       rule, use <a href="https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_ListTargetsByRule.html">ListTargetsByRule</a>.</p>
     */ public describeRule ( args , options ? ) ; public describeRule ( args , cb ) ; public describeRule ( args , options , cb ) ; public describeRule ( args , optionsOrCb ? , cb ? ) { const command = new DescribeRuleCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Disables the specified rule. A disabled rule won't match any events, and won't
     *       self-trigger if it has a schedule expression.</p>
     *
     *          <p>When you disable a rule, incoming events might continue to match to the disabled rule.
     *       Allow a short period of time for changes to take effect.</p>
     */ public disableRule ( args , options ? ) ; public disableRule ( args , cb ) ; public disableRule ( args , options , cb ) ; public disableRule ( args , optionsOrCb ? , cb ? ) { const command = new DisableRuleCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Enables the specified rule. If the rule does not exist, the operation fails.</p>
     *
     *          <p>When you enable a rule, incoming events might not immediately start matching to a newly
     *       enabled rule. Allow a short period of time for changes to take effect.</p>
     */ public enableRule ( args , options ? ) ; public enableRule ( args , cb ) ; public enableRule ( args , options , cb ) ; public enableRule ( args , optionsOrCb ? , cb ? ) { const command = new EnableRuleCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Retrieves a list of API destination in the account in the current Region.</p>
     */ public listApiDestinations ( args , options ? ) ; public listApiDestinations ( args , cb ) ; public listApiDestinations ( args , options , cb ) ; public listApiDestinations ( args , optionsOrCb ? , cb ? ) { const command = new ListApiDestinationsCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Lists your archives. You can either list all the archives or you can provide a prefix to
     *       match to the archive names. Filter parameters are exclusive.</p>
     */ public listArchives ( args , options ? ) ; public listArchives ( args , cb ) ; public listArchives ( args , options , cb ) ; public listArchives ( args , optionsOrCb ? , cb ? ) { const command = new ListArchivesCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Retrieves a list of connections from the account.</p>
     */ public listConnections ( args , options ? ) ; public listConnections ( args , cb ) ; public listConnections ( args , options , cb ) ; public listConnections ( args , optionsOrCb ? , cb ? ) { const command = new ListConnectionsCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Lists all the event buses in your account, including the default event bus, custom event
     *       buses, and partner event buses.</p>
     */ public listEventBuses ( args , options ? ) ; public listEventBuses ( args , cb ) ; public listEventBuses ( args , options , cb ) ; public listEventBuses ( args , optionsOrCb ? , cb ? ) { const command = new ListEventBusesCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>You can use this to see all the partner event sources that have been shared with your Amazon Web Services
     *       account. For more information about partner event sources, see <a href="https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_CreateEventBus.html">CreateEventBus</a>.</p>
     */ public listEventSources ( args , options ? ) ; public listEventSources ( args , cb ) ; public listEventSources ( args , options , cb ) ; public listEventSources ( args , optionsOrCb ? , cb ? ) { const command = new ListEventSourcesCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>An SaaS partner can use this operation to display the Amazon Web Services account ID that a particular
     *       partner event source name is associated with. This operation is not used by Amazon Web Services
     *       customers.</p>
     */ public listPartnerEventSourceAccounts ( args , options ? ) ; public listPartnerEventSourceAccounts ( args , cb ) ; public listPartnerEventSourceAccounts ( args , options , cb ) ; public listPartnerEventSourceAccounts ( args , optionsOrCb ? , cb ? ) { const command = new ListPartnerEventSourceAccountsCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>An SaaS partner can use this operation to list all the partner event source names that
     *       they have created. This operation is not used by Amazon Web Services customers.</p>
     */ public listPartnerEventSources ( args , options ? ) ; public listPartnerEventSources ( args , cb ) ; public listPartnerEventSources ( args , options , cb ) ; public listPartnerEventSources ( args , optionsOrCb ? , cb ? ) { const command = new ListPartnerEventSourcesCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Lists your replays. You can either list all the replays or you can provide a prefix to
     *       match to the replay names. Filter parameters are exclusive.</p>
     */ public listReplays ( args , options ? ) ; public listReplays ( args , cb ) ; public listReplays ( args , options , cb ) ; public listReplays ( args , optionsOrCb ? , cb ? ) { const command = new ListReplaysCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Lists the rules for the specified target. You can see which of the rules in Amazon
     *       EventBridge can invoke a specific target in your account.</p>
     */ public listRuleNamesByTarget ( args , options ? ) ; public listRuleNamesByTarget ( args , cb ) ; public listRuleNamesByTarget ( args , options , cb ) ; public listRuleNamesByTarget ( args , optionsOrCb ? , cb ? ) { const command = new ListRuleNamesByTargetCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Lists your Amazon EventBridge rules. You can either list all the rules or you can provide
     *       a prefix to match to the rule names.</p>
     *
     *          <p>ListRules does not list the targets of a rule. To see the targets associated with a rule,
     *       use <a href="https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_ListTargetsByRule.html">ListTargetsByRule</a>.</p>
     */ public listRules ( args , options ? ) ; public listRules ( args , cb ) ; public listRules ( args , options , cb ) ; public listRules ( args , optionsOrCb ? , cb ? ) { const command = new ListRulesCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Displays the tags associated with an EventBridge resource. In EventBridge, rules and event
     *       buses can be tagged.</p>
     */ public listTagsForResource ( args , options ? ) ; public listTagsForResource ( args , cb ) ; public listTagsForResource ( args , options , cb ) ; public listTagsForResource ( args , optionsOrCb ? , cb ? ) { const command = new ListTagsForResourceCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Lists the targets assigned to the specified rule.</p>
     */ public listTargetsByRule ( args , options ? ) ; public listTargetsByRule ( args , cb ) ; public listTargetsByRule ( args , options , cb ) ; public listTargetsByRule ( args , optionsOrCb ? , cb ? ) { const command = new ListTargetsByRuleCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Sends custom events to Amazon EventBridge so that they can be matched to rules.</p>
     */ public putEvents ( args , options ? ) ; public putEvents ( args , cb ) ; public putEvents ( args , options , cb ) ; public putEvents ( args , optionsOrCb ? , cb ? ) { const command = new PutEventsCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>This is used by SaaS partners to write events to a customer's partner event bus. Amazon Web Services
     *       customers do not use this operation.</p>
     */ public putPartnerEvents ( args , options ? ) ; public putPartnerEvents ( args , cb ) ; public putPartnerEvents ( args , options , cb ) ; public putPartnerEvents ( args , optionsOrCb ? , cb ? ) { const command = new PutPartnerEventsCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Running <code>PutPermission</code> permits the specified Amazon Web Services account or Amazon Web Services organization
     *       to put events to the specified <i>event bus</i>. Amazon EventBridge (CloudWatch
     *       Events) rules in your account are triggered by these events arriving to an event bus in your
     *       account. </p>
     *          <p>For another account to send events to your account, that external account must have an
     *       EventBridge rule with your account's event bus as a target.</p>
     *
     *          <p>To enable multiple Amazon Web Services accounts to put events to your event bus, run
     *         <code>PutPermission</code> once for each of these accounts. Or, if all the accounts are
     *       members of the same Amazon Web Services organization, you can run <code>PutPermission</code> once specifying
     *         <code>Principal</code> as "*" and specifying the Amazon Web Services organization ID in
     *         <code>Condition</code>, to grant permissions to all accounts in that organization.</p>
     *
     *          <p>If you grant permissions using an organization, then accounts in that organization must
     *       specify a <code>RoleArn</code> with proper permissions when they use <code>PutTarget</code> to
     *       add your account's event bus as a target. For more information, see <a href="https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-cross-account-event-delivery.html">Sending and
     *         Receiving Events Between Amazon Web Services Accounts</a> in the <i>Amazon EventBridge User
     *         Guide</i>.</p>
     *
     *          <p>The permission policy on the event bus cannot exceed 10 KB in size.</p>
     */ public putPermission ( args , options ? ) ; public putPermission ( args , cb ) ; public putPermission ( args , options , cb ) ; public putPermission ( args , optionsOrCb ? , cb ? ) { const command = new PutPermissionCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Creates or updates the specified rule. Rules are enabled by default, or based on value of
     *       the state. You can disable a rule using <a href="https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_DisableRule.html">DisableRule</a>.</p>
     *
     *          <p>A single rule watches for events from a single event bus. Events generated by Amazon Web Services services
     *       go to your account's default event bus. Events generated by SaaS partner services or
     *       applications go to the matching partner event bus. If you have custom applications or
     *       services, you can specify whether their events go to your default event bus or a custom event
     *       bus that you have created. For more information, see <a href="https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_CreateEventBus.html">CreateEventBus</a>.</p>
     *
     *          <p>If you are updating an existing rule, the rule is replaced with what you specify in this
     *         <code>PutRule</code> command. If you omit arguments in <code>PutRule</code>, the old values
     *       for those arguments are not kept. Instead, they are replaced with null values.</p>
     *
     *          <p>When you create or update a rule, incoming events might not immediately start matching to
     *       new or updated rules. Allow a short period of time for changes to take effect.</p>
     *
     *          <p>A rule must contain at least an EventPattern or ScheduleExpression. Rules with
     *       EventPatterns are triggered when a matching event is observed. Rules with ScheduleExpressions
     *       self-trigger based on the given schedule. A rule can have both an EventPattern and a
     *       ScheduleExpression, in which case the rule triggers on matching events as well as on a
     *       schedule.</p>
     *
     *          <p>When you initially create a rule, you can optionally assign one or more tags to the rule.
     *       Tags can help you organize and categorize your resources. You can also use them to scope user
     *       permissions, by granting a user permission to access or change only rules with certain tag
     *       values. To use the <code>PutRule</code> operation and assign tags, you must have both the
     *         <code>events:PutRule</code> and <code>events:TagResource</code> permissions.</p>
     *          <p>If you are updating an existing rule, any tags you specify in the <code>PutRule</code>
     *       operation are ignored. To update the tags of an existing rule, use <a href="https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_TagResource.html">TagResource</a> and <a href="https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_UntagResource.html">UntagResource</a>.</p>
     *
     *          <p>Most services in Amazon Web Services treat : or / as the same character in Amazon Resource Names (ARNs).
     *       However, EventBridge uses an exact match in event patterns and rules. Be sure to use the
     *       correct ARN characters when creating event patterns so that they match the ARN syntax in the
     *       event you want to match.</p>
     *
     *          <p>In EventBridge, it is possible to create rules that lead to infinite loops, where a rule
     *       is fired repeatedly. For example, a rule might detect that ACLs have changed on an S3 bucket,
     *       and trigger software to change them to the desired state. If the rule is not written
     *       carefully, the subsequent change to the ACLs fires the rule again, creating an infinite
     *       loop.</p>
     *          <p>To prevent this, write the rules so that the triggered actions do not re-fire the same
     *       rule. For example, your rule could fire only if ACLs are found to be in a bad state, instead
     *       of after any change. </p>
     *          <p>An infinite loop can quickly cause higher than expected charges. We recommend that you use
     *       budgeting, which alerts you when charges exceed your specified limit. For more information,
     *       see <a href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/budgets-managing-costs.html">Managing Your Costs with
     *         Budgets</a>.</p>
     */ public putRule ( args , options ? ) ; public putRule ( args , cb ) ; public putRule ( args , options , cb ) ; public putRule ( args , optionsOrCb ? , cb ? ) { const command = new PutRuleCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Adds the specified targets to the specified rule, or updates the targets if they are
     *       already associated with the rule.</p>
     *          <p>Targets are the resources that are invoked when a rule is triggered.</p>
     *          <p>You can configure the following as targets for Events:</p>
     *
     *          <ul>
     *             <li>
     *                <p>
     *                   <a href="https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-api-destinations.html">API
     *           destination</a>
     *                </p>
     *             </li>
     *             <li>
     *                <p>Amazon API Gateway REST API endpoints</p>
     *             </li>
     *             <li>
     *                <p>API Gateway</p>
     *             </li>
     *             <li>
     *                <p>Batch job queue</p>
     *             </li>
     *             <li>
     *                <p>CloudWatch Logs group</p>
     *             </li>
     *             <li>
     *                <p>CodeBuild project</p>
     *             </li>
     *             <li>
     *                <p>CodePipeline</p>
     *             </li>
     *             <li>
     *                <p>Amazon EC2 <code>CreateSnapshot</code> API call</p>
     *             </li>
     *             <li>
     *                <p>Amazon EC2 <code>RebootInstances</code> API call</p>
     *             </li>
     *             <li>
     *                <p>Amazon EC2 <code>StopInstances</code> API call</p>
     *             </li>
     *             <li>
     *                <p>Amazon EC2 <code>TerminateInstances</code> API call</p>
     *             </li>
     *             <li>
     *                <p>Amazon ECS tasks</p>
     *             </li>
     *             <li>
     *                <p>Event bus in a different Amazon Web Services account or Region.</p>
     *                <p>You can use an event bus in the US East (N. Virginia) us-east-1, US West (Oregon)
     *           us-west-2, or Europe (Ireland) eu-west-1 Regions as a target for a rule.</p>
     *             </li>
     *             <li>
     *                <p>Firehose delivery stream (Kinesis Data Firehose)</p>
     *             </li>
     *             <li>
     *                <p>Inspector assessment template (Amazon Inspector)</p>
     *             </li>
     *             <li>
     *                <p>Kinesis stream (Kinesis Data Stream)</p>
     *             </li>
     *             <li>
     *                <p>Lambda function</p>
     *             </li>
     *             <li>
     *                <p>Redshift clusters (Data API statement execution)</p>
     *             </li>
     *             <li>
     *                <p>Amazon SNS topic</p>
     *             </li>
     *             <li>
     *                <p>Amazon SQS queues (includes FIFO queues</p>
     *             </li>
     *             <li>
     *                <p>SSM Automation</p>
     *             </li>
     *             <li>
     *                <p>SSM OpsItem</p>
     *             </li>
     *             <li>
     *                <p>SSM Run Command</p>
     *             </li>
     *             <li>
     *                <p>Step Functions state machines</p>
     *             </li>
     *          </ul>
     *
     *          <p>Creating rules with built-in targets is supported only in the Amazon Web Services Management Console. The
     *       built-in targets are <code>EC2 CreateSnapshot API call</code>, <code>EC2 RebootInstances API
     *         call</code>, <code>EC2 StopInstances API call</code>, and <code>EC2 TerminateInstances API
     *         call</code>. </p>
     *
     *          <p>For some target types, <code>PutTargets</code> provides target-specific parameters. If the
     *       target is a Kinesis data stream, you can optionally specify which shard the event goes to by
     *       using the <code>KinesisParameters</code> argument. To invoke a command on multiple EC2
     *       instances with one rule, you can use the <code>RunCommandParameters</code> field.</p>
     *
     *          <p>To be able to make API calls against the resources that you own, Amazon EventBridge
     *       needs the appropriate permissions. For Lambda and Amazon SNS
     *       resources, EventBridge relies on resource-based policies. For EC2 instances, Kinesis Data Streams,
     *       Step Functions state machines and API Gateway REST APIs, EventBridge relies on
     *       IAM roles that you specify in the <code>RoleARN</code> argument in <code>PutTargets</code>.
     *       For more information, see <a href="https://docs.aws.amazon.com/eventbridge/latest/userguide/auth-and-access-control-eventbridge.html">Authentication
     *         and Access Control</a> in the <i>Amazon EventBridge User Guide</i>.</p>
     *
     *          <p>If another Amazon Web Services account is in the same region and has granted you permission (using
     *         <code>PutPermission</code>), you can send events to that account. Set that account's event
     *       bus as a target of the rules in your account. To send the matched events to the other account,
     *       specify that account's event bus as the <code>Arn</code> value when you run
     *         <code>PutTargets</code>. If your account sends events to another account, your account is
     *       charged for each sent event. Each event sent to another account is charged as a custom event.
     *       The account receiving the event is not charged. For more information, see <a href="http://aws.amazon.com/eventbridge/pricing/">Amazon EventBridge
     *         Pricing</a>.</p>
     *
     *          <note>
     *             <p>
     *                <code>Input</code>, <code>InputPath</code>, and <code>InputTransformer</code> are not
     *         available with <code>PutTarget</code> if the target is an event bus of a different Amazon Web Services
     *         account.</p>
     *          </note>
     *
     *          <p>If you are setting the event bus of another account as the target, and that account
     *       granted permission to your account through an organization instead of directly by the account
     *       ID, then you must specify a <code>RoleArn</code> with proper permissions in the
     *         <code>Target</code> structure. For more information, see <a href="https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-cross-account-event-delivery.html">Sending and
     *           Receiving Events Between Amazon Web Services Accounts</a> in the <i>Amazon EventBridge User
     *         Guide</i>.</p>
     *
     *          <p>For more information about enabling cross-account events, see <a href="https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_PutPermission.html">PutPermission</a>.</p>
     *
     *          <p>
     *             <b>Input</b>, <b>InputPath</b>, and
     *         <b>InputTransformer</b> are mutually exclusive and optional
     *       parameters of a target. When a rule is triggered due to a matched event:</p>
     *
     *          <ul>
     *             <li>
     *                <p>If none of the following arguments are specified for a target, then the entire event
     *           is passed to the target in JSON format (unless the target is Amazon EC2 Run Command or
     *           Amazon ECS task, in which case nothing from the event is passed to the target).</p>
     *             </li>
     *             <li>
     *                <p>If <b>Input</b> is specified in the form of valid JSON, then
     *           the matched event is overridden with this constant.</p>
     *             </li>
     *             <li>
     *                <p>If <b>InputPath</b> is specified in the form of JSONPath
     *           (for example, <code>$.detail</code>), then only the part of the event specified in the
     *           path is passed to the target (for example, only the detail part of the event is
     *           passed).</p>
     *             </li>
     *             <li>
     *                <p>If <b>InputTransformer</b> is specified, then one or more
     *           specified JSONPaths are extracted from the event and used as values in a template that you
     *           specify as the input to the target.</p>
     *             </li>
     *          </ul>
     *
     *          <p>When you specify <code>InputPath</code> or <code>InputTransformer</code>, you must use
     *       JSON dot notation, not bracket notation.</p>
     *
     *          <p>When you add targets to a rule and the associated rule triggers soon after, new or updated
     *       targets might not be immediately invoked. Allow a short period of time for changes to take
     *       effect.</p>
     *
     *          <p>This action can partially fail if too many requests are made at the same time. If that
     *       happens, <code>FailedEntryCount</code> is non-zero in the response and each entry in
     *         <code>FailedEntries</code> provides the ID of the failed target and the error code.</p>
     */ public putTargets ( args , options ? ) ; public putTargets ( args , cb ) ; public putTargets ( args , options , cb ) ; public putTargets ( args , optionsOrCb ? , cb ? ) { const command = new PutTargetsCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Revokes the permission of another Amazon Web Services account to be able to put events to the specified
     *       event bus. Specify the account to revoke by the <code>StatementId</code> value that you
     *       associated with the account when you granted it permission with <code>PutPermission</code>.
     *       You can find the <code>StatementId</code> by using <a href="https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_DescribeEventBus.html">DescribeEventBus</a>.</p>
     */ public removePermission ( args , options ? ) ; public removePermission ( args , cb ) ; public removePermission ( args , options , cb ) ; public removePermission ( args , optionsOrCb ? , cb ? ) { const command = new RemovePermissionCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Removes the specified targets from the specified rule. When the rule is triggered, those
     *       targets are no longer be invoked.</p>
     *
     *          <p>When you remove a target, when the associated rule triggers, removed targets might
     *       continue to be invoked. Allow a short period of time for changes to take effect.</p>
     *
     *          <p>This action can partially fail if too many requests are made at the same time. If that
     *       happens, <code>FailedEntryCount</code> is non-zero in the response and each entry in
     *         <code>FailedEntries</code> provides the ID of the failed target and the error code.</p>
     */ public removeTargets ( args , options ? ) ; public removeTargets ( args , cb ) ; public removeTargets ( args , options , cb ) ; public removeTargets ( args , optionsOrCb ? , cb ? ) { const command = new RemoveTargetsCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Starts the specified replay. Events are not necessarily replayed in the exact same order
     *       that they were added to the archive. A replay processes events to replay based on the time in
     *       the event, and replays them using 1 minute intervals. If you specify an
     *         <code>EventStartTime</code> and an <code>EventEndTime</code> that covers a 20 minute time
     *       range, the events are replayed from the first minute of that 20 minute range first. Then the
     *       events from the second minute are replayed. You can use <code>DescribeReplay</code> to
     *       determine the progress of a replay. The value returned for <code>EventLastReplayedTime</code>
     *       indicates the time within the specified time range associated with the last event
     *       replayed.</p>
     */ public startReplay ( args , options ? ) ; public startReplay ( args , cb ) ; public startReplay ( args , options , cb ) ; public startReplay ( args , optionsOrCb ? , cb ? ) { const command = new StartReplayCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Assigns one or more tags (key-value pairs) to the specified EventBridge resource. Tags can
     *       help you organize and categorize your resources. You can also use them to scope user
     *       permissions by granting a user permission to access or change only resources with certain tag
     *       values. In EventBridge, rules and event buses can be tagged.</p>
     *          <p>Tags don't have any semantic meaning to Amazon Web Services and are interpreted strictly as strings of
     *       characters.</p>
     *          <p>You can use the <code>TagResource</code> action with a resource that already has tags. If
     *       you specify a new tag key, this tag is appended to the list of tags associated with the
     *       resource. If you specify a tag key that is already associated with the resource, the new tag
     *       value that you specify replaces the previous value for that tag.</p>
     *          <p>You can associate as many as 50 tags with a resource.</p>
     */ public tagResource ( args , options ? ) ; public tagResource ( args , cb ) ; public tagResource ( args , options , cb ) ; public tagResource ( args , optionsOrCb ? , cb ? ) { const command = new TagResourceCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Tests whether the specified event pattern matches the provided event.</p>
     *          <p>Most services in Amazon Web Services treat : or / as the same character in Amazon Resource Names (ARNs).
     *       However, EventBridge uses an exact match in event patterns and rules. Be sure to use the
     *       correct ARN characters when creating event patterns so that they match the ARN syntax in the
     *       event you want to match.</p>
     */ public testEventPattern ( args , options ? ) ; public testEventPattern ( args , cb ) ; public testEventPattern ( args , options , cb ) ; public testEventPattern ( args , optionsOrCb ? , cb ? ) { const command = new TestEventPatternCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Removes one or more tags from the specified EventBridge resource. In Amazon EventBridge
     *       (CloudWatch Events), rules and event buses can be tagged.</p>
     */ public untagResource ( args , options ? ) ; public untagResource ( args , cb ) ; public untagResource ( args , options , cb ) ; public untagResource ( args , optionsOrCb ? , cb ? ) { const command = new UntagResourceCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Updates an API destination.</p>
     */ public updateApiDestination ( args , options ? ) ; public updateApiDestination ( args , cb ) ; public updateApiDestination ( args , options , cb ) ; public updateApiDestination ( args , optionsOrCb ? , cb ? ) { const command = new UpdateApiDestinationCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Updates the specified archive.</p>
     */ public updateArchive ( args , options ? ) ; public updateArchive ( args , cb ) ; public updateArchive ( args , options , cb ) ; public updateArchive ( args , optionsOrCb ? , cb ? ) { const command = new UpdateArchiveCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Updates settings for a connection.</p>
     */ public updateConnection ( args , options ? ) ; public updateConnection ( args , cb ) ; public updateConnection ( args , options , cb ) ; public updateConnection ( args , optionsOrCb ? , cb ? ) { const command = new UpdateConnectionCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } }