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. Also, 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. Also, 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 an AWS Lambda function, passing in information about the detector model instance and the event which triggered the action.
171 */
172 lambda?: LambdaAction;
173 /**
174 * Sends an IoT Events input, passing in information about the detector model instance and the event which triggered the action.
175 */
176 iotEvents?: IotEventsAction;
177 /**
178 * Sends information about the detector model instance and the event which triggered the action to an Amazon SQS queue.
179 */
180 sqs?: SqsAction;
181 /**
182 * Sends information about the detector model instance and the event which triggered the action to a 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 the AWS IoT Events system (BatchPutMessage). Each such message contains a JSON payload, and 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 to specify the attribute-value pair in the message payload of each input 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 * When set to SERIAL, variables are updated and event conditions evaluated in the order that the events are defined. When set to BATCH, variables are updated and events performed only after all event conditions are evaluated.
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 to specify the attribute-value pair in the message payload of each input that is used to identify the device associated with the input.
373 */
374 key?: AttributeJsonPath;
375 /**
376 * When set to SERIAL, variables are updated and event conditions evaluated in the order that the events are defined. When set to BATCH, variables are updated and events performed only after all event conditions are evaluated.
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 * When set to SERIAL, variables are updated and event conditions evaluated in the order that the events are defined. When set to BATCH, variables are updated and events performed only after all event conditions are evaluated.
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.
554 */
555 mqttTopic: MQTTTopic;
556 }
557 export type KeyValue = string;
558 export interface LambdaAction {
559 /**
560 * The ARN of the AWS Lambda function which 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 export interface SetVariableAction {
716 /**
717 * The name of the variable.
718 */
719 variableName: VariableName;
720 /**
721 * The new value of the variable.
722 */
723 value: VariableValue;
724 }
725 export interface SqsAction {
726 /**
727 * The URL of the Amazon SQS queue where the data is written.
728 */
729 queueUrl: QueueUrl;
730 /**
731 * Set this to TRUE if you want the data to be Base-64 encoded before it is written to the queue. Otherwise, set this to FALSE.
732 */
733 useBase64?: UseBase64;
734 }
735 export interface State {
736 /**
737 * The name of the state.
738 */
739 stateName: StateName;
740 /**
741 * When an input is received and the "condition" is TRUE, perform the specified "actions".
742 */
743 onInput?: OnInputLifecycle;
744 /**
745 * When entering this state, perform these "actions" if the "condition" is TRUE.
746 */
747 onEnter?: OnEnterLifecycle;
748 /**
749 * When exiting this state, perform these "actions" if the specified "condition" is TRUE.
750 */
751 onExit?: OnExitLifecycle;
752 }
753 export type StateName = string;
754 export type States = State[];
755 export interface Tag {
756 /**
757 * The tag's key.
758 */
759 key: TagKey;
760 /**
761 * The tag's value.
762 */
763 value: TagValue;
764 }
765 export type TagKey = string;
766 export type TagKeys = TagKey[];
767 export interface TagResourceRequest {
768 /**
769 * The ARN of the resource.
770 */
771 resourceArn: AmazonResourceName;
772 /**
773 * The new or modified tags for the resource.
774 */
775 tags: Tags;
776 }
777 export interface TagResourceResponse {
778 }
779 export type TagValue = string;
780 export type Tags = Tag[];
781 export type TimerName = string;
782 export type Timestamp = Date;
783 export interface TransitionEvent {
784 /**
785 * The name of the transition event.
786 */
787 eventName: EventName;
788 /**
789 * [Required] A Boolean expression that when TRUE causes the actions to be performed and the "nextState" to be entered.
790 */
791 condition: Condition;
792 /**
793 * The actions to be performed.
794 */
795 actions?: Actions;
796 /**
797 * The next state to enter.
798 */
799 nextState: StateName;
800 }
801 export type TransitionEvents = TransitionEvent[];
802 export interface UntagResourceRequest {
803 /**
804 * The ARN of the resource.
805 */
806 resourceArn: AmazonResourceName;
807 /**
808 * A list of the keys of the tags to be removed from the resource.
809 */
810 tagKeys: TagKeys;
811 }
812 export interface UntagResourceResponse {
813 }
814 export interface UpdateDetectorModelRequest {
815 /**
816 * The name of the detector model that is updated.
817 */
818 detectorModelName: DetectorModelName;
819 /**
820 * Information that defines how a detector operates.
821 */
822 detectorModelDefinition: DetectorModelDefinition;
823 /**
824 * A brief description of the detector model.
825 */
826 detectorModelDescription?: DetectorModelDescription;
827 /**
828 * The ARN of the role that grants permission to AWS IoT Events to perform its operations.
829 */
830 roleArn: AmazonResourceName;
831 /**
832 * When set to SERIAL, variables are updated and event conditions evaluated in the order that the events are defined. When set to BATCH, variables are updated and events performed only after all event conditions are evaluated.
833 */
834 evaluationMethod?: EvaluationMethod;
835 }
836 export interface UpdateDetectorModelResponse {
837 /**
838 * Information about how the detector model is configured.
839 */
840 detectorModelConfiguration?: DetectorModelConfiguration;
841 }
842 export interface UpdateInputRequest {
843 /**
844 * The name of the input you want to update.
845 */
846 inputName: InputName;
847 /**
848 * A brief description of the input.
849 */
850 inputDescription?: InputDescription;
851 /**
852 * The definition of the input.
853 */
854 inputDefinition: InputDefinition;
855 }
856 export interface UpdateInputResponse {
857 /**
858 * Information about the configuration of the input.
859 */
860 inputConfiguration?: InputConfiguration;
861 }
862 export type UseBase64 = boolean;
863 export type VariableName = string;
864 export type VariableValue = string;
865 /**
866 * 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.
867 */
868 export type apiVersion = "2018-07-27"|"latest"|string;
869 export interface ClientApiVersions {
870 /**
871 * 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.
872 */
873 apiVersion?: apiVersion;
874 }
875 export type ClientConfiguration = ServiceConfigurationOptions & ClientApiVersions;
876 /**
877 * Contains interfaces for use with the IoTEvents client.
878 */
879 export import Types = IoTEvents;
880}
881export = IoTEvents;