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.

* @public */ snoozeDuration?: number | undefined; /** *

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:

* *

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.

* @public */ triggerType?: TriggerType | undefined; } /** *

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.

* @public */ eventType?: EventType | undefined; /** *

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:

* * @public */ stateName?: AlarmStateName | undefined; /** *

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:

* * @public */ stateName?: AlarmStateName | 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; } /** * @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:

* * @public */ export interface BatchAlarmActionErrorEntry { /** *

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.

* @public */ errorEntries?: BatchAlarmActionErrorEntry[] | undefined; } /** *

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.

* @public */ messageId: string | undefined; /** *

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.)

* @public */ messageId?: string | undefined; /** *

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.

* @public */ batchDeleteDetectorErrorEntries?: BatchDeleteDetectorErrorEntry[] | undefined; } /** *

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.

* @public */ errorEntries?: BatchAlarmActionErrorEntry[] | undefined; } /** *

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.

* @public */ errorEntries?: BatchAlarmActionErrorEntry[] | undefined; } /** *

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.

* @public */ messageId: string | undefined; /** *

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"\}' *

* @public */ messages: Message[] | undefined; } /** *

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.)

* @public */ messageId?: string | undefined; /** *

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.

* @public */ errorEntries?: BatchAlarmActionErrorEntry[] | undefined; } /** *

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.

* @public */ snoozeDuration: number | undefined; } /** * @public */ export interface BatchSnoozeAlarmRequest { /** *

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.

* @public */ errorEntries?: BatchAlarmActionErrorEntry[] | undefined; } /** *

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.

* @public */ messageId: string | undefined; /** *

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.)

* @public */ messageId?: string | undefined; /** *

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.

* @public */ nextToken?: string | undefined; } /** * @public */ export interface ListDetectorsRequest { /** *

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.

* @public */ nextToken?: string | undefined; }