UNPKG

67.2 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 IoTThingsGraph extends Service {
9 /**
10 * Constructs a service object. This object has one method for each API operation.
11 */
12 constructor(options?: IoTThingsGraph.Types.ClientConfiguration)
13 config: Config & IoTThingsGraph.Types.ClientConfiguration;
14 /**
15 * Associates a device with a concrete thing that is in the user's registry. A thing can be associated with only one device at a time. If you associate a thing with a new device id, its previous association will be removed.
16 */
17 associateEntityToThing(params: IoTThingsGraph.Types.AssociateEntityToThingRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.AssociateEntityToThingResponse) => void): Request<IoTThingsGraph.Types.AssociateEntityToThingResponse, AWSError>;
18 /**
19 * Associates a device with a concrete thing that is in the user's registry. A thing can be associated with only one device at a time. If you associate a thing with a new device id, its previous association will be removed.
20 */
21 associateEntityToThing(callback?: (err: AWSError, data: IoTThingsGraph.Types.AssociateEntityToThingResponse) => void): Request<IoTThingsGraph.Types.AssociateEntityToThingResponse, AWSError>;
22 /**
23 * Creates a workflow template. Workflows can be created only in the user's namespace. (The public namespace contains only entities.) The workflow can contain only entities in the specified namespace. The workflow is validated against the entities in the latest version of the user's namespace unless another namespace version is specified in the request.
24 */
25 createFlowTemplate(params: IoTThingsGraph.Types.CreateFlowTemplateRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.CreateFlowTemplateResponse) => void): Request<IoTThingsGraph.Types.CreateFlowTemplateResponse, AWSError>;
26 /**
27 * Creates a workflow template. Workflows can be created only in the user's namespace. (The public namespace contains only entities.) The workflow can contain only entities in the specified namespace. The workflow is validated against the entities in the latest version of the user's namespace unless another namespace version is specified in the request.
28 */
29 createFlowTemplate(callback?: (err: AWSError, data: IoTThingsGraph.Types.CreateFlowTemplateResponse) => void): Request<IoTThingsGraph.Types.CreateFlowTemplateResponse, AWSError>;
30 /**
31 * Creates a system instance. This action validates the system instance, prepares the deployment-related resources. For Greengrass deployments, it updates the Greengrass group that is specified by the greengrassGroupName parameter. It also adds a file to the S3 bucket specified by the s3BucketName parameter. You need to call DeploySystemInstance after running this action. For Greengrass deployments, since this action modifies and adds resources to a Greengrass group and an S3 bucket on the caller's behalf, the calling identity must have write permissions to both the specified Greengrass group and S3 bucket. Otherwise, the call will fail with an authorization error. For cloud deployments, this action requires a flowActionsRoleArn value. This is an IAM role that has permissions to access AWS services, such as AWS Lambda and AWS IoT, that the flow uses when it executes. If the definition document doesn't specify a version of the user's namespace, the latest version will be used by default.
32 */
33 createSystemInstance(params: IoTThingsGraph.Types.CreateSystemInstanceRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.CreateSystemInstanceResponse) => void): Request<IoTThingsGraph.Types.CreateSystemInstanceResponse, AWSError>;
34 /**
35 * Creates a system instance. This action validates the system instance, prepares the deployment-related resources. For Greengrass deployments, it updates the Greengrass group that is specified by the greengrassGroupName parameter. It also adds a file to the S3 bucket specified by the s3BucketName parameter. You need to call DeploySystemInstance after running this action. For Greengrass deployments, since this action modifies and adds resources to a Greengrass group and an S3 bucket on the caller's behalf, the calling identity must have write permissions to both the specified Greengrass group and S3 bucket. Otherwise, the call will fail with an authorization error. For cloud deployments, this action requires a flowActionsRoleArn value. This is an IAM role that has permissions to access AWS services, such as AWS Lambda and AWS IoT, that the flow uses when it executes. If the definition document doesn't specify a version of the user's namespace, the latest version will be used by default.
36 */
37 createSystemInstance(callback?: (err: AWSError, data: IoTThingsGraph.Types.CreateSystemInstanceResponse) => void): Request<IoTThingsGraph.Types.CreateSystemInstanceResponse, AWSError>;
38 /**
39 * Creates a system. The system is validated against the entities in the latest version of the user's namespace unless another namespace version is specified in the request.
40 */
41 createSystemTemplate(params: IoTThingsGraph.Types.CreateSystemTemplateRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.CreateSystemTemplateResponse) => void): Request<IoTThingsGraph.Types.CreateSystemTemplateResponse, AWSError>;
42 /**
43 * Creates a system. The system is validated against the entities in the latest version of the user's namespace unless another namespace version is specified in the request.
44 */
45 createSystemTemplate(callback?: (err: AWSError, data: IoTThingsGraph.Types.CreateSystemTemplateResponse) => void): Request<IoTThingsGraph.Types.CreateSystemTemplateResponse, AWSError>;
46 /**
47 * Deletes a workflow. Any new system or deployment that contains this workflow will fail to update or deploy. Existing deployments that contain the workflow will continue to run (since they use a snapshot of the workflow taken at the time of deployment).
48 */
49 deleteFlowTemplate(params: IoTThingsGraph.Types.DeleteFlowTemplateRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.DeleteFlowTemplateResponse) => void): Request<IoTThingsGraph.Types.DeleteFlowTemplateResponse, AWSError>;
50 /**
51 * Deletes a workflow. Any new system or deployment that contains this workflow will fail to update or deploy. Existing deployments that contain the workflow will continue to run (since they use a snapshot of the workflow taken at the time of deployment).
52 */
53 deleteFlowTemplate(callback?: (err: AWSError, data: IoTThingsGraph.Types.DeleteFlowTemplateResponse) => void): Request<IoTThingsGraph.Types.DeleteFlowTemplateResponse, AWSError>;
54 /**
55 * Deletes the specified namespace. This action deletes all of the entities in the namespace. Delete the systems and flows that use entities in the namespace before performing this action.
56 */
57 deleteNamespace(params: IoTThingsGraph.Types.DeleteNamespaceRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.DeleteNamespaceResponse) => void): Request<IoTThingsGraph.Types.DeleteNamespaceResponse, AWSError>;
58 /**
59 * Deletes the specified namespace. This action deletes all of the entities in the namespace. Delete the systems and flows that use entities in the namespace before performing this action.
60 */
61 deleteNamespace(callback?: (err: AWSError, data: IoTThingsGraph.Types.DeleteNamespaceResponse) => void): Request<IoTThingsGraph.Types.DeleteNamespaceResponse, AWSError>;
62 /**
63 * Deletes a system instance. Only system instances that have never been deployed, or that have been undeployed can be deleted. Users can create a new system instance that has the same ID as a deleted system instance.
64 */
65 deleteSystemInstance(params: IoTThingsGraph.Types.DeleteSystemInstanceRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.DeleteSystemInstanceResponse) => void): Request<IoTThingsGraph.Types.DeleteSystemInstanceResponse, AWSError>;
66 /**
67 * Deletes a system instance. Only system instances that have never been deployed, or that have been undeployed can be deleted. Users can create a new system instance that has the same ID as a deleted system instance.
68 */
69 deleteSystemInstance(callback?: (err: AWSError, data: IoTThingsGraph.Types.DeleteSystemInstanceResponse) => void): Request<IoTThingsGraph.Types.DeleteSystemInstanceResponse, AWSError>;
70 /**
71 * Deletes a system. New deployments can't contain the system after its deletion. Existing deployments that contain the system will continue to work because they use a snapshot of the system that is taken when it is deployed.
72 */
73 deleteSystemTemplate(params: IoTThingsGraph.Types.DeleteSystemTemplateRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.DeleteSystemTemplateResponse) => void): Request<IoTThingsGraph.Types.DeleteSystemTemplateResponse, AWSError>;
74 /**
75 * Deletes a system. New deployments can't contain the system after its deletion. Existing deployments that contain the system will continue to work because they use a snapshot of the system that is taken when it is deployed.
76 */
77 deleteSystemTemplate(callback?: (err: AWSError, data: IoTThingsGraph.Types.DeleteSystemTemplateResponse) => void): Request<IoTThingsGraph.Types.DeleteSystemTemplateResponse, AWSError>;
78 /**
79 * Greengrass and Cloud Deployments Deploys the system instance to the target specified in CreateSystemInstance. Greengrass Deployments If the system or any workflows and entities have been updated before this action is called, then the deployment will create a new Amazon Simple Storage Service resource file and then deploy it. Since this action creates a Greengrass deployment on the caller's behalf, the calling identity must have write permissions to the specified Greengrass group. Otherwise, the call will fail with an authorization error. For information about the artifacts that get added to your Greengrass core device when you use this API, see AWS IoT Things Graph and AWS IoT Greengrass.
80 */
81 deploySystemInstance(params: IoTThingsGraph.Types.DeploySystemInstanceRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.DeploySystemInstanceResponse) => void): Request<IoTThingsGraph.Types.DeploySystemInstanceResponse, AWSError>;
82 /**
83 * Greengrass and Cloud Deployments Deploys the system instance to the target specified in CreateSystemInstance. Greengrass Deployments If the system or any workflows and entities have been updated before this action is called, then the deployment will create a new Amazon Simple Storage Service resource file and then deploy it. Since this action creates a Greengrass deployment on the caller's behalf, the calling identity must have write permissions to the specified Greengrass group. Otherwise, the call will fail with an authorization error. For information about the artifacts that get added to your Greengrass core device when you use this API, see AWS IoT Things Graph and AWS IoT Greengrass.
84 */
85 deploySystemInstance(callback?: (err: AWSError, data: IoTThingsGraph.Types.DeploySystemInstanceResponse) => void): Request<IoTThingsGraph.Types.DeploySystemInstanceResponse, AWSError>;
86 /**
87 * Deprecates the specified workflow. This action marks the workflow for deletion. Deprecated flows can't be deployed, but existing deployments will continue to run.
88 */
89 deprecateFlowTemplate(params: IoTThingsGraph.Types.DeprecateFlowTemplateRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.DeprecateFlowTemplateResponse) => void): Request<IoTThingsGraph.Types.DeprecateFlowTemplateResponse, AWSError>;
90 /**
91 * Deprecates the specified workflow. This action marks the workflow for deletion. Deprecated flows can't be deployed, but existing deployments will continue to run.
92 */
93 deprecateFlowTemplate(callback?: (err: AWSError, data: IoTThingsGraph.Types.DeprecateFlowTemplateResponse) => void): Request<IoTThingsGraph.Types.DeprecateFlowTemplateResponse, AWSError>;
94 /**
95 * Deprecates the specified system.
96 */
97 deprecateSystemTemplate(params: IoTThingsGraph.Types.DeprecateSystemTemplateRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.DeprecateSystemTemplateResponse) => void): Request<IoTThingsGraph.Types.DeprecateSystemTemplateResponse, AWSError>;
98 /**
99 * Deprecates the specified system.
100 */
101 deprecateSystemTemplate(callback?: (err: AWSError, data: IoTThingsGraph.Types.DeprecateSystemTemplateResponse) => void): Request<IoTThingsGraph.Types.DeprecateSystemTemplateResponse, AWSError>;
102 /**
103 * Gets the latest version of the user's namespace and the public version that it is tracking.
104 */
105 describeNamespace(params: IoTThingsGraph.Types.DescribeNamespaceRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.DescribeNamespaceResponse) => void): Request<IoTThingsGraph.Types.DescribeNamespaceResponse, AWSError>;
106 /**
107 * Gets the latest version of the user's namespace and the public version that it is tracking.
108 */
109 describeNamespace(callback?: (err: AWSError, data: IoTThingsGraph.Types.DescribeNamespaceResponse) => void): Request<IoTThingsGraph.Types.DescribeNamespaceResponse, AWSError>;
110 /**
111 * Dissociates a device entity from a concrete thing. The action takes only the type of the entity that you need to dissociate because only one entity of a particular type can be associated with a thing.
112 */
113 dissociateEntityFromThing(params: IoTThingsGraph.Types.DissociateEntityFromThingRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.DissociateEntityFromThingResponse) => void): Request<IoTThingsGraph.Types.DissociateEntityFromThingResponse, AWSError>;
114 /**
115 * Dissociates a device entity from a concrete thing. The action takes only the type of the entity that you need to dissociate because only one entity of a particular type can be associated with a thing.
116 */
117 dissociateEntityFromThing(callback?: (err: AWSError, data: IoTThingsGraph.Types.DissociateEntityFromThingResponse) => void): Request<IoTThingsGraph.Types.DissociateEntityFromThingResponse, AWSError>;
118 /**
119 * Gets definitions of the specified entities. Uses the latest version of the user's namespace by default. This API returns the following TDM entities. Properties States Events Actions Capabilities Mappings Devices Device Models Services This action doesn't return definitions for systems, flows, and deployments.
120 */
121 getEntities(params: IoTThingsGraph.Types.GetEntitiesRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.GetEntitiesResponse) => void): Request<IoTThingsGraph.Types.GetEntitiesResponse, AWSError>;
122 /**
123 * Gets definitions of the specified entities. Uses the latest version of the user's namespace by default. This API returns the following TDM entities. Properties States Events Actions Capabilities Mappings Devices Device Models Services This action doesn't return definitions for systems, flows, and deployments.
124 */
125 getEntities(callback?: (err: AWSError, data: IoTThingsGraph.Types.GetEntitiesResponse) => void): Request<IoTThingsGraph.Types.GetEntitiesResponse, AWSError>;
126 /**
127 * Gets the latest version of the DefinitionDocument and FlowTemplateSummary for the specified workflow.
128 */
129 getFlowTemplate(params: IoTThingsGraph.Types.GetFlowTemplateRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.GetFlowTemplateResponse) => void): Request<IoTThingsGraph.Types.GetFlowTemplateResponse, AWSError>;
130 /**
131 * Gets the latest version of the DefinitionDocument and FlowTemplateSummary for the specified workflow.
132 */
133 getFlowTemplate(callback?: (err: AWSError, data: IoTThingsGraph.Types.GetFlowTemplateResponse) => void): Request<IoTThingsGraph.Types.GetFlowTemplateResponse, AWSError>;
134 /**
135 * Gets revisions of the specified workflow. Only the last 100 revisions are stored. If the workflow has been deprecated, this action will return revisions that occurred before the deprecation. This action won't work for workflows that have been deleted.
136 */
137 getFlowTemplateRevisions(params: IoTThingsGraph.Types.GetFlowTemplateRevisionsRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.GetFlowTemplateRevisionsResponse) => void): Request<IoTThingsGraph.Types.GetFlowTemplateRevisionsResponse, AWSError>;
138 /**
139 * Gets revisions of the specified workflow. Only the last 100 revisions are stored. If the workflow has been deprecated, this action will return revisions that occurred before the deprecation. This action won't work for workflows that have been deleted.
140 */
141 getFlowTemplateRevisions(callback?: (err: AWSError, data: IoTThingsGraph.Types.GetFlowTemplateRevisionsResponse) => void): Request<IoTThingsGraph.Types.GetFlowTemplateRevisionsResponse, AWSError>;
142 /**
143 * Gets the status of a namespace deletion task.
144 */
145 getNamespaceDeletionStatus(params: IoTThingsGraph.Types.GetNamespaceDeletionStatusRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.GetNamespaceDeletionStatusResponse) => void): Request<IoTThingsGraph.Types.GetNamespaceDeletionStatusResponse, AWSError>;
146 /**
147 * Gets the status of a namespace deletion task.
148 */
149 getNamespaceDeletionStatus(callback?: (err: AWSError, data: IoTThingsGraph.Types.GetNamespaceDeletionStatusResponse) => void): Request<IoTThingsGraph.Types.GetNamespaceDeletionStatusResponse, AWSError>;
150 /**
151 * Gets a system instance.
152 */
153 getSystemInstance(params: IoTThingsGraph.Types.GetSystemInstanceRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.GetSystemInstanceResponse) => void): Request<IoTThingsGraph.Types.GetSystemInstanceResponse, AWSError>;
154 /**
155 * Gets a system instance.
156 */
157 getSystemInstance(callback?: (err: AWSError, data: IoTThingsGraph.Types.GetSystemInstanceResponse) => void): Request<IoTThingsGraph.Types.GetSystemInstanceResponse, AWSError>;
158 /**
159 * Gets a system.
160 */
161 getSystemTemplate(params: IoTThingsGraph.Types.GetSystemTemplateRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.GetSystemTemplateResponse) => void): Request<IoTThingsGraph.Types.GetSystemTemplateResponse, AWSError>;
162 /**
163 * Gets a system.
164 */
165 getSystemTemplate(callback?: (err: AWSError, data: IoTThingsGraph.Types.GetSystemTemplateResponse) => void): Request<IoTThingsGraph.Types.GetSystemTemplateResponse, AWSError>;
166 /**
167 * Gets revisions made to the specified system template. Only the previous 100 revisions are stored. If the system has been deprecated, this action will return the revisions that occurred before its deprecation. This action won't work with systems that have been deleted.
168 */
169 getSystemTemplateRevisions(params: IoTThingsGraph.Types.GetSystemTemplateRevisionsRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.GetSystemTemplateRevisionsResponse) => void): Request<IoTThingsGraph.Types.GetSystemTemplateRevisionsResponse, AWSError>;
170 /**
171 * Gets revisions made to the specified system template. Only the previous 100 revisions are stored. If the system has been deprecated, this action will return the revisions that occurred before its deprecation. This action won't work with systems that have been deleted.
172 */
173 getSystemTemplateRevisions(callback?: (err: AWSError, data: IoTThingsGraph.Types.GetSystemTemplateRevisionsResponse) => void): Request<IoTThingsGraph.Types.GetSystemTemplateRevisionsResponse, AWSError>;
174 /**
175 * Gets the status of the specified upload.
176 */
177 getUploadStatus(params: IoTThingsGraph.Types.GetUploadStatusRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.GetUploadStatusResponse) => void): Request<IoTThingsGraph.Types.GetUploadStatusResponse, AWSError>;
178 /**
179 * Gets the status of the specified upload.
180 */
181 getUploadStatus(callback?: (err: AWSError, data: IoTThingsGraph.Types.GetUploadStatusResponse) => void): Request<IoTThingsGraph.Types.GetUploadStatusResponse, AWSError>;
182 /**
183 * Returns a list of objects that contain information about events in a flow execution.
184 */
185 listFlowExecutionMessages(params: IoTThingsGraph.Types.ListFlowExecutionMessagesRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.ListFlowExecutionMessagesResponse) => void): Request<IoTThingsGraph.Types.ListFlowExecutionMessagesResponse, AWSError>;
186 /**
187 * Returns a list of objects that contain information about events in a flow execution.
188 */
189 listFlowExecutionMessages(callback?: (err: AWSError, data: IoTThingsGraph.Types.ListFlowExecutionMessagesResponse) => void): Request<IoTThingsGraph.Types.ListFlowExecutionMessagesResponse, AWSError>;
190 /**
191 * Lists all tags on an AWS IoT Things Graph resource.
192 */
193 listTagsForResource(params: IoTThingsGraph.Types.ListTagsForResourceRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.ListTagsForResourceResponse) => void): Request<IoTThingsGraph.Types.ListTagsForResourceResponse, AWSError>;
194 /**
195 * Lists all tags on an AWS IoT Things Graph resource.
196 */
197 listTagsForResource(callback?: (err: AWSError, data: IoTThingsGraph.Types.ListTagsForResourceResponse) => void): Request<IoTThingsGraph.Types.ListTagsForResourceResponse, AWSError>;
198 /**
199 * Searches for entities of the specified type. You can search for entities in your namespace and the public namespace that you're tracking.
200 */
201 searchEntities(params: IoTThingsGraph.Types.SearchEntitiesRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.SearchEntitiesResponse) => void): Request<IoTThingsGraph.Types.SearchEntitiesResponse, AWSError>;
202 /**
203 * Searches for entities of the specified type. You can search for entities in your namespace and the public namespace that you're tracking.
204 */
205 searchEntities(callback?: (err: AWSError, data: IoTThingsGraph.Types.SearchEntitiesResponse) => void): Request<IoTThingsGraph.Types.SearchEntitiesResponse, AWSError>;
206 /**
207 * Searches for AWS IoT Things Graph workflow execution instances.
208 */
209 searchFlowExecutions(params: IoTThingsGraph.Types.SearchFlowExecutionsRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.SearchFlowExecutionsResponse) => void): Request<IoTThingsGraph.Types.SearchFlowExecutionsResponse, AWSError>;
210 /**
211 * Searches for AWS IoT Things Graph workflow execution instances.
212 */
213 searchFlowExecutions(callback?: (err: AWSError, data: IoTThingsGraph.Types.SearchFlowExecutionsResponse) => void): Request<IoTThingsGraph.Types.SearchFlowExecutionsResponse, AWSError>;
214 /**
215 * Searches for summary information about workflows.
216 */
217 searchFlowTemplates(params: IoTThingsGraph.Types.SearchFlowTemplatesRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.SearchFlowTemplatesResponse) => void): Request<IoTThingsGraph.Types.SearchFlowTemplatesResponse, AWSError>;
218 /**
219 * Searches for summary information about workflows.
220 */
221 searchFlowTemplates(callback?: (err: AWSError, data: IoTThingsGraph.Types.SearchFlowTemplatesResponse) => void): Request<IoTThingsGraph.Types.SearchFlowTemplatesResponse, AWSError>;
222 /**
223 * Searches for system instances in the user's account.
224 */
225 searchSystemInstances(params: IoTThingsGraph.Types.SearchSystemInstancesRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.SearchSystemInstancesResponse) => void): Request<IoTThingsGraph.Types.SearchSystemInstancesResponse, AWSError>;
226 /**
227 * Searches for system instances in the user's account.
228 */
229 searchSystemInstances(callback?: (err: AWSError, data: IoTThingsGraph.Types.SearchSystemInstancesResponse) => void): Request<IoTThingsGraph.Types.SearchSystemInstancesResponse, AWSError>;
230 /**
231 * Searches for summary information about systems in the user's account. You can filter by the ID of a workflow to return only systems that use the specified workflow.
232 */
233 searchSystemTemplates(params: IoTThingsGraph.Types.SearchSystemTemplatesRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.SearchSystemTemplatesResponse) => void): Request<IoTThingsGraph.Types.SearchSystemTemplatesResponse, AWSError>;
234 /**
235 * Searches for summary information about systems in the user's account. You can filter by the ID of a workflow to return only systems that use the specified workflow.
236 */
237 searchSystemTemplates(callback?: (err: AWSError, data: IoTThingsGraph.Types.SearchSystemTemplatesResponse) => void): Request<IoTThingsGraph.Types.SearchSystemTemplatesResponse, AWSError>;
238 /**
239 * Searches for things associated with the specified entity. You can search by both device and device model. For example, if two different devices, camera1 and camera2, implement the camera device model, the user can associate thing1 to camera1 and thing2 to camera2. SearchThings(camera2) will return only thing2, but SearchThings(camera) will return both thing1 and thing2. This action searches for exact matches and doesn't perform partial text matching.
240 */
241 searchThings(params: IoTThingsGraph.Types.SearchThingsRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.SearchThingsResponse) => void): Request<IoTThingsGraph.Types.SearchThingsResponse, AWSError>;
242 /**
243 * Searches for things associated with the specified entity. You can search by both device and device model. For example, if two different devices, camera1 and camera2, implement the camera device model, the user can associate thing1 to camera1 and thing2 to camera2. SearchThings(camera2) will return only thing2, but SearchThings(camera) will return both thing1 and thing2. This action searches for exact matches and doesn't perform partial text matching.
244 */
245 searchThings(callback?: (err: AWSError, data: IoTThingsGraph.Types.SearchThingsResponse) => void): Request<IoTThingsGraph.Types.SearchThingsResponse, AWSError>;
246 /**
247 * Creates a tag for the specified resource.
248 */
249 tagResource(params: IoTThingsGraph.Types.TagResourceRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.TagResourceResponse) => void): Request<IoTThingsGraph.Types.TagResourceResponse, AWSError>;
250 /**
251 * Creates a tag for the specified resource.
252 */
253 tagResource(callback?: (err: AWSError, data: IoTThingsGraph.Types.TagResourceResponse) => void): Request<IoTThingsGraph.Types.TagResourceResponse, AWSError>;
254 /**
255 * Removes a system instance from its target (Cloud or Greengrass).
256 */
257 undeploySystemInstance(params: IoTThingsGraph.Types.UndeploySystemInstanceRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.UndeploySystemInstanceResponse) => void): Request<IoTThingsGraph.Types.UndeploySystemInstanceResponse, AWSError>;
258 /**
259 * Removes a system instance from its target (Cloud or Greengrass).
260 */
261 undeploySystemInstance(callback?: (err: AWSError, data: IoTThingsGraph.Types.UndeploySystemInstanceResponse) => void): Request<IoTThingsGraph.Types.UndeploySystemInstanceResponse, AWSError>;
262 /**
263 * Removes a tag from the specified resource.
264 */
265 untagResource(params: IoTThingsGraph.Types.UntagResourceRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.UntagResourceResponse) => void): Request<IoTThingsGraph.Types.UntagResourceResponse, AWSError>;
266 /**
267 * Removes a tag from the specified resource.
268 */
269 untagResource(callback?: (err: AWSError, data: IoTThingsGraph.Types.UntagResourceResponse) => void): Request<IoTThingsGraph.Types.UntagResourceResponse, AWSError>;
270 /**
271 * Updates the specified workflow. All deployed systems and system instances that use the workflow will see the changes in the flow when it is redeployed. If you don't want this behavior, copy the workflow (creating a new workflow with a different ID), and update the copy. The workflow can contain only entities in the specified namespace.
272 */
273 updateFlowTemplate(params: IoTThingsGraph.Types.UpdateFlowTemplateRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.UpdateFlowTemplateResponse) => void): Request<IoTThingsGraph.Types.UpdateFlowTemplateResponse, AWSError>;
274 /**
275 * Updates the specified workflow. All deployed systems and system instances that use the workflow will see the changes in the flow when it is redeployed. If you don't want this behavior, copy the workflow (creating a new workflow with a different ID), and update the copy. The workflow can contain only entities in the specified namespace.
276 */
277 updateFlowTemplate(callback?: (err: AWSError, data: IoTThingsGraph.Types.UpdateFlowTemplateResponse) => void): Request<IoTThingsGraph.Types.UpdateFlowTemplateResponse, AWSError>;
278 /**
279 * Updates the specified system. You don't need to run this action after updating a workflow. Any deployment that uses the system will see the changes in the system when it is redeployed.
280 */
281 updateSystemTemplate(params: IoTThingsGraph.Types.UpdateSystemTemplateRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.UpdateSystemTemplateResponse) => void): Request<IoTThingsGraph.Types.UpdateSystemTemplateResponse, AWSError>;
282 /**
283 * Updates the specified system. You don't need to run this action after updating a workflow. Any deployment that uses the system will see the changes in the system when it is redeployed.
284 */
285 updateSystemTemplate(callback?: (err: AWSError, data: IoTThingsGraph.Types.UpdateSystemTemplateResponse) => void): Request<IoTThingsGraph.Types.UpdateSystemTemplateResponse, AWSError>;
286 /**
287 * Asynchronously uploads one or more entity definitions to the user's namespace. The document parameter is required if syncWithPublicNamespace and deleteExistingEntites are false. If the syncWithPublicNamespace parameter is set to true, the user's namespace will synchronize with the latest version of the public namespace. If deprecateExistingEntities is set to true, all entities in the latest version will be deleted before the new DefinitionDocument is uploaded. When a user uploads entity definitions for the first time, the service creates a new namespace for the user. The new namespace tracks the public namespace. Currently users can have only one namespace. The namespace version increments whenever a user uploads entity definitions that are backwards-incompatible and whenever a user sets the syncWithPublicNamespace parameter or the deprecateExistingEntities parameter to true. The IDs for all of the entities should be in URN format. Each entity must be in the user's namespace. Users can't create entities in the public namespace, but entity definitions can refer to entities in the public namespace. Valid entities are Device, DeviceModel, Service, Capability, State, Action, Event, Property, Mapping, Enum.
288 */
289 uploadEntityDefinitions(params: IoTThingsGraph.Types.UploadEntityDefinitionsRequest, callback?: (err: AWSError, data: IoTThingsGraph.Types.UploadEntityDefinitionsResponse) => void): Request<IoTThingsGraph.Types.UploadEntityDefinitionsResponse, AWSError>;
290 /**
291 * Asynchronously uploads one or more entity definitions to the user's namespace. The document parameter is required if syncWithPublicNamespace and deleteExistingEntites are false. If the syncWithPublicNamespace parameter is set to true, the user's namespace will synchronize with the latest version of the public namespace. If deprecateExistingEntities is set to true, all entities in the latest version will be deleted before the new DefinitionDocument is uploaded. When a user uploads entity definitions for the first time, the service creates a new namespace for the user. The new namespace tracks the public namespace. Currently users can have only one namespace. The namespace version increments whenever a user uploads entity definitions that are backwards-incompatible and whenever a user sets the syncWithPublicNamespace parameter or the deprecateExistingEntities parameter to true. The IDs for all of the entities should be in URN format. Each entity must be in the user's namespace. Users can't create entities in the public namespace, but entity definitions can refer to entities in the public namespace. Valid entities are Device, DeviceModel, Service, Capability, State, Action, Event, Property, Mapping, Enum.
292 */
293 uploadEntityDefinitions(callback?: (err: AWSError, data: IoTThingsGraph.Types.UploadEntityDefinitionsResponse) => void): Request<IoTThingsGraph.Types.UploadEntityDefinitionsResponse, AWSError>;
294}
295declare namespace IoTThingsGraph {
296 export type Arn = string;
297 export interface AssociateEntityToThingRequest {
298 /**
299 * The name of the thing to which the entity is to be associated.
300 */
301 thingName: ThingName;
302 /**
303 * The ID of the device to be associated with the thing. The ID should be in the following format. urn:tdm:REGION/ACCOUNT ID/default:device:DEVICENAME
304 */
305 entityId: Urn;
306 /**
307 * The version of the user's namespace. Defaults to the latest version of the user's namespace.
308 */
309 namespaceVersion?: Version;
310 }
311 export interface AssociateEntityToThingResponse {
312 }
313 export interface CreateFlowTemplateRequest {
314 /**
315 * The workflow DefinitionDocument.
316 */
317 definition: DefinitionDocument;
318 /**
319 * The namespace version in which the workflow is to be created. If no value is specified, the latest version is used by default.
320 */
321 compatibleNamespaceVersion?: Version;
322 }
323 export interface CreateFlowTemplateResponse {
324 /**
325 * The summary object that describes the created workflow.
326 */
327 summary?: FlowTemplateSummary;
328 }
329 export interface CreateSystemInstanceRequest {
330 /**
331 * Metadata, consisting of key-value pairs, that can be used to categorize your system instances.
332 */
333 tags?: TagList;
334 definition: DefinitionDocument;
335 /**
336 * The target type of the deployment. Valid values are GREENGRASS and CLOUD.
337 */
338 target: DeploymentTarget;
339 /**
340 * The name of the Greengrass group where the system instance will be deployed. This value is required if the value of the target parameter is GREENGRASS.
341 */
342 greengrassGroupName?: GroupName;
343 /**
344 * The name of the Amazon Simple Storage Service bucket that will be used to store and deploy the system instance's resource file. This value is required if the value of the target parameter is GREENGRASS.
345 */
346 s3BucketName?: S3BucketName;
347 metricsConfiguration?: MetricsConfiguration;
348 /**
349 * The ARN of the IAM role that AWS IoT Things Graph will assume when it executes the flow. This role must have read and write access to AWS Lambda and AWS IoT and any other AWS services that the flow uses when it executes. This value is required if the value of the target parameter is CLOUD.
350 */
351 flowActionsRoleArn?: RoleArn;
352 }
353 export interface CreateSystemInstanceResponse {
354 /**
355 * The summary object that describes the new system instance.
356 */
357 summary?: SystemInstanceSummary;
358 }
359 export interface CreateSystemTemplateRequest {
360 /**
361 * The DefinitionDocument used to create the system.
362 */
363 definition: DefinitionDocument;
364 /**
365 * The namespace version in which the system is to be created. If no value is specified, the latest version is used by default.
366 */
367 compatibleNamespaceVersion?: Version;
368 }
369 export interface CreateSystemTemplateResponse {
370 /**
371 * The summary object that describes the created system.
372 */
373 summary?: SystemTemplateSummary;
374 }
375 export interface DefinitionDocument {
376 /**
377 * The language used to define the entity. GRAPHQL is the only valid value.
378 */
379 language: DefinitionLanguage;
380 /**
381 * The GraphQL text that defines the entity.
382 */
383 text: DefinitionText;
384 }
385 export type DefinitionLanguage = "GRAPHQL"|string;
386 export type DefinitionText = string;
387 export interface DeleteFlowTemplateRequest {
388 /**
389 * The ID of the workflow to be deleted. The ID should be in the following format. urn:tdm:REGION/ACCOUNT ID/default:workflow:WORKFLOWNAME
390 */
391 id: Urn;
392 }
393 export interface DeleteFlowTemplateResponse {
394 }
395 export interface DeleteNamespaceRequest {
396 }
397 export interface DeleteNamespaceResponse {
398 /**
399 * The ARN of the namespace to be deleted.
400 */
401 namespaceArn?: Arn;
402 /**
403 * The name of the namespace to be deleted.
404 */
405 namespaceName?: NamespaceName;
406 }
407 export interface DeleteSystemInstanceRequest {
408 /**
409 * The ID of the system instance to be deleted.
410 */
411 id?: Urn;
412 }
413 export interface DeleteSystemInstanceResponse {
414 }
415 export interface DeleteSystemTemplateRequest {
416 /**
417 * The ID of the system to be deleted. The ID should be in the following format. urn:tdm:REGION/ACCOUNT ID/default:system:SYSTEMNAME
418 */
419 id: Urn;
420 }
421 export interface DeleteSystemTemplateResponse {
422 }
423 export interface DependencyRevision {
424 /**
425 * The ID of the workflow or system.
426 */
427 id?: Urn;
428 /**
429 * The revision number of the workflow or system.
430 */
431 revisionNumber?: Version;
432 }
433 export type DependencyRevisions = DependencyRevision[];
434 export interface DeploySystemInstanceRequest {
435 /**
436 * The ID of the system instance. This value is returned by the CreateSystemInstance action. The ID should be in the following format. urn:tdm:REGION/ACCOUNT ID/default:deployment:DEPLOYMENTNAME
437 */
438 id?: Urn;
439 }
440 export interface DeploySystemInstanceResponse {
441 /**
442 * An object that contains summary information about a system instance that was deployed.
443 */
444 summary: SystemInstanceSummary;
445 /**
446 * The ID of the Greengrass deployment used to deploy the system instance.
447 */
448 greengrassDeploymentId?: GreengrassDeploymentId;
449 }
450 export type DeploymentTarget = "GREENGRASS"|"CLOUD"|string;
451 export type DeprecateExistingEntities = boolean;
452 export interface DeprecateFlowTemplateRequest {
453 /**
454 * The ID of the workflow to be deleted. The ID should be in the following format. urn:tdm:REGION/ACCOUNT ID/default:workflow:WORKFLOWNAME
455 */
456 id: Urn;
457 }
458 export interface DeprecateFlowTemplateResponse {
459 }
460 export interface DeprecateSystemTemplateRequest {
461 /**
462 * The ID of the system to delete. The ID should be in the following format. urn:tdm:REGION/ACCOUNT ID/default:system:SYSTEMNAME
463 */
464 id: Urn;
465 }
466 export interface DeprecateSystemTemplateResponse {
467 }
468 export interface DescribeNamespaceRequest {
469 /**
470 * The name of the user's namespace. Set this to aws to get the public namespace.
471 */
472 namespaceName?: NamespaceName;
473 }
474 export interface DescribeNamespaceResponse {
475 /**
476 * The ARN of the namespace.
477 */
478 namespaceArn?: Arn;
479 /**
480 * The name of the namespace.
481 */
482 namespaceName?: NamespaceName;
483 /**
484 * The name of the public namespace that the latest namespace version is tracking.
485 */
486 trackingNamespaceName?: NamespaceName;
487 /**
488 * The version of the public namespace that the latest version is tracking.
489 */
490 trackingNamespaceVersion?: Version;
491 /**
492 * The version of the user's namespace to describe.
493 */
494 namespaceVersion?: Version;
495 }
496 export interface DissociateEntityFromThingRequest {
497 /**
498 * The name of the thing to disassociate.
499 */
500 thingName: ThingName;
501 /**
502 * The entity type from which to disassociate the thing.
503 */
504 entityType: EntityType;
505 }
506 export interface DissociateEntityFromThingResponse {
507 }
508 export type Enabled = boolean;
509 export interface EntityDescription {
510 /**
511 * The entity ID.
512 */
513 id?: Urn;
514 /**
515 * The entity ARN.
516 */
517 arn?: Arn;
518 /**
519 * The entity type.
520 */
521 type?: EntityType;
522 /**
523 * The time at which the entity was created.
524 */
525 createdAt?: Timestamp;
526 /**
527 * The definition document of the entity.
528 */
529 definition?: DefinitionDocument;
530 }
531 export type EntityDescriptions = EntityDescription[];
532 export interface EntityFilter {
533 /**
534 * The name of the entity search filter field. REFERENCED_ENTITY_ID filters on entities that are used by the entity in the result set. For example, you can filter on the ID of a property that is used in a state.
535 */
536 name?: EntityFilterName;
537 /**
538 * An array of string values for the search filter field. Multiple values function as AND criteria in the search.
539 */
540 value?: EntityFilterValues;
541 }
542 export type EntityFilterName = "NAME"|"NAMESPACE"|"SEMANTIC_TYPE_PATH"|"REFERENCED_ENTITY_ID"|string;
543 export type EntityFilterValue = string;
544 export type EntityFilterValues = EntityFilterValue[];
545 export type EntityFilters = EntityFilter[];
546 export type EntityType = "DEVICE"|"SERVICE"|"DEVICE_MODEL"|"CAPABILITY"|"STATE"|"ACTION"|"EVENT"|"PROPERTY"|"MAPPING"|"ENUM"|string;
547 export type EntityTypes = EntityType[];
548 export type FlowExecutionEventType = "EXECUTION_STARTED"|"EXECUTION_FAILED"|"EXECUTION_ABORTED"|"EXECUTION_SUCCEEDED"|"STEP_STARTED"|"STEP_FAILED"|"STEP_SUCCEEDED"|"ACTIVITY_SCHEDULED"|"ACTIVITY_STARTED"|"ACTIVITY_FAILED"|"ACTIVITY_SUCCEEDED"|"START_FLOW_EXECUTION_TASK"|"SCHEDULE_NEXT_READY_STEPS_TASK"|"THING_ACTION_TASK"|"THING_ACTION_TASK_FAILED"|"THING_ACTION_TASK_SUCCEEDED"|"ACKNOWLEDGE_TASK_MESSAGE"|string;
549 export type FlowExecutionId = string;
550 export interface FlowExecutionMessage {
551 /**
552 * The unique identifier of the message.
553 */
554 messageId?: FlowExecutionMessageId;
555 /**
556 * The type of flow event .
557 */
558 eventType?: FlowExecutionEventType;
559 /**
560 * The date and time when the message was last updated.
561 */
562 timestamp?: Timestamp;
563 /**
564 * A string containing information about the flow event.
565 */
566 payload?: FlowExecutionMessagePayload;
567 }
568 export type FlowExecutionMessageId = string;
569 export type FlowExecutionMessagePayload = string;
570 export type FlowExecutionMessages = FlowExecutionMessage[];
571 export type FlowExecutionStatus = "RUNNING"|"ABORTED"|"SUCCEEDED"|"FAILED"|string;
572 export type FlowExecutionSummaries = FlowExecutionSummary[];
573 export interface FlowExecutionSummary {
574 /**
575 * The ID of the flow execution.
576 */
577 flowExecutionId?: FlowExecutionId;
578 /**
579 * The current status of the flow execution.
580 */
581 status?: FlowExecutionStatus;
582 /**
583 * The ID of the system instance that contains the flow.
584 */
585 systemInstanceId?: Urn;
586 /**
587 * The ID of the flow.
588 */
589 flowTemplateId?: Urn;
590 /**
591 * The date and time when the flow execution summary was created.
592 */
593 createdAt?: Timestamp;
594 /**
595 * The date and time when the flow execution summary was last updated.
596 */
597 updatedAt?: Timestamp;
598 }
599 export interface FlowTemplateDescription {
600 /**
601 * An object that contains summary information about a workflow.
602 */
603 summary?: FlowTemplateSummary;
604 /**
605 * A workflow's definition document.
606 */
607 definition?: DefinitionDocument;
608 /**
609 * The version of the user's namespace against which the workflow was validated. Use this value in your system instance.
610 */
611 validatedNamespaceVersion?: Version;
612 }
613 export interface FlowTemplateFilter {
614 /**
615 * The name of the search filter field.
616 */
617 name: FlowTemplateFilterName;
618 /**
619 * An array of string values for the search filter field. Multiple values function as AND criteria in the search.
620 */
621 value: FlowTemplateFilterValues;
622 }
623 export type FlowTemplateFilterName = "DEVICE_MODEL_ID"|string;
624 export type FlowTemplateFilterValue = string;
625 export type FlowTemplateFilterValues = FlowTemplateFilterValue[];
626 export type FlowTemplateFilters = FlowTemplateFilter[];
627 export type FlowTemplateSummaries = FlowTemplateSummary[];
628 export interface FlowTemplateSummary {
629 /**
630 * The ID of the workflow.
631 */
632 id?: Urn;
633 /**
634 * The ARN of the workflow.
635 */
636 arn?: Arn;
637 /**
638 * The revision number of the workflow.
639 */
640 revisionNumber?: Version;
641 /**
642 * The date when the workflow was created.
643 */
644 createdAt?: Timestamp;
645 }
646 export interface GetEntitiesRequest {
647 /**
648 * An array of entity IDs. The IDs should be in the following format. urn:tdm:REGION/ACCOUNT ID/default:device:DEVICENAME
649 */
650 ids: Urns;
651 /**
652 * The version of the user's namespace. Defaults to the latest version of the user's namespace.
653 */
654 namespaceVersion?: Version;
655 }
656 export interface GetEntitiesResponse {
657 /**
658 * An array of descriptions for the specified entities.
659 */
660 descriptions?: EntityDescriptions;
661 }
662 export interface GetFlowTemplateRequest {
663 /**
664 * The ID of the workflow. The ID should be in the following format. urn:tdm:REGION/ACCOUNT ID/default:workflow:WORKFLOWNAME
665 */
666 id: Urn;
667 /**
668 * The number of the workflow revision to retrieve.
669 */
670 revisionNumber?: Version;
671 }
672 export interface GetFlowTemplateResponse {
673 /**
674 * The object that describes the specified workflow.
675 */
676 description?: FlowTemplateDescription;
677 }
678 export interface GetFlowTemplateRevisionsRequest {
679 /**
680 * The ID of the workflow. The ID should be in the following format. urn:tdm:REGION/ACCOUNT ID/default:workflow:WORKFLOWNAME
681 */
682 id: Urn;
683 /**
684 * The string that specifies the next page of results. Use this when you're paginating results.
685 */
686 nextToken?: NextToken;
687 /**
688 * The maximum number of results to return in the response.
689 */
690 maxResults?: MaxResults;
691 }
692 export interface GetFlowTemplateRevisionsResponse {
693 /**
694 * An array of objects that provide summary data about each revision.
695 */
696 summaries?: FlowTemplateSummaries;
697 /**
698 * The string to specify as nextToken when you request the next page of results.
699 */
700 nextToken?: NextToken;
701 }
702 export interface GetNamespaceDeletionStatusRequest {
703 }
704 export interface GetNamespaceDeletionStatusResponse {
705 /**
706 * The ARN of the namespace that is being deleted.
707 */
708 namespaceArn?: Arn;
709 /**
710 * The name of the namespace that is being deleted.
711 */
712 namespaceName?: NamespaceName;
713 /**
714 * The status of the deletion request.
715 */
716 status?: NamespaceDeletionStatus;
717 /**
718 * An error code returned by the namespace deletion task.
719 */
720 errorCode?: NamespaceDeletionStatusErrorCodes;
721 /**
722 * An error code returned by the namespace deletion task.
723 */
724 errorMessage?: String;
725 }
726 export interface GetSystemInstanceRequest {
727 /**
728 * The ID of the system deployment instance. This value is returned by CreateSystemInstance. The ID should be in the following format. urn:tdm:REGION/ACCOUNT ID/default:deployment:DEPLOYMENTNAME
729 */
730 id: Urn;
731 }
732 export interface GetSystemInstanceResponse {
733 /**
734 * An object that describes the system instance.
735 */
736 description?: SystemInstanceDescription;
737 }
738 export interface GetSystemTemplateRequest {
739 /**
740 * The ID of the system to get. This ID must be in the user's namespace. The ID should be in the following format. urn:tdm:REGION/ACCOUNT ID/default:system:SYSTEMNAME
741 */
742 id: Urn;
743 /**
744 * The number that specifies the revision of the system to get.
745 */
746 revisionNumber?: Version;
747 }
748 export interface GetSystemTemplateResponse {
749 /**
750 * An object that contains summary data about the system.
751 */
752 description?: SystemTemplateDescription;
753 }
754 export interface GetSystemTemplateRevisionsRequest {
755 /**
756 * The ID of the system template. The ID should be in the following format. urn:tdm:REGION/ACCOUNT ID/default:system:SYSTEMNAME
757 */
758 id: Urn;
759 /**
760 * The string that specifies the next page of results. Use this when you're paginating results.
761 */
762 nextToken?: NextToken;
763 /**
764 * The maximum number of results to return in the response.
765 */
766 maxResults?: MaxResults;
767 }
768 export interface GetSystemTemplateRevisionsResponse {
769 /**
770 * An array of objects that contain summary data about the system template revisions.
771 */
772 summaries?: SystemTemplateSummaries;
773 /**
774 * The string to specify as nextToken when you request the next page of results.
775 */
776 nextToken?: NextToken;
777 }
778 export interface GetUploadStatusRequest {
779 /**
780 * The ID of the upload. This value is returned by the UploadEntityDefinitions action.
781 */
782 uploadId: UploadId;
783 }
784 export interface GetUploadStatusResponse {
785 /**
786 * The ID of the upload.
787 */
788 uploadId: UploadId;
789 /**
790 * The status of the upload. The initial status is IN_PROGRESS. The response show all validation failures if the upload fails.
791 */
792 uploadStatus: UploadStatus;
793 /**
794 * The ARN of the upload.
795 */
796 namespaceArn?: Arn;
797 /**
798 * The name of the upload's namespace.
799 */
800 namespaceName?: NamespaceName;
801 /**
802 * The version of the user's namespace. Defaults to the latest version of the user's namespace.
803 */
804 namespaceVersion?: Version;
805 /**
806 * The reason for an upload failure.
807 */
808 failureReason?: StringList;
809 /**
810 * The date at which the upload was created.
811 */
812 createdDate: Timestamp;
813 }
814 export type GreengrassDeploymentId = string;
815 export type GreengrassGroupId = string;
816 export type GreengrassGroupVersionId = string;
817 export type GroupName = string;
818 export interface ListFlowExecutionMessagesRequest {
819 /**
820 * The ID of the flow execution.
821 */
822 flowExecutionId: FlowExecutionId;
823 /**
824 * The string that specifies the next page of results. Use this when you're paginating results.
825 */
826 nextToken?: NextToken;
827 /**
828 * The maximum number of results to return in the response.
829 */
830 maxResults?: MaxResults;
831 }
832 export interface ListFlowExecutionMessagesResponse {
833 /**
834 * A list of objects that contain information about events in the specified flow execution.
835 */
836 messages?: FlowExecutionMessages;
837 /**
838 * The string to specify as nextToken when you request the next page of results.
839 */
840 nextToken?: NextToken;
841 }
842 export interface ListTagsForResourceRequest {
843 /**
844 * The maximum number of tags to return.
845 */
846 maxResults?: MaxResults;
847 /**
848 * The Amazon Resource Name (ARN) of the resource whose tags are to be returned.
849 */
850 resourceArn: ResourceArn;
851 /**
852 * The token that specifies the next page of results to return.
853 */
854 nextToken?: NextToken;
855 }
856 export interface ListTagsForResourceResponse {
857 /**
858 * List of tags returned by the ListTagsForResource operation.
859 */
860 tags?: TagList;
861 /**
862 * The token that specifies the next page of results to return.
863 */
864 nextToken?: NextToken;
865 }
866 export type MaxResults = number;
867 export interface MetricsConfiguration {
868 /**
869 * A Boolean that specifies whether cloud metrics are collected.
870 */
871 cloudMetricEnabled?: Enabled;
872 /**
873 * The ARN of the role that is used to collect cloud metrics.
874 */
875 metricRuleRoleArn?: RoleArn;
876 }
877 export type NamespaceDeletionStatus = "IN_PROGRESS"|"SUCCEEDED"|"FAILED"|string;
878 export type NamespaceDeletionStatusErrorCodes = "VALIDATION_FAILED"|string;
879 export type NamespaceName = string;
880 export type NextToken = string;
881 export type ResourceArn = string;
882 export type RoleArn = string;
883 export type S3BucketName = string;
884 export interface SearchEntitiesRequest {
885 /**
886 * The entity types for which to search.
887 */
888 entityTypes: EntityTypes;
889 /**
890 * Optional filter to apply to the search. Valid filters are NAME NAMESPACE, SEMANTIC_TYPE_PATH and REFERENCED_ENTITY_ID. REFERENCED_ENTITY_ID filters on entities that are used by the entity in the result set. For example, you can filter on the ID of a property that is used in a state. Multiple filters function as OR criteria in the query. Multiple values passed inside the filter function as AND criteria.
891 */
892 filters?: EntityFilters;
893 /**
894 * The string that specifies the next page of results. Use this when you're paginating results.
895 */
896 nextToken?: NextToken;
897 /**
898 * The maximum number of results to return in the response.
899 */
900 maxResults?: MaxResults;
901 /**
902 * The version of the user's namespace. Defaults to the latest version of the user's namespace.
903 */
904 namespaceVersion?: Version;
905 }
906 export interface SearchEntitiesResponse {
907 /**
908 * An array of descriptions for each entity returned in the search result.
909 */
910 descriptions?: EntityDescriptions;
911 /**
912 * The string to specify as nextToken when you request the next page of results.
913 */
914 nextToken?: NextToken;
915 }
916 export interface SearchFlowExecutionsRequest {
917 /**
918 * The ID of the system instance that contains the flow.
919 */
920 systemInstanceId: Urn;
921 /**
922 * The ID of a flow execution.
923 */
924 flowExecutionId?: FlowExecutionId;
925 /**
926 * The date and time of the earliest flow execution to return.
927 */
928 startTime?: Timestamp;
929 /**
930 * The date and time of the latest flow execution to return.
931 */
932 endTime?: Timestamp;
933 /**
934 * The string that specifies the next page of results. Use this when you're paginating results.
935 */
936 nextToken?: NextToken;
937 /**
938 * The maximum number of results to return in the response.
939 */
940 maxResults?: MaxResults;
941 }
942 export interface SearchFlowExecutionsResponse {
943 /**
944 * An array of objects that contain summary information about each workflow execution in the result set.
945 */
946 summaries?: FlowExecutionSummaries;
947 /**
948 * The string to specify as nextToken when you request the next page of results.
949 */
950 nextToken?: NextToken;
951 }
952 export interface SearchFlowTemplatesRequest {
953 /**
954 * An array of objects that limit the result set. The only valid filter is DEVICE_MODEL_ID.
955 */
956 filters?: FlowTemplateFilters;
957 /**
958 * The string that specifies the next page of results. Use this when you're paginating results.
959 */
960 nextToken?: NextToken;
961 /**
962 * The maximum number of results to return in the response.
963 */
964 maxResults?: MaxResults;
965 }
966 export interface SearchFlowTemplatesResponse {
967 /**
968 * An array of objects that contain summary information about each workflow in the result set.
969 */
970 summaries?: FlowTemplateSummaries;
971 /**
972 * The string to specify as nextToken when you request the next page of results.
973 */
974 nextToken?: NextToken;
975 }
976 export interface SearchSystemInstancesRequest {
977 /**
978 * Optional filter to apply to the search. Valid filters are SYSTEM_TEMPLATE_ID, STATUS, and GREENGRASS_GROUP_NAME. Multiple filters function as OR criteria in the query. Multiple values passed inside the filter function as AND criteria.
979 */
980 filters?: SystemInstanceFilters;
981 /**
982 * The string that specifies the next page of results. Use this when you're paginating results.
983 */
984 nextToken?: NextToken;
985 /**
986 * The maximum number of results to return in the response.
987 */
988 maxResults?: MaxResults;
989 }
990 export interface SearchSystemInstancesResponse {
991 /**
992 * An array of objects that contain summary data abour the system instances in the result set.
993 */
994 summaries?: SystemInstanceSummaries;
995 /**
996 * The string to specify as nextToken when you request the next page of results.
997 */
998 nextToken?: NextToken;
999 }
1000 export interface SearchSystemTemplatesRequest {
1001 /**
1002 * An array of filters that limit the result set. The only valid filter is FLOW_TEMPLATE_ID.
1003 */
1004 filters?: SystemTemplateFilters;
1005 /**
1006 * The string that specifies the next page of results. Use this when you're paginating results.
1007 */
1008 nextToken?: NextToken;
1009 /**
1010 * The maximum number of results to return in the response.
1011 */
1012 maxResults?: MaxResults;
1013 }
1014 export interface SearchSystemTemplatesResponse {
1015 /**
1016 * An array of objects that contain summary information about each system deployment in the result set.
1017 */
1018 summaries?: SystemTemplateSummaries;
1019 /**
1020 * The string to specify as nextToken when you request the next page of results.
1021 */
1022 nextToken?: NextToken;
1023 }
1024 export interface SearchThingsRequest {
1025 /**
1026 * The ID of the entity to which the things are associated. The IDs should be in the following format. urn:tdm:REGION/ACCOUNT ID/default:device:DEVICENAME
1027 */
1028 entityId: Urn;
1029 /**
1030 * The string that specifies the next page of results. Use this when you're paginating results.
1031 */
1032 nextToken?: NextToken;
1033 /**
1034 * The maximum number of results to return in the response.
1035 */
1036 maxResults?: MaxResults;
1037 /**
1038 * The version of the user's namespace. Defaults to the latest version of the user's namespace.
1039 */
1040 namespaceVersion?: Version;
1041 }
1042 export interface SearchThingsResponse {
1043 /**
1044 * An array of things in the result set.
1045 */
1046 things?: Things;
1047 /**
1048 * The string to specify as nextToken when you request the next page of results.
1049 */
1050 nextToken?: NextToken;
1051 }
1052 export type String = string;
1053 export type StringList = String[];
1054 export type SyncWithPublicNamespace = boolean;
1055 export type SystemInstanceDeploymentStatus = "NOT_DEPLOYED"|"BOOTSTRAP"|"DEPLOY_IN_PROGRESS"|"DEPLOYED_IN_TARGET"|"UNDEPLOY_IN_PROGRESS"|"FAILED"|"PENDING_DELETE"|"DELETED_IN_TARGET"|string;
1056 export interface SystemInstanceDescription {
1057 /**
1058 * An object that contains summary information about a system instance.
1059 */
1060 summary?: SystemInstanceSummary;
1061 definition?: DefinitionDocument;
1062 /**
1063 * The Amazon Simple Storage Service bucket where information about a system instance is stored.
1064 */
1065 s3BucketName?: S3BucketName;
1066 metricsConfiguration?: MetricsConfiguration;
1067 /**
1068 * The version of the user's namespace against which the system instance was validated.
1069 */
1070 validatedNamespaceVersion?: Version;
1071 /**
1072 * A list of objects that contain all of the IDs and revision numbers of workflows and systems that are used in a system instance.
1073 */
1074 validatedDependencyRevisions?: DependencyRevisions;
1075 /**
1076 * The AWS Identity and Access Management (IAM) role that AWS IoT Things Graph assumes during flow execution in a cloud deployment. This role must have read and write permissionss to AWS Lambda and AWS IoT and to any other AWS services that the flow uses.
1077 */
1078 flowActionsRoleArn?: RoleArn;
1079 }
1080 export interface SystemInstanceFilter {
1081 /**
1082 * The name of the search filter field.
1083 */
1084 name?: SystemInstanceFilterName;
1085 /**
1086 * An array of string values for the search filter field. Multiple values function as AND criteria in the search.
1087 */
1088 value?: SystemInstanceFilterValues;
1089 }
1090 export type SystemInstanceFilterName = "SYSTEM_TEMPLATE_ID"|"STATUS"|"GREENGRASS_GROUP_NAME"|string;
1091 export type SystemInstanceFilterValue = string;
1092 export type SystemInstanceFilterValues = SystemInstanceFilterValue[];
1093 export type SystemInstanceFilters = SystemInstanceFilter[];
1094 export type SystemInstanceSummaries = SystemInstanceSummary[];
1095 export interface SystemInstanceSummary {
1096 /**
1097 * The ID of the system instance.
1098 */
1099 id?: Urn;
1100 /**
1101 * The ARN of the system instance.
1102 */
1103 arn?: Arn;
1104 /**
1105 * The status of the system instance.
1106 */
1107 status?: SystemInstanceDeploymentStatus;
1108 /**
1109 * The target of the system instance.
1110 */
1111 target?: DeploymentTarget;
1112 /**
1113 * The ID of the Greengrass group where the system instance is deployed.
1114 */
1115 greengrassGroupName?: GroupName;
1116 /**
1117 * The date when the system instance was created.
1118 */
1119 createdAt?: Timestamp;
1120 /**
1121 * The date and time when the system instance was last updated.
1122 */
1123 updatedAt?: Timestamp;
1124 /**
1125 * The ID of the Greengrass group where the system instance is deployed.
1126 */
1127 greengrassGroupId?: GreengrassGroupId;
1128 /**
1129 * The version of the Greengrass group where the system instance is deployed.
1130 */
1131 greengrassGroupVersionId?: GreengrassGroupVersionId;
1132 }
1133 export interface SystemTemplateDescription {
1134 /**
1135 * An object that contains summary information about a system.
1136 */
1137 summary?: SystemTemplateSummary;
1138 /**
1139 * The definition document of a system.
1140 */
1141 definition?: DefinitionDocument;
1142 /**
1143 * The namespace version against which the system was validated. Use this value in your system instance.
1144 */
1145 validatedNamespaceVersion?: Version;
1146 }
1147 export interface SystemTemplateFilter {
1148 /**
1149 * The name of the system search filter field.
1150 */
1151 name: SystemTemplateFilterName;
1152 /**
1153 * An array of string values for the search filter field. Multiple values function as AND criteria in the search.
1154 */
1155 value: SystemTemplateFilterValues;
1156 }
1157 export type SystemTemplateFilterName = "FLOW_TEMPLATE_ID"|string;
1158 export type SystemTemplateFilterValue = string;
1159 export type SystemTemplateFilterValues = SystemTemplateFilterValue[];
1160 export type SystemTemplateFilters = SystemTemplateFilter[];
1161 export type SystemTemplateSummaries = SystemTemplateSummary[];
1162 export interface SystemTemplateSummary {
1163 /**
1164 * The ID of the system.
1165 */
1166 id?: Urn;
1167 /**
1168 * The ARN of the system.
1169 */
1170 arn?: Arn;
1171 /**
1172 * The revision number of the system.
1173 */
1174 revisionNumber?: Version;
1175 /**
1176 * The date when the system was created.
1177 */
1178 createdAt?: Timestamp;
1179 }
1180 export interface Tag {
1181 /**
1182 * The required name of the tag. The string value can be from 1 to 128 Unicode characters in length.
1183 */
1184 key: TagKey;
1185 /**
1186 * The optional value of the tag. The string value can be from 1 to 256 Unicode characters in length.
1187 */
1188 value: TagValue;
1189 }
1190 export type TagKey = string;
1191 export type TagKeyList = TagKey[];
1192 export type TagList = Tag[];
1193 export interface TagResourceRequest {
1194 /**
1195 * The Amazon Resource Name (ARN) of the resource whose tags are returned.
1196 */
1197 resourceArn: ResourceArn;
1198 /**
1199 * A list of tags to add to the resource.&gt;
1200 */
1201 tags: TagList;
1202 }
1203 export interface TagResourceResponse {
1204 }
1205 export type TagValue = string;
1206 export interface Thing {
1207 /**
1208 * The ARN of the thing.
1209 */
1210 thingArn?: ThingArn;
1211 /**
1212 * The name of the thing.
1213 */
1214 thingName?: ThingName;
1215 }
1216 export type ThingArn = string;
1217 export type ThingName = string;
1218 export type Things = Thing[];
1219 export type Timestamp = Date;
1220 export interface UndeploySystemInstanceRequest {
1221 /**
1222 * The ID of the system instance to remove from its target.
1223 */
1224 id?: Urn;
1225 }
1226 export interface UndeploySystemInstanceResponse {
1227 /**
1228 * An object that contains summary information about the system instance that was removed from its target.
1229 */
1230 summary?: SystemInstanceSummary;
1231 }
1232 export interface UntagResourceRequest {
1233 /**
1234 * The Amazon Resource Name (ARN) of the resource whose tags are to be removed.
1235 */
1236 resourceArn: ResourceArn;
1237 /**
1238 * A list of tag key names to remove from the resource. You don't specify the value. Both the key and its associated value are removed. This parameter to the API requires a JSON text string argument. For information on how to format a JSON parameter for the various command line tool environments, see Using JSON for Parameters in the AWS CLI User Guide.
1239 */
1240 tagKeys: TagKeyList;
1241 }
1242 export interface UntagResourceResponse {
1243 }
1244 export interface UpdateFlowTemplateRequest {
1245 /**
1246 * The ID of the workflow to be updated. The ID should be in the following format. urn:tdm:REGION/ACCOUNT ID/default:workflow:WORKFLOWNAME
1247 */
1248 id: Urn;
1249 /**
1250 * The DefinitionDocument that contains the updated workflow definition.
1251 */
1252 definition: DefinitionDocument;
1253 /**
1254 * The version of the user's namespace. If no value is specified, the latest version is used by default. Use the GetFlowTemplateRevisions if you want to find earlier revisions of the flow to update.
1255 */
1256 compatibleNamespaceVersion?: Version;
1257 }
1258 export interface UpdateFlowTemplateResponse {
1259 /**
1260 * An object containing summary information about the updated workflow.
1261 */
1262 summary?: FlowTemplateSummary;
1263 }
1264 export interface UpdateSystemTemplateRequest {
1265 /**
1266 * The ID of the system to be updated. The ID should be in the following format. urn:tdm:REGION/ACCOUNT ID/default:system:SYSTEMNAME
1267 */
1268 id: Urn;
1269 /**
1270 * The DefinitionDocument that contains the updated system definition.
1271 */
1272 definition: DefinitionDocument;
1273 /**
1274 * The version of the user's namespace. Defaults to the latest version of the user's namespace. If no value is specified, the latest version is used by default.
1275 */
1276 compatibleNamespaceVersion?: Version;
1277 }
1278 export interface UpdateSystemTemplateResponse {
1279 /**
1280 * An object containing summary information about the updated system.
1281 */
1282 summary?: SystemTemplateSummary;
1283 }
1284 export interface UploadEntityDefinitionsRequest {
1285 /**
1286 * The DefinitionDocument that defines the updated entities.
1287 */
1288 document?: DefinitionDocument;
1289 /**
1290 * A Boolean that specifies whether to synchronize with the latest version of the public namespace. If set to true, the upload will create a new namespace version.
1291 */
1292 syncWithPublicNamespace?: SyncWithPublicNamespace;
1293 /**
1294 * A Boolean that specifies whether to deprecate all entities in the latest version before uploading the new DefinitionDocument. If set to true, the upload will create a new namespace version.
1295 */
1296 deprecateExistingEntities?: DeprecateExistingEntities;
1297 }
1298 export interface UploadEntityDefinitionsResponse {
1299 /**
1300 * The ID that specifies the upload action. You can use this to track the status of the upload.
1301 */
1302 uploadId: UploadId;
1303 }
1304 export type UploadId = string;
1305 export type UploadStatus = "IN_PROGRESS"|"SUCCEEDED"|"FAILED"|string;
1306 export type Urn = string;
1307 export type Urns = Urn[];
1308 export type Version = number;
1309 /**
1310 * 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.
1311 */
1312 export type apiVersion = "2018-09-06"|"latest"|string;
1313 export interface ClientApiVersions {
1314 /**
1315 * 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.
1316 */
1317 apiVersion?: apiVersion;
1318 }
1319 export type ClientConfiguration = ServiceConfigurationOptions & ClientApiVersions;
1320 /**
1321 * Contains interfaces for use with the IoTThingsGraph client.
1322 */
1323 export import Types = IoTThingsGraph;
1324}
1325export = IoTThingsGraph;