import type { AlarmStateName, ComparisonOperator, CustomerActionName, ErrorCode, EventType, TriggerType } from "./enums"; /** *
Contains the configuration information of an acknowledge action.
* @public */ export interface AcknowledgeActionConfiguration { /** *The note that you can leave when you acknowledge the alarm.
* @public */ note?: string | undefined; } /** *Information needed to acknowledge the alarm.
* @public */ export interface AcknowledgeAlarmActionRequest { /** *The request ID. Each ID must be unique within each batch.
* @public */ requestId: string | undefined; /** *The name of the alarm model.
* @public */ alarmModelName: string | undefined; /** *The value of the key used as a filter to select only the alarms associated with the * key.
* @public */ keyValue?: string | undefined; /** *The note that you can leave when you acknowledge the alarm.
* @public */ note?: string | undefined; } /** *Contains the configuration information of a disable action.
* @public */ export interface DisableActionConfiguration { /** *The note that you can leave when you disable the alarm.
* @public */ note?: string | undefined; } /** *Contains the configuration information of an enable action.
* @public */ export interface EnableActionConfiguration { /** *The note that you can leave when you enable the alarm.
* @public */ note?: string | undefined; } /** *Contains the configuration information of a reset action.
* @public */ export interface ResetActionConfiguration { /** *The note that you can leave when you reset the alarm.
* @public */ note?: string | undefined; } /** *Contains the configuration information of a snooze action.
* @public */ export interface SnoozeActionConfiguration { /** *The snooze time in seconds. The alarm automatically changes to the NORMAL state after this duration.
The note that you can leave when you snooze the alarm.
* @public */ note?: string | undefined; } /** *Contains information about the action that you can take to respond to the alarm.
* @public */ export interface CustomerAction { /** *The name of the action. The action name can be one of the following values:
*
* SNOOZE - When you snooze the alarm, the alarm state changes to SNOOZE_DISABLED.
* ENABLE - When you enable the alarm, the alarm state changes to NORMAL.
* DISABLE - When you disable the alarm, the alarm state changes to DISABLED.
* ACKNOWLEDGE - When you acknowledge the alarm, the alarm state changes to ACKNOWLEDGED.
* RESET - When you reset the alarm, the alarm state changes to NORMAL.
For more information, see the AlarmState API.
* @public */ actionName?: CustomerActionName | undefined; /** *Contains the configuration information of a snooze action.
* @public */ snoozeActionConfiguration?: SnoozeActionConfiguration | undefined; /** *Contains the configuration information of an enable action.
* @public */ enableActionConfiguration?: EnableActionConfiguration | undefined; /** *Contains the configuration information of a disable action.
* @public */ disableActionConfiguration?: DisableActionConfiguration | undefined; /** *Contains the configuration information of an acknowledge action.
* @public */ acknowledgeActionConfiguration?: AcknowledgeActionConfiguration | undefined; /** *Contains the configuration information of a reset action.
* @public */ resetActionConfiguration?: ResetActionConfiguration | undefined; } /** *Information needed to compare two values with a comparison operator.
* @public */ export interface SimpleRuleEvaluation { /** *The value of the input property, on the left side of the comparison operator.
* @public */ inputPropertyValue?: string | undefined; /** *The comparison operator.
* @public */ operator?: ComparisonOperator | undefined; /** *The threshold value, on the right side of the comparison operator.
* @public */ thresholdValue?: string | undefined; } /** *Information needed to evaluate data.
* @public */ export interface RuleEvaluation { /** *Information needed to compare two values with a comparison operator.
* @public */ simpleRuleEvaluation?: SimpleRuleEvaluation | undefined; } /** *Contains the configuration information of alarm state changes.
* @public */ export interface StateChangeConfiguration { /** *The trigger type. If the value is SNOOZE_TIMEOUT, the snooze duration ends
* and the alarm automatically changes to the NORMAL state.
Contains information about alarm state changes.
* @public */ export interface SystemEvent { /** *The event type. If the value is STATE_CHANGE, the event contains information
* about alarm state changes.
Contains the configuration information of alarm state changes.
* @public */ stateChangeConfiguration?: StateChangeConfiguration | undefined; } /** *Contains information about the current state of the alarm.
* @public */ export interface AlarmState { /** *The name of the alarm state. The state name can be one of the following values:
*
* DISABLED - When the alarm is in the DISABLED state,
* it isn't ready to evaluate data. To enable the alarm,
* you must change the alarm to the NORMAL state.
* NORMAL - When the alarm is in the NORMAL state,
* it's ready to evaluate data.
* ACTIVE - If the alarm is in the ACTIVE state,
* the alarm is invoked.
* ACKNOWLEDGED - When the alarm is in the ACKNOWLEDGED state,
* the alarm was invoked and you acknowledged the alarm.
* SNOOZE_DISABLED - When the alarm is in the SNOOZE_DISABLED state,
* the alarm is disabled for a specified period of time. After the snooze time,
* the alarm automatically changes to the NORMAL state.
* LATCHED - When the alarm is in the LATCHED state,
* the alarm was invoked. However, the data that the alarm is currently evaluating is within the specified range.
* To change the alarm to the NORMAL state, you must acknowledge the alarm.
Information needed to evaluate data.
* @public */ ruleEvaluation?: RuleEvaluation | undefined; /** *Contains information about the action that you can take to respond to the alarm.
* @public */ customerAction?: CustomerAction | undefined; /** *Contains information about alarm state changes.
* @public */ systemEvent?: SystemEvent | undefined; } /** *Contains information about an alarm.
* @public */ export interface Alarm { /** *The name of the alarm model.
* @public */ alarmModelName?: string | undefined; /** *The version of the alarm model.
* @public */ alarmModelVersion?: string | undefined; /** *The value of the key used as a filter to select only the alarms associated with the * key.
* @public */ keyValue?: string | undefined; /** *Contains information about the current state of the alarm.
* @public */ alarmState?: AlarmState | undefined; /** *A non-negative integer that reflects the severity level of the alarm.
* @public */ severity?: number | undefined; /** *The time the alarm was created, in the Unix epoch format.
* @public */ creationTime?: Date | undefined; /** *The time the alarm was last updated, in the Unix epoch format.
* @public */ lastUpdateTime?: Date | undefined; } /** *Contains a summary of an alarm.
* @public */ export interface AlarmSummary { /** *The name of the alarm model.
* @public */ alarmModelName?: string | undefined; /** *The version of the alarm model.
* @public */ alarmModelVersion?: string | undefined; /** *The value of the key used as a filter to select only the alarms associated with the * key.
* @public */ keyValue?: string | undefined; /** *The name of the alarm state. The state name can be one of the following values:
*
* DISABLED - When the alarm is in the DISABLED state,
* it isn't ready to evaluate data. To enable the alarm,
* you must change the alarm to the NORMAL state.
* NORMAL - When the alarm is in the NORMAL state,
* it's ready to evaluate data.
* ACTIVE - If the alarm is in the ACTIVE state,
* the alarm is invoked.
* ACKNOWLEDGED - When the alarm is in the ACKNOWLEDGED state,
* the alarm was invoked and you acknowledged the alarm.
* SNOOZE_DISABLED - When the alarm is in the SNOOZE_DISABLED state,
* the alarm is disabled for a specified period of time. After the snooze time,
* the alarm automatically changes to the NORMAL state.
* LATCHED - When the alarm is in the LATCHED state,
* the alarm was invoked. However, the data that the alarm is currently evaluating is within the specified range.
* To change the alarm to the NORMAL state, you must acknowledge the alarm.
The time the alarm was created, in the Unix epoch format.
* @public */ creationTime?: Date | undefined; /** *The time the alarm was last updated, in the Unix epoch format.
* @public */ lastUpdateTime?: Date | undefined; } /** * @public */ export interface BatchAcknowledgeAlarmRequest { /** *The list of acknowledge action requests. You can specify up to 10 requests per operation.
* @public */ acknowledgeActionRequests: AcknowledgeAlarmActionRequest[] | undefined; } /** *Contains error messages associated with one of the following requests:
** BatchEnableAlarm *
** BatchResetAlarm *
** BatchSnoozeAlarm *
*The request ID. Each ID must be unique within each batch.
* @public */ requestId?: string | undefined; /** *The error code.
* @public */ errorCode?: ErrorCode | undefined; /** *A message that describes the error.
* @public */ errorMessage?: string | undefined; } /** * @public */ export interface BatchAcknowledgeAlarmResponse { /** *A list of errors associated with the request, or null if there are no errors.
* Each error entry contains an entry ID that helps you identify the entry that failed.
Information used to delete the detector model.
* @public */ export interface DeleteDetectorRequest { /** *The ID to assign to the DeleteDetectorRequest. Each "messageId" must be unique within each batch sent.
The name of the detector model that was used to create the detector instance.
* @public */ detectorModelName: string | undefined; /** *The value of the key used to identify the detector.
* @public */ keyValue?: string | undefined; } /** * @public */ export interface BatchDeleteDetectorRequest { /** *The list of one or more detectors to be deleted.
* @public */ detectors: DeleteDetectorRequest[] | undefined; } /** *Contains error messages associated with the deletion request.
* @public */ export interface BatchDeleteDetectorErrorEntry { /** *The ID of the message that caused the error. (See the value of the "messageId" in the detectors object of the DeleteDetectorRequest.)
The error code.
* @public */ errorCode?: ErrorCode | undefined; /** *A message that describes the error.
* @public */ errorMessage?: string | undefined; } /** * @public */ export interface BatchDeleteDetectorResponse { /** *A list of errors associated with the request, or an empty array ([]) if there are no errors. Each error entry contains a messageId that helps you identify the entry that failed.
Information used to disable the alarm.
* @public */ export interface DisableAlarmActionRequest { /** *The request ID. Each ID must be unique within each batch.
* @public */ requestId: string | undefined; /** *The name of the alarm model.
* @public */ alarmModelName: string | undefined; /** *The value of the key used as a filter to select only the alarms associated with the * key.
* @public */ keyValue?: string | undefined; /** *The note that you can leave when you disable the alarm.
* @public */ note?: string | undefined; } /** * @public */ export interface BatchDisableAlarmRequest { /** *The list of disable action requests. You can specify up to 10 requests per operation.
* @public */ disableActionRequests: DisableAlarmActionRequest[] | undefined; } /** * @public */ export interface BatchDisableAlarmResponse { /** *A list of errors associated with the request, or null if there are no errors.
* Each error entry contains an entry ID that helps you identify the entry that failed.
Information needed to enable the alarm.
* @public */ export interface EnableAlarmActionRequest { /** *The request ID. Each ID must be unique within each batch.
* @public */ requestId: string | undefined; /** *The name of the alarm model.
* @public */ alarmModelName: string | undefined; /** *The value of the key used as a filter to select only the alarms associated with the * key.
* @public */ keyValue?: string | undefined; /** *The note that you can leave when you enable the alarm.
* @public */ note?: string | undefined; } /** * @public */ export interface BatchEnableAlarmRequest { /** *The list of enable action requests. You can specify up to 10 requests per operation.
* @public */ enableActionRequests: EnableAlarmActionRequest[] | undefined; } /** * @public */ export interface BatchEnableAlarmResponse { /** *A list of errors associated with the request, or null if there are no errors.
* Each error entry contains an entry ID that helps you identify the entry that failed.
Contains information about a timestamp.
* @public */ export interface TimestampValue { /** *The value of the timestamp, in the Unix epoch format.
* @public */ timeInMillis?: number | undefined; } /** *Information about a message.
* @public */ export interface Message { /** *The ID to assign to the message. Within each batch sent, each "messageId"
* must be unique.
The name of the input into which the message payload is transformed.
* @public */ inputName: string | undefined; /** *The payload of the message. This can be a JSON string or a Base-64-encoded string * representing binary data (in which case you must decode it).
* @public */ payload: Uint8Array | undefined; /** *The timestamp associated with the message.
* @public */ timestamp?: TimestampValue | undefined; } /** * @public */ export interface BatchPutMessageRequest { /** *The list of messages to send. Each message has the following format: '\{ "messageId":
* "string", "inputName": "string", "payload": "string"\}'
*
Contains information about the errors encountered.
* @public */ export interface BatchPutMessageErrorEntry { /** *The ID of the message that caused the error. (See the value corresponding to the
* "messageId" key in the "message" object.)
The error code.
* @public */ errorCode?: ErrorCode | undefined; /** *A message that describes the error.
* @public */ errorMessage?: string | undefined; } /** * @public */ export interface BatchPutMessageResponse { /** *A list of any errors encountered when sending the messages.
* @public */ BatchPutMessageErrorEntries?: BatchPutMessageErrorEntry[] | undefined; } /** *Information needed to reset the alarm.
* @public */ export interface ResetAlarmActionRequest { /** *The request ID. Each ID must be unique within each batch.
* @public */ requestId: string | undefined; /** *The name of the alarm model.
* @public */ alarmModelName: string | undefined; /** *The value of the key used as a filter to select only the alarms associated with the * key.
* @public */ keyValue?: string | undefined; /** *The note that you can leave when you reset the alarm.
* @public */ note?: string | undefined; } /** * @public */ export interface BatchResetAlarmRequest { /** *The list of reset action requests. You can specify up to 10 requests per operation.
* @public */ resetActionRequests: ResetAlarmActionRequest[] | undefined; } /** * @public */ export interface BatchResetAlarmResponse { /** *A list of errors associated with the request, or null if there are no errors.
* Each error entry contains an entry ID that helps you identify the entry that failed.
Information needed to snooze the alarm.
* @public */ export interface SnoozeAlarmActionRequest { /** *The request ID. Each ID must be unique within each batch.
* @public */ requestId: string | undefined; /** *The name of the alarm model.
* @public */ alarmModelName: string | undefined; /** *The value of the key used as a filter to select only the alarms associated with the * key.
* @public */ keyValue?: string | undefined; /** *The note that you can leave when you snooze the alarm.
* @public */ note?: string | undefined; /** *The snooze time in seconds. The alarm automatically changes to the NORMAL state after this duration.
The list of snooze action requests. You can specify up to 10 requests per operation.
* @public */ snoozeActionRequests: SnoozeAlarmActionRequest[] | undefined; } /** * @public */ export interface BatchSnoozeAlarmResponse { /** *A list of errors associated with the request, or null if there are no errors.
* Each error entry contains an entry ID that helps you identify the entry that failed.
The new setting of a timer.
* @public */ export interface TimerDefinition { /** *The name of the timer.
* @public */ name: string | undefined; /** *The new setting of the timer (the number of seconds before the timer elapses).
* @public */ seconds: number | undefined; } /** *The new value of the variable.
* @public */ export interface VariableDefinition { /** *The name of the variable.
* @public */ name: string | undefined; /** *The new value of the variable.
* @public */ value: string | undefined; } /** *The new state, variable values, and timer settings of the detector (instance).
* @public */ export interface DetectorStateDefinition { /** *The name of the new state of the detector (instance).
* @public */ stateName: string | undefined; /** *The new values of the detector's variables. Any variable whose value isn't specified is * cleared.
* @public */ variables: VariableDefinition[] | undefined; /** *The new values of the detector's timers. Any timer whose value isn't specified is cleared, * and its timeout event won't occur.
* @public */ timers: TimerDefinition[] | undefined; } /** *Information used to update the detector (instance).
* @public */ export interface UpdateDetectorRequest { /** *The ID to assign to the detector update "message". Each
* "messageId" must be unique within each batch sent.
The name of the detector model that created the detectors (instances).
* @public */ detectorModelName: string | undefined; /** *The value of the input key attribute (identifying the device or system) that caused the * creation of this detector (instance).
* @public */ keyValue?: string | undefined; /** *The new state, variable values, and timer settings of the detector (instance).
* @public */ state: DetectorStateDefinition | undefined; } /** * @public */ export interface BatchUpdateDetectorRequest { /** *The list of detectors (instances) to update, along with the values to update.
* @public */ detectors: UpdateDetectorRequest[] | undefined; } /** *Information about the error that occurred when attempting to update a detector.
* @public */ export interface BatchUpdateDetectorErrorEntry { /** *The "messageId" of the update request that caused the error. (The value of
* the "messageId" in the update request "Detector" object.)
The error code.
* @public */ errorCode?: ErrorCode | undefined; /** *A message that describes the error.
* @public */ errorMessage?: string | undefined; } /** * @public */ export interface BatchUpdateDetectorResponse { /** *A list of those detector updates that resulted in errors. (If an error is listed here, the * specific update did not occur.)
* @public */ batchUpdateDetectorErrorEntries?: BatchUpdateDetectorErrorEntry[] | undefined; } /** * @public */ export interface DescribeAlarmRequest { /** *The name of the alarm model.
* @public */ alarmModelName: string | undefined; /** *The value of the key used as a filter to select only the alarms associated with the * key.
* @public */ keyValue?: string | undefined; } /** * @public */ export interface DescribeAlarmResponse { /** *Contains information about an alarm.
* @public */ alarm?: Alarm | undefined; } /** * @public */ export interface DescribeDetectorRequest { /** *The name of the detector model whose detectors (instances) you want information * about.
* @public */ detectorModelName: string | undefined; /** *A filter used to limit results to detectors (instances) created because of the given key * ID.
* @public */ keyValue?: string | undefined; } /** *The current state of a timer.
* @public */ export interface Timer { /** *The name of the timer.
* @public */ name: string | undefined; /** *The expiration time for the timer.
* @public */ timestamp: Date | undefined; } /** *The current state of the variable.
* @public */ export interface Variable { /** *The name of the variable.
* @public */ name: string | undefined; /** *The current value of the variable.
* @public */ value: string | undefined; } /** *Information about the current state of the detector instance.
* @public */ export interface DetectorState { /** *The name of the state.
* @public */ stateName: string | undefined; /** *The current values of the detector's variables.
* @public */ variables: Variable[] | undefined; /** *The current state of the detector's timers.
* @public */ timers: Timer[] | undefined; } /** *Information about the detector (instance).
* @public */ export interface Detector { /** *The name of the detector model that created this detector (instance).
* @public */ detectorModelName?: string | undefined; /** *The value of the key (identifying the device or system) that caused the creation of this * detector (instance).
* @public */ keyValue?: string | undefined; /** *The version of the detector model that created this detector (instance).
* @public */ detectorModelVersion?: string | undefined; /** *The current state of the detector (instance).
* @public */ state?: DetectorState | undefined; /** *The time the detector (instance) was created.
* @public */ creationTime?: Date | undefined; /** *The time the detector (instance) was last updated.
* @public */ lastUpdateTime?: Date | undefined; } /** * @public */ export interface DescribeDetectorResponse { /** *Information about the detector (instance).
* @public */ detector?: Detector | undefined; } /** *Information about the detector state.
* @public */ export interface DetectorStateSummary { /** *The name of the state.
* @public */ stateName?: string | undefined; } /** *Information about the detector (instance).
* @public */ export interface DetectorSummary { /** *The name of the detector model that created this detector (instance).
* @public */ detectorModelName?: string | undefined; /** *The value of the key (identifying the device or system) that caused the creation of this * detector (instance).
* @public */ keyValue?: string | undefined; /** *The version of the detector model that created this detector (instance).
* @public */ detectorModelVersion?: string | undefined; /** *The current state of the detector (instance).
* @public */ state?: DetectorStateSummary | undefined; /** *The time the detector (instance) was created.
* @public */ creationTime?: Date | undefined; /** *The time the detector (instance) was last updated.
* @public */ lastUpdateTime?: Date | undefined; } /** * @public */ export interface ListAlarmsRequest { /** *The name of the alarm model.
* @public */ alarmModelName: string | undefined; /** *The token that you can use to return the next set of results.
* @public */ nextToken?: string | undefined; /** *The maximum number of results to be returned per request.
* @public */ maxResults?: number | undefined; } /** * @public */ export interface ListAlarmsResponse { /** *A list that summarizes each alarm.
* @public */ alarmSummaries?: AlarmSummary[] | undefined; /** *The token that you can use to return the next set of results,
* or null if there are no more results.
The name of the detector model whose detectors (instances) are listed.
* @public */ detectorModelName: string | undefined; /** *A filter that limits results to those detectors (instances) in the given state.
* @public */ stateName?: string | undefined; /** *The token that you can use to return the next set of results.
* @public */ nextToken?: string | undefined; /** *The maximum number of results to be returned per request.
* @public */ maxResults?: number | undefined; } /** * @public */ export interface ListDetectorsResponse { /** *A list of summary information about the detectors (instances).
* @public */ detectorSummaries?: DetectorSummary[] | undefined; /** *The token that you can use to return the next set of results,
* or null if there are no more results.