1// Code generated by smithy-go-codegen DO NOT EDIT.
2
3package types
4
5import (
6	"time"
7)
8
9// A document that defines an entity.
10type DefinitionDocument struct {
11
12	// The language used to define the entity. GRAPHQL is the only valid value.
13	//
14	// This member is required.
15	Language DefinitionLanguage
16
17	// The GraphQL text that defines the entity.
18	//
19	// This member is required.
20	Text *string
21}
22
23// An object that contains the ID and revision number of a workflow or system that
24// is part of a deployment.
25type DependencyRevision struct {
26
27	// The ID of the workflow or system.
28	Id *string
29
30	// The revision number of the workflow or system.
31	RevisionNumber *int64
32}
33
34// Describes the properties of an entity.
35type EntityDescription struct {
36
37	// The entity ARN.
38	Arn *string
39
40	// The time at which the entity was created.
41	CreatedAt *time.Time
42
43	// The definition document of the entity.
44	Definition *DefinitionDocument
45
46	// The entity ID.
47	Id *string
48
49	// The entity type.
50	Type EntityType
51}
52
53// An object that filters an entity search. Multiple filters function as OR
54// criteria in the search. For example a search that includes a NAMESPACE and a
55// REFERENCED_ENTITY_ID filter searches for entities in the specified namespace
56// that use the entity specified by the value of REFERENCED_ENTITY_ID.
57type EntityFilter struct {
58
59	// The name of the entity search filter field. REFERENCED_ENTITY_ID filters on
60	// entities that are used by the entity in the result set. For example, you can
61	// filter on the ID of a property that is used in a state.
62	Name EntityFilterName
63
64	// An array of string values for the search filter field. Multiple values function
65	// as AND criteria in the search.
66	Value []string
67}
68
69// An object that contains information about a flow event.
70type FlowExecutionMessage struct {
71
72	// The type of flow event .
73	EventType FlowExecutionEventType
74
75	// The unique identifier of the message.
76	MessageId *string
77
78	// A string containing information about the flow event.
79	Payload *string
80
81	// The date and time when the message was last updated.
82	Timestamp *time.Time
83}
84
85// An object that contains summary information about a flow execution.
86type FlowExecutionSummary struct {
87
88	// The date and time when the flow execution summary was created.
89	CreatedAt *time.Time
90
91	// The ID of the flow execution.
92	FlowExecutionId *string
93
94	// The ID of the flow.
95	FlowTemplateId *string
96
97	// The current status of the flow execution.
98	Status FlowExecutionStatus
99
100	// The ID of the system instance that contains the flow.
101	SystemInstanceId *string
102
103	// The date and time when the flow execution summary was last updated.
104	UpdatedAt *time.Time
105}
106
107// An object that contains a workflow's definition and summary information.
108type FlowTemplateDescription struct {
109
110	// A workflow's definition document.
111	Definition *DefinitionDocument
112
113	// An object that contains summary information about a workflow.
114	Summary *FlowTemplateSummary
115
116	// The version of the user's namespace against which the workflow was validated.
117	// Use this value in your system instance.
118	ValidatedNamespaceVersion *int64
119}
120
121// An object that filters a workflow search.
122type FlowTemplateFilter struct {
123
124	// The name of the search filter field.
125	//
126	// This member is required.
127	Name FlowTemplateFilterName
128
129	// An array of string values for the search filter field. Multiple values function
130	// as AND criteria in the search.
131	//
132	// This member is required.
133	Value []string
134}
135
136// An object that contains summary information about a workflow.
137type FlowTemplateSummary struct {
138
139	// The ARN of the workflow.
140	Arn *string
141
142	// The date when the workflow was created.
143	CreatedAt *time.Time
144
145	// The ID of the workflow.
146	Id *string
147
148	// The revision number of the workflow.
149	RevisionNumber *int64
150}
151
152// An object that specifies whether cloud metrics are collected in a deployment
153// and, if so, what role is used to collect metrics.
154type MetricsConfiguration struct {
155
156	// A Boolean that specifies whether cloud metrics are collected.
157	CloudMetricEnabled bool
158
159	// The ARN of the role that is used to collect cloud metrics.
160	MetricRuleRoleArn *string
161}
162
163// An object that contains a system instance definition and summary information.
164type SystemInstanceDescription struct {
165
166	// A document that defines an entity.
167	Definition *DefinitionDocument
168
169	// The AWS Identity and Access Management (IAM) role that AWS IoT Things Graph
170	// assumes during flow execution in a cloud deployment. This role must have read
171	// and write permissionss to AWS Lambda and AWS IoT and to any other AWS services
172	// that the flow uses.
173	FlowActionsRoleArn *string
174
175	// An object that specifies whether cloud metrics are collected in a deployment
176	// and, if so, what role is used to collect metrics.
177	MetricsConfiguration *MetricsConfiguration
178
179	// The Amazon Simple Storage Service bucket where information about a system
180	// instance is stored.
181	S3BucketName *string
182
183	// An object that contains summary information about a system instance.
184	Summary *SystemInstanceSummary
185
186	// A list of objects that contain all of the IDs and revision numbers of workflows
187	// and systems that are used in a system instance.
188	ValidatedDependencyRevisions []DependencyRevision
189
190	// The version of the user's namespace against which the system instance was
191	// validated.
192	ValidatedNamespaceVersion *int64
193}
194
195// An object that filters a system instance search. Multiple filters function as OR
196// criteria in the search. For example a search that includes a
197// GREENGRASS_GROUP_NAME and a STATUS filter searches for system instances in the
198// specified Greengrass group that have the specified status.
199type SystemInstanceFilter struct {
200
201	// The name of the search filter field.
202	Name SystemInstanceFilterName
203
204	// An array of string values for the search filter field. Multiple values function
205	// as AND criteria in the search.
206	Value []string
207}
208
209// An object that contains summary information about a system instance.
210type SystemInstanceSummary struct {
211
212	// The ARN of the system instance.
213	Arn *string
214
215	// The date when the system instance was created.
216	CreatedAt *time.Time
217
218	// The ID of the Greengrass group where the system instance is deployed.
219	GreengrassGroupId *string
220
221	// The ID of the Greengrass group where the system instance is deployed.
222	GreengrassGroupName *string
223
224	// The version of the Greengrass group where the system instance is deployed.
225	GreengrassGroupVersionId *string
226
227	// The ID of the system instance.
228	Id *string
229
230	// The status of the system instance.
231	Status SystemInstanceDeploymentStatus
232
233	// The target of the system instance.
234	Target DeploymentTarget
235
236	// The date and time when the system instance was last updated.
237	UpdatedAt *time.Time
238}
239
240// An object that contains a system's definition document and summary information.
241type SystemTemplateDescription struct {
242
243	// The definition document of a system.
244	Definition *DefinitionDocument
245
246	// An object that contains summary information about a system.
247	Summary *SystemTemplateSummary
248
249	// The namespace version against which the system was validated. Use this value in
250	// your system instance.
251	ValidatedNamespaceVersion *int64
252}
253
254// An object that filters a system search.
255type SystemTemplateFilter struct {
256
257	// The name of the system search filter field.
258	//
259	// This member is required.
260	Name SystemTemplateFilterName
261
262	// An array of string values for the search filter field. Multiple values function
263	// as AND criteria in the search.
264	//
265	// This member is required.
266	Value []string
267}
268
269// An object that contains information about a system.
270type SystemTemplateSummary struct {
271
272	// The ARN of the system.
273	Arn *string
274
275	// The date when the system was created.
276	CreatedAt *time.Time
277
278	// The ID of the system.
279	Id *string
280
281	// The revision number of the system.
282	RevisionNumber *int64
283}
284
285// Metadata assigned to an AWS IoT Things Graph resource consisting of a key-value
286// pair.
287type Tag struct {
288
289	// The required name of the tag. The string value can be from 1 to 128 Unicode
290	// characters in length.
291	//
292	// This member is required.
293	Key *string
294
295	// The optional value of the tag. The string value can be from 1 to 256 Unicode
296	// characters in length.
297	//
298	// This member is required.
299	Value *string
300}
301
302// An AWS IoT thing.
303type Thing struct {
304
305	// The ARN of the thing.
306	ThingArn *string
307
308	// The name of the thing.
309	ThingName *string
310}
311