UNPKG

32.5 kBTypeScriptView Raw
1import {Request} from '../lib/request';
2import {Response} from '../lib/response';
3import {AWSError} from '../lib/error';
4import {Service} from '../lib/service';
5import {ServiceConfigurationOptions} from '../lib/service';
6import {ConfigBase as Config} from '../lib/config';
7interface Blob {}
8declare class IoTEvents extends Service {
9 /**
10 * Constructs a service object. This object has one method for each API operation.
11 */
12 constructor(options?: IoTEvents.Types.ClientConfiguration)
13 config: Config & IoTEvents.Types.ClientConfiguration;
14 /**
15 * Creates a detector model.
16 */
17 createDetectorModel(params: IoTEvents.Types.CreateDetectorModelRequest, callback?: (err: AWSError, data: IoTEvents.Types.CreateDetectorModelResponse) => void): Request<IoTEvents.Types.CreateDetectorModelResponse, AWSError>;
18 /**
19 * Creates a detector model.
20 */
21 createDetectorModel(callback?: (err: AWSError, data: IoTEvents.Types.CreateDetectorModelResponse) => void): Request<IoTEvents.Types.CreateDetectorModelResponse, AWSError>;
22 /**
23 * Creates an input.
24 */
25 createInput(params: IoTEvents.Types.CreateInputRequest, callback?: (err: AWSError, data: IoTEvents.Types.CreateInputResponse) => void): Request<IoTEvents.Types.CreateInputResponse, AWSError>;
26 /**
27 * Creates an input.
28 */
29 createInput(callback?: (err: AWSError, data: IoTEvents.Types.CreateInputResponse) => void): Request<IoTEvents.Types.CreateInputResponse, AWSError>;
30 /**
31 * Deletes a detector model. Any active instances of the detector model are also deleted.
32 */
33 deleteDetectorModel(params: IoTEvents.Types.DeleteDetectorModelRequest, callback?: (err: AWSError, data: IoTEvents.Types.DeleteDetectorModelResponse) => void): Request<IoTEvents.Types.DeleteDetectorModelResponse, AWSError>;
34 /**
35 * Deletes a detector model. Any active instances of the detector model are also deleted.
36 */
37 deleteDetectorModel(callback?: (err: AWSError, data: IoTEvents.Types.DeleteDetectorModelResponse) => void): Request<IoTEvents.Types.DeleteDetectorModelResponse, AWSError>;
38 /**
39 * Deletes an input.
40 */
41 deleteInput(params: IoTEvents.Types.DeleteInputRequest, callback?: (err: AWSError, data: IoTEvents.Types.DeleteInputResponse) => void): Request<IoTEvents.Types.DeleteInputResponse, AWSError>;
42 /**
43 * Deletes an input.
44 */
45 deleteInput(callback?: (err: AWSError, data: IoTEvents.Types.DeleteInputResponse) => void): Request<IoTEvents.Types.DeleteInputResponse, AWSError>;
46 /**
47 * Describes a detector model. If the version parameter is not specified, information about the latest version is returned.
48 */
49 describeDetectorModel(params: IoTEvents.Types.DescribeDetectorModelRequest, callback?: (err: AWSError, data: IoTEvents.Types.DescribeDetectorModelResponse) => void): Request<IoTEvents.Types.DescribeDetectorModelResponse, AWSError>;
50 /**
51 * Describes a detector model. If the version parameter is not specified, information about the latest version is returned.
52 */
53 describeDetectorModel(callback?: (err: AWSError, data: IoTEvents.Types.DescribeDetectorModelResponse) => void): Request<IoTEvents.Types.DescribeDetectorModelResponse, AWSError>;
54 /**
55 * Describes an input.
56 */
57 describeInput(params: IoTEvents.Types.DescribeInputRequest, callback?: (err: AWSError, data: IoTEvents.Types.DescribeInputResponse) => void): Request<IoTEvents.Types.DescribeInputResponse, AWSError>;
58 /**
59 * Describes an input.
60 */
61 describeInput(callback?: (err: AWSError, data: IoTEvents.Types.DescribeInputResponse) => void): Request<IoTEvents.Types.DescribeInputResponse, AWSError>;
62 /**
63 * Retrieves the current settings of the AWS IoT Events logging options.
64 */
65 describeLoggingOptions(params: IoTEvents.Types.DescribeLoggingOptionsRequest, callback?: (err: AWSError, data: IoTEvents.Types.DescribeLoggingOptionsResponse) => void): Request<IoTEvents.Types.DescribeLoggingOptionsResponse, AWSError>;
66 /**
67 * Retrieves the current settings of the AWS IoT Events logging options.
68 */
69 describeLoggingOptions(callback?: (err: AWSError, data: IoTEvents.Types.DescribeLoggingOptionsResponse) => void): Request<IoTEvents.Types.DescribeLoggingOptionsResponse, AWSError>;
70 /**
71 * Lists all the versions of a detector model. Only the metadata associated with each detector model version is returned.
72 */
73 listDetectorModelVersions(params: IoTEvents.Types.ListDetectorModelVersionsRequest, callback?: (err: AWSError, data: IoTEvents.Types.ListDetectorModelVersionsResponse) => void): Request<IoTEvents.Types.ListDetectorModelVersionsResponse, AWSError>;
74 /**
75 * Lists all the versions of a detector model. Only the metadata associated with each detector model version is returned.
76 */
77 listDetectorModelVersions(callback?: (err: AWSError, data: IoTEvents.Types.ListDetectorModelVersionsResponse) => void): Request<IoTEvents.Types.ListDetectorModelVersionsResponse, AWSError>;
78 /**
79 * Lists the detector models you have created. Only the metadata associated with each detector model is returned.
80 */
81 listDetectorModels(params: IoTEvents.Types.ListDetectorModelsRequest, callback?: (err: AWSError, data: IoTEvents.Types.ListDetectorModelsResponse) => void): Request<IoTEvents.Types.ListDetectorModelsResponse, AWSError>;
82 /**
83 * Lists the detector models you have created. Only the metadata associated with each detector model is returned.
84 */
85 listDetectorModels(callback?: (err: AWSError, data: IoTEvents.Types.ListDetectorModelsResponse) => void): Request<IoTEvents.Types.ListDetectorModelsResponse, AWSError>;
86 /**
87 * Lists the inputs you have created.
88 */
89 listInputs(params: IoTEvents.Types.ListInputsRequest, callback?: (err: AWSError, data: IoTEvents.Types.ListInputsResponse) => void): Request<IoTEvents.Types.ListInputsResponse, AWSError>;
90 /**
91 * Lists the inputs you have created.
92 */
93 listInputs(callback?: (err: AWSError, data: IoTEvents.Types.ListInputsResponse) => void): Request<IoTEvents.Types.ListInputsResponse, AWSError>;
94 /**
95 * Lists the tags (metadata) you have assigned to the resource.
96 */
97 listTagsForResource(params: IoTEvents.Types.ListTagsForResourceRequest, callback?: (err: AWSError, data: IoTEvents.Types.ListTagsForResourceResponse) => void): Request<IoTEvents.Types.ListTagsForResourceResponse, AWSError>;
98 /**
99 * Lists the tags (metadata) you have assigned to the resource.
100 */
101 listTagsForResource(callback?: (err: AWSError, data: IoTEvents.Types.ListTagsForResourceResponse) => void): Request<IoTEvents.Types.ListTagsForResourceResponse, AWSError>;
102 /**
103 * Sets or updates the AWS IoT Events logging options. If you update the value of any loggingOptions field, it takes up to one minute for the change to take effect. If you change the policy attached to the role you specified in the roleArn field (for example, to correct an invalid policy), it takes up to five minutes for that change to take effect.
104 */
105 putLoggingOptions(params: IoTEvents.Types.PutLoggingOptionsRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
106 /**
107 * Sets or updates the AWS IoT Events logging options. If you update the value of any loggingOptions field, it takes up to one minute for the change to take effect. If you change the policy attached to the role you specified in the roleArn field (for example, to correct an invalid policy), it takes up to five minutes for that change to take effect.
108 */
109 putLoggingOptions(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
110 /**
111 * Adds to or modifies the tags of the given resource. Tags are metadata that can be used to manage a resource.
112 */
113 tagResource(params: IoTEvents.Types.TagResourceRequest, callback?: (err: AWSError, data: IoTEvents.Types.TagResourceResponse) => void): Request<IoTEvents.Types.TagResourceResponse, AWSError>;
114 /**
115 * Adds to or modifies the tags of the given resource. Tags are metadata that can be used to manage a resource.
116 */
117 tagResource(callback?: (err: AWSError, data: IoTEvents.Types.TagResourceResponse) => void): Request<IoTEvents.Types.TagResourceResponse, AWSError>;
118 /**
119 * Removes the given tags (metadata) from the resource.
120 */
121 untagResource(params: IoTEvents.Types.UntagResourceRequest, callback?: (err: AWSError, data: IoTEvents.Types.UntagResourceResponse) => void): Request<IoTEvents.Types.UntagResourceResponse, AWSError>;
122 /**
123 * Removes the given tags (metadata) from the resource.
124 */
125 untagResource(callback?: (err: AWSError, data: IoTEvents.Types.UntagResourceResponse) => void): Request<IoTEvents.Types.UntagResourceResponse, AWSError>;
126 /**
127 * Updates a detector model. Detectors (instances) spawned by the previous version are deleted and then re-created as new inputs arrive.
128 */
129 updateDetectorModel(params: IoTEvents.Types.UpdateDetectorModelRequest, callback?: (err: AWSError, data: IoTEvents.Types.UpdateDetectorModelResponse) => void): Request<IoTEvents.Types.UpdateDetectorModelResponse, AWSError>;
130 /**
131 * Updates a detector model. Detectors (instances) spawned by the previous version are deleted and then re-created as new inputs arrive.
132 */
133 updateDetectorModel(callback?: (err: AWSError, data: IoTEvents.Types.UpdateDetectorModelResponse) => void): Request<IoTEvents.Types.UpdateDetectorModelResponse, AWSError>;
134 /**
135 * Updates an input.
136 */
137 updateInput(params: IoTEvents.Types.UpdateInputRequest, callback?: (err: AWSError, data: IoTEvents.Types.UpdateInputResponse) => void): Request<IoTEvents.Types.UpdateInputResponse, AWSError>;
138 /**
139 * Updates an input.
140 */
141 updateInput(callback?: (err: AWSError, data: IoTEvents.Types.UpdateInputResponse) => void): Request<IoTEvents.Types.UpdateInputResponse, AWSError>;
142}
143declare namespace IoTEvents {
144 export interface Action {
145 /**
146 * Sets a variable to a specified value.
147 */
148 setVariable?: SetVariableAction;
149 /**
150 * Sends an Amazon SNS message.
151 */
152 sns?: SNSTopicPublishAction;
153 /**
154 * Publishes an MQTT message with the given topic to the AWS IoT message broker.
155 */
156 iotTopicPublish?: IotTopicPublishAction;
157 /**
158 * Information needed to set the timer.
159 */
160 setTimer?: SetTimerAction;
161 /**
162 * Information needed to clear the timer.
163 */
164 clearTimer?: ClearTimerAction;
165 /**
166 * Information needed to reset the timer.
167 */
168 resetTimer?: ResetTimerAction;
169 /**
170 * Calls a Lambda function, passing in information about the detector model instance and the event that triggered the action.
171 */
172 lambda?: LambdaAction;
173 /**
174 * Sends an AWS IoT Events input, passing in information about the detector model instance and the event that triggered the action.
175 */
176 iotEvents?: IotEventsAction;
177 /**
178 * Sends information about the detector model instance and the event that triggered the action to an Amazon SQS queue.
179 */
180 sqs?: SqsAction;
181 /**
182 * Sends information about the detector model instance and the event that triggered the action to an Amazon Kinesis Data Firehose delivery stream.
183 */
184 firehose?: FirehoseAction;
185 }
186 export type Actions = Action[];
187 export type AmazonResourceName = string;
188 export interface Attribute {
189 /**
190 * An expression that specifies an attribute-value pair in a JSON structure. Use this to specify an attribute from the JSON payload that is made available by the input. Inputs are derived from messages sent to AWS IoT Events (BatchPutMessage). Each such message contains a JSON payload. The attribute (and its paired value) specified here are available for use in the condition expressions used by detectors. Syntax: &lt;field-name&gt;.&lt;field-name&gt;...
191 */
192 jsonPath: AttributeJsonPath;
193 }
194 export type AttributeJsonPath = string;
195 export type Attributes = Attribute[];
196 export interface ClearTimerAction {
197 /**
198 * The name of the timer to clear.
199 */
200 timerName: TimerName;
201 }
202 export type Condition = string;
203 export interface CreateDetectorModelRequest {
204 /**
205 * The name of the detector model.
206 */
207 detectorModelName: DetectorModelName;
208 /**
209 * Information that defines how the detectors operate.
210 */
211 detectorModelDefinition: DetectorModelDefinition;
212 /**
213 * A brief description of the detector model.
214 */
215 detectorModelDescription?: DetectorModelDescription;
216 /**
217 * The input attribute key used to identify a device or system to create a detector (an instance of the detector model) and then to route each input received to the appropriate detector (instance). This parameter uses a JSON-path expression in the message payload of each input to specify the attribute-value pair that is used to identify the device associated with the input.
218 */
219 key?: AttributeJsonPath;
220 /**
221 * The ARN of the role that grants permission to AWS IoT Events to perform its operations.
222 */
223 roleArn: AmazonResourceName;
224 /**
225 * Metadata that can be used to manage the detector model.
226 */
227 tags?: Tags;
228 /**
229 * Information about the order in which events are evaluated and how actions are executed.
230 */
231 evaluationMethod?: EvaluationMethod;
232 }
233 export interface CreateDetectorModelResponse {
234 /**
235 * Information about how the detector model is configured.
236 */
237 detectorModelConfiguration?: DetectorModelConfiguration;
238 }
239 export interface CreateInputRequest {
240 /**
241 * The name you want to give to the input.
242 */
243 inputName: InputName;
244 /**
245 * A brief description of the input.
246 */
247 inputDescription?: InputDescription;
248 /**
249 * The definition of the input.
250 */
251 inputDefinition: InputDefinition;
252 /**
253 * Metadata that can be used to manage the input.
254 */
255 tags?: Tags;
256 }
257 export interface CreateInputResponse {
258 /**
259 * Information about the configuration of the input.
260 */
261 inputConfiguration?: InputConfiguration;
262 }
263 export interface DeleteDetectorModelRequest {
264 /**
265 * The name of the detector model to be deleted.
266 */
267 detectorModelName: DetectorModelName;
268 }
269 export interface DeleteDetectorModelResponse {
270 }
271 export interface DeleteInputRequest {
272 /**
273 * The name of the input to delete.
274 */
275 inputName: InputName;
276 }
277 export interface DeleteInputResponse {
278 }
279 export type DeliveryStreamName = string;
280 export interface DescribeDetectorModelRequest {
281 /**
282 * The name of the detector model.
283 */
284 detectorModelName: DetectorModelName;
285 /**
286 * The version of the detector model.
287 */
288 detectorModelVersion?: DetectorModelVersion;
289 }
290 export interface DescribeDetectorModelResponse {
291 /**
292 * Information about the detector model.
293 */
294 detectorModel?: DetectorModel;
295 }
296 export interface DescribeInputRequest {
297 /**
298 * The name of the input.
299 */
300 inputName: InputName;
301 }
302 export interface DescribeInputResponse {
303 /**
304 * Information about the input.
305 */
306 input?: Input;
307 }
308 export interface DescribeLoggingOptionsRequest {
309 }
310 export interface DescribeLoggingOptionsResponse {
311 /**
312 * The current settings of the AWS IoT Events logging options.
313 */
314 loggingOptions?: LoggingOptions;
315 }
316 export interface DetectorDebugOption {
317 /**
318 * The name of the detector model.
319 */
320 detectorModelName: DetectorModelName;
321 /**
322 * The value of the input attribute key used to create the detector (the instance of the detector model).
323 */
324 keyValue?: KeyValue;
325 }
326 export type DetectorDebugOptions = DetectorDebugOption[];
327 export interface DetectorModel {
328 /**
329 * Information that defines how a detector operates.
330 */
331 detectorModelDefinition?: DetectorModelDefinition;
332 /**
333 * Information about how the detector is configured.
334 */
335 detectorModelConfiguration?: DetectorModelConfiguration;
336 }
337 export type DetectorModelArn = string;
338 export interface DetectorModelConfiguration {
339 /**
340 * The name of the detector model.
341 */
342 detectorModelName?: DetectorModelName;
343 /**
344 * The version of the detector model.
345 */
346 detectorModelVersion?: DetectorModelVersion;
347 /**
348 * A brief description of the detector model.
349 */
350 detectorModelDescription?: DetectorModelDescription;
351 /**
352 * The ARN of the detector model.
353 */
354 detectorModelArn?: DetectorModelArn;
355 /**
356 * The ARN of the role that grants permission to AWS IoT Events to perform its operations.
357 */
358 roleArn?: AmazonResourceName;
359 /**
360 * The time the detector model was created.
361 */
362 creationTime?: Timestamp;
363 /**
364 * The time the detector model was last updated.
365 */
366 lastUpdateTime?: Timestamp;
367 /**
368 * The status of the detector model.
369 */
370 status?: DetectorModelVersionStatus;
371 /**
372 * The input attribute key used to identify a device or system to create a detector (an instance of the detector model) and then to route each input received to the appropriate detector (instance). This parameter uses a JSON-path expression in the message payload of each input to specify the attribute-value pair that is used to identify the device associated with the input.
373 */
374 key?: AttributeJsonPath;
375 /**
376 * Information about the order in which events are evaluated and how actions are executed.
377 */
378 evaluationMethod?: EvaluationMethod;
379 }
380 export interface DetectorModelDefinition {
381 /**
382 * Information about the states of the detector.
383 */
384 states: States;
385 /**
386 * The state that is entered at the creation of each detector (instance).
387 */
388 initialStateName: StateName;
389 }
390 export type DetectorModelDescription = string;
391 export type DetectorModelName = string;
392 export type DetectorModelSummaries = DetectorModelSummary[];
393 export interface DetectorModelSummary {
394 /**
395 * The name of the detector model.
396 */
397 detectorModelName?: DetectorModelName;
398 /**
399 * A brief description of the detector model.
400 */
401 detectorModelDescription?: DetectorModelDescription;
402 /**
403 * The time the detector model was created.
404 */
405 creationTime?: Timestamp;
406 }
407 export type DetectorModelVersion = string;
408 export type DetectorModelVersionStatus = "ACTIVE"|"ACTIVATING"|"INACTIVE"|"DEPRECATED"|"DRAFT"|"PAUSED"|"FAILED"|string;
409 export type DetectorModelVersionSummaries = DetectorModelVersionSummary[];
410 export interface DetectorModelVersionSummary {
411 /**
412 * The name of the detector model.
413 */
414 detectorModelName?: DetectorModelName;
415 /**
416 * The ID of the detector model version.
417 */
418 detectorModelVersion?: DetectorModelVersion;
419 /**
420 * The ARN of the detector model version.
421 */
422 detectorModelArn?: DetectorModelArn;
423 /**
424 * The ARN of the role that grants the detector model permission to perform its tasks.
425 */
426 roleArn?: AmazonResourceName;
427 /**
428 * The time the detector model version was created.
429 */
430 creationTime?: Timestamp;
431 /**
432 * The last time the detector model version was updated.
433 */
434 lastUpdateTime?: Timestamp;
435 /**
436 * The status of the detector model version.
437 */
438 status?: DetectorModelVersionStatus;
439 /**
440 * Information about the order in which events are evaluated and how actions are executed.
441 */
442 evaluationMethod?: EvaluationMethod;
443 }
444 export type EvaluationMethod = "BATCH"|"SERIAL"|string;
445 export interface Event {
446 /**
447 * The name of the event.
448 */
449 eventName: EventName;
450 /**
451 * Optional. The Boolean expression that, when TRUE, causes the actions to be performed. If not present, the actions are performed (=TRUE). If the expression result is not a Boolean value, the actions are not performed (=FALSE).
452 */
453 condition?: Condition;
454 /**
455 * The actions to be performed.
456 */
457 actions?: Actions;
458 }
459 export type EventName = string;
460 export type Events = Event[];
461 export interface FirehoseAction {
462 /**
463 * The name of the Kinesis Data Firehose delivery stream where the data is written.
464 */
465 deliveryStreamName: DeliveryStreamName;
466 /**
467 * A character separator that is used to separate records written to the Kinesis Data Firehose delivery stream. Valid values are: '\n' (newline), '\t' (tab), '\r\n' (Windows newline), ',' (comma).
468 */
469 separator?: FirehoseSeparator;
470 }
471 export type FirehoseSeparator = string;
472 export interface Input {
473 /**
474 * Information about the configuration of an input.
475 */
476 inputConfiguration?: InputConfiguration;
477 /**
478 * The definition of the input.
479 */
480 inputDefinition?: InputDefinition;
481 }
482 export type InputArn = string;
483 export interface InputConfiguration {
484 /**
485 * The name of the input.
486 */
487 inputName: InputName;
488 /**
489 * A brief description of the input.
490 */
491 inputDescription?: InputDescription;
492 /**
493 * The ARN of the input.
494 */
495 inputArn: InputArn;
496 /**
497 * The time the input was created.
498 */
499 creationTime: Timestamp;
500 /**
501 * The last time the input was updated.
502 */
503 lastUpdateTime: Timestamp;
504 /**
505 * The status of the input.
506 */
507 status: InputStatus;
508 }
509 export interface InputDefinition {
510 /**
511 * The attributes from the JSON payload that are made available by the input. Inputs are derived from messages sent to the AWS IoT Events system using BatchPutMessage. Each such message contains a JSON payload, and those attributes (and their paired values) specified here are available for use in the condition expressions used by detectors that monitor this input.
512 */
513 attributes: Attributes;
514 }
515 export type InputDescription = string;
516 export type InputName = string;
517 export type InputStatus = "CREATING"|"UPDATING"|"ACTIVE"|"DELETING"|string;
518 export type InputSummaries = InputSummary[];
519 export interface InputSummary {
520 /**
521 * The name of the input.
522 */
523 inputName?: InputName;
524 /**
525 * A brief description of the input.
526 */
527 inputDescription?: InputDescription;
528 /**
529 * The ARN of the input.
530 */
531 inputArn?: InputArn;
532 /**
533 * The time the input was created.
534 */
535 creationTime?: Timestamp;
536 /**
537 * The last time the input was updated.
538 */
539 lastUpdateTime?: Timestamp;
540 /**
541 * The status of the input.
542 */
543 status?: InputStatus;
544 }
545 export interface IotEventsAction {
546 /**
547 * The name of the AWS IoT Events input where the data is sent.
548 */
549 inputName: InputName;
550 }
551 export interface IotTopicPublishAction {
552 /**
553 * The MQTT topic of the message. You can use a string expression that includes variables ($variable.&lt;variable-name&gt;) and input values ($input.&lt;input-name&gt;.&lt;path-to-datum&gt;) as the topic string.
554 */
555 mqttTopic: MQTTTopic;
556 }
557 export type KeyValue = string;
558 export interface LambdaAction {
559 /**
560 * The ARN of the Lambda function that is executed.
561 */
562 functionArn: AmazonResourceName;
563 }
564 export interface ListDetectorModelVersionsRequest {
565 /**
566 * The name of the detector model whose versions are returned.
567 */
568 detectorModelName: DetectorModelName;
569 /**
570 * The token for the next set of results.
571 */
572 nextToken?: NextToken;
573 /**
574 * The maximum number of results to return at one time.
575 */
576 maxResults?: MaxResults;
577 }
578 export interface ListDetectorModelVersionsResponse {
579 /**
580 * Summary information about the detector model versions.
581 */
582 detectorModelVersionSummaries?: DetectorModelVersionSummaries;
583 /**
584 * A token to retrieve the next set of results, or null if there are no additional results.
585 */
586 nextToken?: NextToken;
587 }
588 export interface ListDetectorModelsRequest {
589 /**
590 * The token for the next set of results.
591 */
592 nextToken?: NextToken;
593 /**
594 * The maximum number of results to return at one time.
595 */
596 maxResults?: MaxResults;
597 }
598 export interface ListDetectorModelsResponse {
599 /**
600 * Summary information about the detector models.
601 */
602 detectorModelSummaries?: DetectorModelSummaries;
603 /**
604 * A token to retrieve the next set of results, or null if there are no additional results.
605 */
606 nextToken?: NextToken;
607 }
608 export interface ListInputsRequest {
609 /**
610 * The token for the next set of results.
611 */
612 nextToken?: NextToken;
613 /**
614 * The maximum number of results to return at one time.
615 */
616 maxResults?: MaxResults;
617 }
618 export interface ListInputsResponse {
619 /**
620 * Summary information about the inputs.
621 */
622 inputSummaries?: InputSummaries;
623 /**
624 * A token to retrieve the next set of results, or null if there are no additional results.
625 */
626 nextToken?: NextToken;
627 }
628 export interface ListTagsForResourceRequest {
629 /**
630 * The ARN of the resource.
631 */
632 resourceArn: AmazonResourceName;
633 }
634 export interface ListTagsForResourceResponse {
635 /**
636 * The list of tags assigned to the resource.
637 */
638 tags?: Tags;
639 }
640 export type LoggingEnabled = boolean;
641 export type LoggingLevel = "ERROR"|"INFO"|"DEBUG"|string;
642 export interface LoggingOptions {
643 /**
644 * The ARN of the role that grants permission to AWS IoT Events to perform logging.
645 */
646 roleArn: AmazonResourceName;
647 /**
648 * The logging level.
649 */
650 level: LoggingLevel;
651 /**
652 * If TRUE, logging is enabled for AWS IoT Events.
653 */
654 enabled: LoggingEnabled;
655 /**
656 * Information that identifies those detector models and their detectors (instances) for which the logging level is given.
657 */
658 detectorDebugOptions?: DetectorDebugOptions;
659 }
660 export type MQTTTopic = string;
661 export type MaxResults = number;
662 export type NextToken = string;
663 export interface OnEnterLifecycle {
664 /**
665 * Specifies the actions that are performed when the state is entered and the condition is TRUE.
666 */
667 events?: Events;
668 }
669 export interface OnExitLifecycle {
670 /**
671 * Specifies the actions that are performed when the state is exited and the condition is TRUE.
672 */
673 events?: Events;
674 }
675 export interface OnInputLifecycle {
676 /**
677 * Specifies the actions performed when the condition evaluates to TRUE.
678 */
679 events?: Events;
680 /**
681 * Specifies the actions performed, and the next state entered, when a condition evaluates to TRUE.
682 */
683 transitionEvents?: TransitionEvents;
684 }
685 export interface PutLoggingOptionsRequest {
686 /**
687 * The new values of the AWS IoT Events logging options.
688 */
689 loggingOptions: LoggingOptions;
690 }
691 export type QueueUrl = string;
692 export interface ResetTimerAction {
693 /**
694 * The name of the timer to reset.
695 */
696 timerName: TimerName;
697 }
698 export interface SNSTopicPublishAction {
699 /**
700 * The ARN of the Amazon SNS target where the message is sent.
701 */
702 targetArn: AmazonResourceName;
703 }
704 export type Seconds = number;
705 export interface SetTimerAction {
706 /**
707 * The name of the timer.
708 */
709 timerName: TimerName;
710 /**
711 * The number of seconds until the timer expires. The minimum value is 60 seconds to ensure accuracy.
712 */
713 seconds?: Seconds;
714 /**
715 * The duration of the timer, in seconds. You can use a string expression that includes numbers, variables ($variable.&lt;variable-name&gt;), and input values ($input.&lt;input-name&gt;.&lt;path-to-datum&gt;) as the duration. The range of the duration is 1-31622400 seconds. To ensure accuracy, the minimum duration is 60 seconds. The evaluated result of the duration is rounded down to the nearest whole number.
716 */
717 durationExpression?: VariableValue;
718 }
719 export interface SetVariableAction {
720 /**
721 * The name of the variable.
722 */
723 variableName: VariableName;
724 /**
725 * The new value of the variable.
726 */
727 value: VariableValue;
728 }
729 export interface SqsAction {
730 /**
731 * The URL of the SQS queue where the data is written.
732 */
733 queueUrl: QueueUrl;
734 /**
735 * Set this to TRUE if you want the data to be base-64 encoded before it is written to the queue.
736 */
737 useBase64?: UseBase64;
738 }
739 export interface State {
740 /**
741 * The name of the state.
742 */
743 stateName: StateName;
744 /**
745 * When an input is received and the condition is TRUE, perform the specified actions.
746 */
747 onInput?: OnInputLifecycle;
748 /**
749 * When entering this state, perform these actions if the condition is TRUE.
750 */
751 onEnter?: OnEnterLifecycle;
752 /**
753 * When exiting this state, perform these actions if the specified condition is TRUE.
754 */
755 onExit?: OnExitLifecycle;
756 }
757 export type StateName = string;
758 export type States = State[];
759 export interface Tag {
760 /**
761 * The tag's key.
762 */
763 key: TagKey;
764 /**
765 * The tag's value.
766 */
767 value: TagValue;
768 }
769 export type TagKey = string;
770 export type TagKeys = TagKey[];
771 export interface TagResourceRequest {
772 /**
773 * The ARN of the resource.
774 */
775 resourceArn: AmazonResourceName;
776 /**
777 * The new or modified tags for the resource.
778 */
779 tags: Tags;
780 }
781 export interface TagResourceResponse {
782 }
783 export type TagValue = string;
784 export type Tags = Tag[];
785 export type TimerName = string;
786 export type Timestamp = Date;
787 export interface TransitionEvent {
788 /**
789 * The name of the transition event.
790 */
791 eventName: EventName;
792 /**
793 * Required. A Boolean expression that when TRUE causes the actions to be performed and the nextState to be entered.
794 */
795 condition: Condition;
796 /**
797 * The actions to be performed.
798 */
799 actions?: Actions;
800 /**
801 * The next state to enter.
802 */
803 nextState: StateName;
804 }
805 export type TransitionEvents = TransitionEvent[];
806 export interface UntagResourceRequest {
807 /**
808 * The ARN of the resource.
809 */
810 resourceArn: AmazonResourceName;
811 /**
812 * A list of the keys of the tags to be removed from the resource.
813 */
814 tagKeys: TagKeys;
815 }
816 export interface UntagResourceResponse {
817 }
818 export interface UpdateDetectorModelRequest {
819 /**
820 * The name of the detector model that is updated.
821 */
822 detectorModelName: DetectorModelName;
823 /**
824 * Information that defines how a detector operates.
825 */
826 detectorModelDefinition: DetectorModelDefinition;
827 /**
828 * A brief description of the detector model.
829 */
830 detectorModelDescription?: DetectorModelDescription;
831 /**
832 * The ARN of the role that grants permission to AWS IoT Events to perform its operations.
833 */
834 roleArn: AmazonResourceName;
835 /**
836 * Information about the order in which events are evaluated and how actions are executed.
837 */
838 evaluationMethod?: EvaluationMethod;
839 }
840 export interface UpdateDetectorModelResponse {
841 /**
842 * Information about how the detector model is configured.
843 */
844 detectorModelConfiguration?: DetectorModelConfiguration;
845 }
846 export interface UpdateInputRequest {
847 /**
848 * The name of the input you want to update.
849 */
850 inputName: InputName;
851 /**
852 * A brief description of the input.
853 */
854 inputDescription?: InputDescription;
855 /**
856 * The definition of the input.
857 */
858 inputDefinition: InputDefinition;
859 }
860 export interface UpdateInputResponse {
861 /**
862 * Information about the configuration of the input.
863 */
864 inputConfiguration?: InputConfiguration;
865 }
866 export type UseBase64 = boolean;
867 export type VariableName = string;
868 export type VariableValue = string;
869 /**
870 * A string in YYYY-MM-DD format that represents the latest possible API version that can be used in this service. Specify 'latest' to use the latest possible version.
871 */
872 export type apiVersion = "2018-07-27"|"latest"|string;
873 export interface ClientApiVersions {
874 /**
875 * A string in YYYY-MM-DD format that represents the latest possible API version that can be used in this service. Specify 'latest' to use the latest possible version.
876 */
877 apiVersion?: apiVersion;
878 }
879 export type ClientConfiguration = ServiceConfigurationOptions & ClientApiVersions;
880 /**
881 * Contains interfaces for use with the IoTEvents client.
882 */
883 export import Types = IoTEvents;
884}
885export = IoTEvents;