@aws-sdk/client-timestream-query 3.41.0 → 3.46.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/CHANGELOG.md +47 -0
  2. package/README.md +3 -2
  3. package/dist-cjs/TimestreamQuery.js +150 -0
  4. package/dist-cjs/commands/CreateScheduledQueryCommand.js +38 -0
  5. package/dist-cjs/commands/DeleteScheduledQueryCommand.js +38 -0
  6. package/dist-cjs/commands/DescribeScheduledQueryCommand.js +38 -0
  7. package/dist-cjs/commands/ExecuteScheduledQueryCommand.js +38 -0
  8. package/dist-cjs/commands/ListScheduledQueriesCommand.js +38 -0
  9. package/dist-cjs/commands/ListTagsForResourceCommand.js +38 -0
  10. package/dist-cjs/commands/PrepareQueryCommand.js +38 -0
  11. package/dist-cjs/commands/TagResourceCommand.js +38 -0
  12. package/dist-cjs/commands/UntagResourceCommand.js +38 -0
  13. package/dist-cjs/commands/UpdateScheduledQueryCommand.js +38 -0
  14. package/dist-cjs/commands/index.js +10 -0
  15. package/dist-cjs/endpoints.js +1 -0
  16. package/dist-cjs/models/models_0.js +291 -1
  17. package/dist-cjs/pagination/ListScheduledQueriesPaginator.js +35 -0
  18. package/dist-cjs/pagination/ListTagsForResourcePaginator.js +35 -0
  19. package/dist-cjs/pagination/index.js +2 -0
  20. package/dist-cjs/protocols/Aws_json1_0.js +1580 -34
  21. package/dist-cjs/runtimeConfig.js +0 -2
  22. package/dist-es/TimestreamQuery.js +150 -0
  23. package/dist-es/commands/CreateScheduledQueryCommand.js +41 -0
  24. package/dist-es/commands/DeleteScheduledQueryCommand.js +41 -0
  25. package/dist-es/commands/DescribeScheduledQueryCommand.js +41 -0
  26. package/dist-es/commands/ExecuteScheduledQueryCommand.js +41 -0
  27. package/dist-es/commands/ListScheduledQueriesCommand.js +41 -0
  28. package/dist-es/commands/ListTagsForResourceCommand.js +41 -0
  29. package/dist-es/commands/PrepareQueryCommand.js +41 -0
  30. package/dist-es/commands/TagResourceCommand.js +41 -0
  31. package/dist-es/commands/UntagResourceCommand.js +41 -0
  32. package/dist-es/commands/UpdateScheduledQueryCommand.js +41 -0
  33. package/dist-es/commands/index.js +10 -0
  34. package/dist-es/endpoints.js +1 -0
  35. package/dist-es/models/models_0.js +200 -0
  36. package/dist-es/pagination/ListScheduledQueriesPaginator.js +74 -0
  37. package/dist-es/pagination/ListTagsForResourcePaginator.js +74 -0
  38. package/dist-es/pagination/index.js +2 -0
  39. package/dist-es/protocols/Aws_json1_0.js +1678 -106
  40. package/dist-es/runtimeConfig.js +0 -2
  41. package/dist-types/TimestreamQuery.d.ts +132 -19
  42. package/dist-types/TimestreamQueryClient.d.ts +15 -5
  43. package/dist-types/commands/CancelQueryCommand.d.ts +6 -5
  44. package/dist-types/commands/CreateScheduledQueryCommand.d.ts +39 -0
  45. package/dist-types/commands/DeleteScheduledQueryCommand.d.ts +35 -0
  46. package/dist-types/commands/DescribeEndpointsCommand.d.ts +15 -9
  47. package/dist-types/commands/DescribeScheduledQueryCommand.d.ts +35 -0
  48. package/dist-types/commands/ExecuteScheduledQueryCommand.d.ts +35 -0
  49. package/dist-types/commands/ListScheduledQueriesCommand.d.ts +35 -0
  50. package/dist-types/commands/ListTagsForResourceCommand.d.ts +35 -0
  51. package/dist-types/commands/PrepareQueryCommand.d.ts +37 -0
  52. package/dist-types/commands/QueryCommand.d.ts +30 -2
  53. package/dist-types/commands/TagResourceCommand.d.ts +37 -0
  54. package/dist-types/commands/UntagResourceCommand.d.ts +35 -0
  55. package/dist-types/commands/UpdateScheduledQueryCommand.d.ts +35 -0
  56. package/dist-types/commands/index.d.ts +10 -0
  57. package/dist-types/models/models_0.d.ts +1183 -183
  58. package/dist-types/pagination/ListScheduledQueriesPaginator.d.ts +4 -0
  59. package/dist-types/pagination/ListTagsForResourcePaginator.d.ts +4 -0
  60. package/dist-types/pagination/index.d.ts +2 -0
  61. package/dist-types/protocols/Aws_json1_0.d.ts +30 -0
  62. package/dist-types/ts3.4/TimestreamQuery.d.ts +50 -0
  63. package/dist-types/ts3.4/TimestreamQueryClient.d.ts +12 -2
  64. package/dist-types/ts3.4/commands/CreateScheduledQueryCommand.d.ts +17 -0
  65. package/dist-types/ts3.4/commands/DeleteScheduledQueryCommand.d.ts +17 -0
  66. package/dist-types/ts3.4/commands/DescribeScheduledQueryCommand.d.ts +17 -0
  67. package/dist-types/ts3.4/commands/ExecuteScheduledQueryCommand.d.ts +17 -0
  68. package/dist-types/ts3.4/commands/ListScheduledQueriesCommand.d.ts +17 -0
  69. package/dist-types/ts3.4/commands/ListTagsForResourceCommand.d.ts +17 -0
  70. package/dist-types/ts3.4/commands/PrepareQueryCommand.d.ts +17 -0
  71. package/dist-types/ts3.4/commands/TagResourceCommand.d.ts +17 -0
  72. package/dist-types/ts3.4/commands/UntagResourceCommand.d.ts +17 -0
  73. package/dist-types/ts3.4/commands/UpdateScheduledQueryCommand.d.ts +17 -0
  74. package/dist-types/ts3.4/commands/index.d.ts +10 -0
  75. package/dist-types/ts3.4/models/models_0.d.ts +536 -0
  76. package/dist-types/ts3.4/pagination/ListScheduledQueriesPaginator.d.ts +4 -0
  77. package/dist-types/ts3.4/pagination/ListTagsForResourcePaginator.d.ts +4 -0
  78. package/dist-types/ts3.4/pagination/index.d.ts +2 -0
  79. package/dist-types/ts3.4/protocols/Aws_json1_0.d.ts +30 -0
  80. package/package.json +37 -44
@@ -1,180 +1,999 @@
1
1
  import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types";
2
2
  /**
3
- * <p>
4
- * You are not authorized to perform this action.
5
- * </p>
3
+ * <p> You are not authorized to perform this action. </p>
6
4
  */
7
5
  export interface AccessDeniedException extends __SmithyException, $MetadataBearer {
8
6
  name: "AccessDeniedException";
9
7
  $fault: "client";
10
8
  Message?: string;
11
9
  }
12
- export declare namespace AccessDeniedException {
10
+ export declare namespace AccessDeniedException {
11
+ /**
12
+ * @internal
13
+ */
14
+ const filterSensitiveLog: (obj: AccessDeniedException) => any;
15
+ }
16
+ export interface CancelQueryRequest {
17
+ /**
18
+ * <p> The ID of the query that needs to be cancelled. <code>QueryID</code> is returned as
19
+ * part of the query result. </p>
20
+ */
21
+ QueryId: string | undefined;
22
+ }
23
+ export declare namespace CancelQueryRequest {
24
+ /**
25
+ * @internal
26
+ */
27
+ const filterSensitiveLog: (obj: CancelQueryRequest) => any;
28
+ }
29
+ export interface CancelQueryResponse {
30
+ /**
31
+ * <p> A <code>CancellationMessage</code> is returned when a <code>CancelQuery</code>
32
+ * request for the query specified by <code>QueryId</code> has already been issued. </p>
33
+ */
34
+ CancellationMessage?: string;
35
+ }
36
+ export declare namespace CancelQueryResponse {
37
+ /**
38
+ * @internal
39
+ */
40
+ const filterSensitiveLog: (obj: CancelQueryResponse) => any;
41
+ }
42
+ /**
43
+ * <p>
44
+ * Timestream was unable to fully process this request because of an internal
45
+ * server error. </p>
46
+ */
47
+ export interface InternalServerException extends __SmithyException, $MetadataBearer {
48
+ name: "InternalServerException";
49
+ $fault: "server";
50
+ Message?: string;
51
+ }
52
+ export declare namespace InternalServerException {
53
+ /**
54
+ * @internal
55
+ */
56
+ const filterSensitiveLog: (obj: InternalServerException) => any;
57
+ }
58
+ /**
59
+ * <p>The requested endpoint was not valid.</p>
60
+ */
61
+ export interface InvalidEndpointException extends __SmithyException, $MetadataBearer {
62
+ name: "InvalidEndpointException";
63
+ $fault: "client";
64
+ Message?: string;
65
+ }
66
+ export declare namespace InvalidEndpointException {
67
+ /**
68
+ * @internal
69
+ */
70
+ const filterSensitiveLog: (obj: InvalidEndpointException) => any;
71
+ }
72
+ /**
73
+ * <p>The request was denied due to request throttling.</p>
74
+ */
75
+ export interface ThrottlingException extends __SmithyException, $MetadataBearer {
76
+ name: "ThrottlingException";
77
+ $fault: "client";
78
+ Message?: string;
79
+ }
80
+ export declare namespace ThrottlingException {
81
+ /**
82
+ * @internal
83
+ */
84
+ const filterSensitiveLog: (obj: ThrottlingException) => any;
85
+ }
86
+ /**
87
+ * <p> Invalid or malformed request. </p>
88
+ */
89
+ export interface ValidationException extends __SmithyException, $MetadataBearer {
90
+ name: "ValidationException";
91
+ $fault: "client";
92
+ Message?: string;
93
+ }
94
+ export declare namespace ValidationException {
95
+ /**
96
+ * @internal
97
+ */
98
+ const filterSensitiveLog: (obj: ValidationException) => any;
99
+ }
100
+ export declare enum ScalarType {
101
+ BIGINT = "BIGINT",
102
+ BOOLEAN = "BOOLEAN",
103
+ DATE = "DATE",
104
+ DOUBLE = "DOUBLE",
105
+ INTEGER = "INTEGER",
106
+ INTERVAL_DAY_TO_SECOND = "INTERVAL_DAY_TO_SECOND",
107
+ INTERVAL_YEAR_TO_MONTH = "INTERVAL_YEAR_TO_MONTH",
108
+ TIME = "TIME",
109
+ TIMESTAMP = "TIMESTAMP",
110
+ UNKNOWN = "UNKNOWN",
111
+ VARCHAR = "VARCHAR"
112
+ }
113
+ /**
114
+ * <p> Unable to poll results for a cancelled query. </p>
115
+ */
116
+ export interface ConflictException extends __SmithyException, $MetadataBearer {
117
+ name: "ConflictException";
118
+ $fault: "client";
119
+ Message?: string;
120
+ }
121
+ export declare namespace ConflictException {
122
+ /**
123
+ * @internal
124
+ */
125
+ const filterSensitiveLog: (obj: ConflictException) => any;
126
+ }
127
+ export declare enum S3EncryptionOption {
128
+ SSE_KMS = "SSE_KMS",
129
+ SSE_S3 = "SSE_S3"
130
+ }
131
+ /**
132
+ * <p>Details on S3 location for error reports that result from running a query. </p>
133
+ */
134
+ export interface S3Configuration {
135
+ /**
136
+ * <p> Name of the S3 bucket under which error reports will be created.</p>
137
+ */
138
+ BucketName: string | undefined;
139
+ /**
140
+ * <p> Prefix for the error report key. Timestream by default adds the following prefix to
141
+ * the error report path. </p>
142
+ */
143
+ ObjectKeyPrefix?: string;
144
+ /**
145
+ * <p> Encryption at rest options for the error reports. If no encryption option is
146
+ * specified, Timestream will choose SSE_S3 as default. </p>
147
+ */
148
+ EncryptionOption?: S3EncryptionOption | string;
149
+ }
150
+ export declare namespace S3Configuration {
151
+ /**
152
+ * @internal
153
+ */
154
+ const filterSensitiveLog: (obj: S3Configuration) => any;
155
+ }
156
+ /**
157
+ * <p>Configuration required for error reporting.</p>
158
+ */
159
+ export interface ErrorReportConfiguration {
160
+ /**
161
+ * <p>The S3 configuration for the error reports.</p>
162
+ */
163
+ S3Configuration: S3Configuration | undefined;
164
+ }
165
+ export declare namespace ErrorReportConfiguration {
166
+ /**
167
+ * @internal
168
+ */
169
+ const filterSensitiveLog: (obj: ErrorReportConfiguration) => any;
170
+ }
171
+ /**
172
+ * <p>Details on SNS that are required to send the notification.</p>
173
+ */
174
+ export interface SnsConfiguration {
175
+ /**
176
+ * <p>SNS topic ARN that the scheduled query status notifications will be sent to.</p>
177
+ */
178
+ TopicArn: string | undefined;
179
+ }
180
+ export declare namespace SnsConfiguration {
181
+ /**
182
+ * @internal
183
+ */
184
+ const filterSensitiveLog: (obj: SnsConfiguration) => any;
185
+ }
186
+ /**
187
+ * <p>Notification configuration for a scheduled query. A notification is sent by
188
+ * Timestream when a scheduled query is created, its state is updated or when it is deleted. </p>
189
+ */
190
+ export interface NotificationConfiguration {
191
+ /**
192
+ * <p>Details on SNS configuration. </p>
193
+ */
194
+ SnsConfiguration: SnsConfiguration | undefined;
195
+ }
196
+ export declare namespace NotificationConfiguration {
197
+ /**
198
+ * @internal
199
+ */
200
+ const filterSensitiveLog: (obj: NotificationConfiguration) => any;
201
+ }
202
+ /**
203
+ * <p>Configuration of the schedule of the query.</p>
204
+ */
205
+ export interface ScheduleConfiguration {
206
+ /**
207
+ * <p>An expression that denotes when to trigger the scheduled query run. This can be a cron
208
+ * expression or a rate expression. </p>
209
+ */
210
+ ScheduleExpression: string | undefined;
211
+ }
212
+ export declare namespace ScheduleConfiguration {
213
+ /**
214
+ * @internal
215
+ */
216
+ const filterSensitiveLog: (obj: ScheduleConfiguration) => any;
217
+ }
218
+ /**
219
+ * <p>A tag is a label that you assign to a Timestream database and/or table. Each tag
220
+ * consists of a key and an optional value, both of which you define. Tags enable you to
221
+ * categorize databases and/or tables, for example, by purpose, owner, or environment.
222
+ * </p>
223
+ */
224
+ export interface Tag {
225
+ /**
226
+ * <p>The key of the tag. Tag keys are case sensitive. </p>
227
+ */
228
+ Key: string | undefined;
229
+ /**
230
+ * <p>The value of the tag. Tag values are case sensitive and can be null. </p>
231
+ */
232
+ Value: string | undefined;
233
+ }
234
+ export declare namespace Tag {
235
+ /**
236
+ * @internal
237
+ */
238
+ const filterSensitiveLog: (obj: Tag) => any;
239
+ }
240
+ export declare enum DimensionValueType {
241
+ VARCHAR = "VARCHAR"
242
+ }
243
+ /**
244
+ * <p>This type is used to map column(s) from the query result to a dimension in the
245
+ * destination table.</p>
246
+ */
247
+ export interface DimensionMapping {
248
+ /**
249
+ * <p>Column name from query result.</p>
250
+ */
251
+ Name: string | undefined;
252
+ /**
253
+ * <p>Type for the dimension. </p>
254
+ */
255
+ DimensionValueType: DimensionValueType | string | undefined;
256
+ }
257
+ export declare namespace DimensionMapping {
258
+ /**
259
+ * @internal
260
+ */
261
+ const filterSensitiveLog: (obj: DimensionMapping) => any;
262
+ }
263
+ export declare enum MeasureValueType {
264
+ BIGINT = "BIGINT",
265
+ BOOLEAN = "BOOLEAN",
266
+ DOUBLE = "DOUBLE",
267
+ MULTI = "MULTI",
268
+ VARCHAR = "VARCHAR"
269
+ }
270
+ export declare enum ScalarMeasureValueType {
271
+ BIGINT = "BIGINT",
272
+ BOOLEAN = "BOOLEAN",
273
+ DOUBLE = "DOUBLE",
274
+ VARCHAR = "VARCHAR"
275
+ }
276
+ /**
277
+ * <p>Attribute mapping for MULTI value measures.</p>
278
+ */
279
+ export interface MultiMeasureAttributeMapping {
280
+ /**
281
+ * <p>Source column from where the attribute value is to be read.</p>
282
+ */
283
+ SourceColumn: string | undefined;
284
+ /**
285
+ * <p>Custom name to be used for attribute name in derived table. If not provided, source
286
+ * column name would be used.</p>
287
+ */
288
+ TargetMultiMeasureAttributeName?: string;
289
+ /**
290
+ * <p>Type of the attribute to be read from the source column.</p>
291
+ */
292
+ MeasureValueType: ScalarMeasureValueType | string | undefined;
293
+ }
294
+ export declare namespace MultiMeasureAttributeMapping {
295
+ /**
296
+ * @internal
297
+ */
298
+ const filterSensitiveLog: (obj: MultiMeasureAttributeMapping) => any;
299
+ }
300
+ /**
301
+ * <p>MixedMeasureMappings are mappings that can be used to ingest data into a mixture of
302
+ * narrow and multi measures in the derived table.</p>
303
+ */
304
+ export interface MixedMeasureMapping {
305
+ /**
306
+ * <p>Refers to the value of measure_name in a result row. This field is required if
307
+ * MeasureNameColumn is provided.</p>
308
+ */
309
+ MeasureName?: string;
310
+ /**
311
+ * <p>This field refers to the source column from which measure-value is to be read for
312
+ * result materialization.</p>
313
+ */
314
+ SourceColumn?: string;
315
+ /**
316
+ * <p>Target measure name to be used. If not provided, the target measure name by default
317
+ * would be measure-name if provided, or sourceColumn otherwise. </p>
318
+ */
319
+ TargetMeasureName?: string;
320
+ /**
321
+ * <p>Type of the value that is to be read from sourceColumn. If the mapping is for MULTI,
322
+ * use MeasureValueType.MULTI.</p>
323
+ */
324
+ MeasureValueType: MeasureValueType | string | undefined;
325
+ /**
326
+ * <p>Required when measureValueType is MULTI. Attribute mappings for MULTI value
327
+ * measures.</p>
328
+ */
329
+ MultiMeasureAttributeMappings?: MultiMeasureAttributeMapping[];
330
+ }
331
+ export declare namespace MixedMeasureMapping {
332
+ /**
333
+ * @internal
334
+ */
335
+ const filterSensitiveLog: (obj: MixedMeasureMapping) => any;
336
+ }
337
+ /**
338
+ * <p>Only one of MixedMeasureMappings or MultiMeasureMappings is to be provided.
339
+ * MultiMeasureMappings can be used to ingest data as multi measures in the derived
340
+ * table.</p>
341
+ */
342
+ export interface MultiMeasureMappings {
343
+ /**
344
+ * <p>The name of the target multi-measure name in the derived table. This input is required
345
+ * when measureNameColumn is not provided. If MeasureNameColumn is provided, then value
346
+ * from that column will be used as multi-measure name.</p>
347
+ */
348
+ TargetMultiMeasureName?: string;
349
+ /**
350
+ * <p>Required. Attribute mappings to be used for mapping query results to ingest data for
351
+ * multi-measure attributes.</p>
352
+ */
353
+ MultiMeasureAttributeMappings: MultiMeasureAttributeMapping[] | undefined;
354
+ }
355
+ export declare namespace MultiMeasureMappings {
356
+ /**
357
+ * @internal
358
+ */
359
+ const filterSensitiveLog: (obj: MultiMeasureMappings) => any;
360
+ }
361
+ /**
362
+ * <p> Configuration to write data into Timestream database and table. This configuration
363
+ * allows the user to map the query result select columns into the destination table
364
+ * columns. </p>
365
+ */
366
+ export interface TimestreamConfiguration {
367
+ /**
368
+ * <p>Name of Timestream database to which the query result will be written.</p>
369
+ */
370
+ DatabaseName: string | undefined;
371
+ /**
372
+ * <p>Name of Timestream table that the query result will be written to. The table should
373
+ * be within the same database that is provided in Timestream configuration.</p>
374
+ */
375
+ TableName: string | undefined;
376
+ /**
377
+ * <p>Column from query result that should be used as the time column in destination table.
378
+ * Column type for this should be TIMESTAMP.</p>
379
+ */
380
+ TimeColumn: string | undefined;
381
+ /**
382
+ * <p> This is to allow mapping column(s) from the query result to the dimension in the
383
+ * destination table. </p>
384
+ */
385
+ DimensionMappings: DimensionMapping[] | undefined;
386
+ /**
387
+ * <p>Multi-measure mappings.</p>
388
+ */
389
+ MultiMeasureMappings?: MultiMeasureMappings;
390
+ /**
391
+ * <p>Specifies how to map measures to multi-measure records.</p>
392
+ */
393
+ MixedMeasureMappings?: MixedMeasureMapping[];
394
+ /**
395
+ * <p>Name of the measure column.</p>
396
+ */
397
+ MeasureNameColumn?: string;
398
+ }
399
+ export declare namespace TimestreamConfiguration {
400
+ /**
401
+ * @internal
402
+ */
403
+ const filterSensitiveLog: (obj: TimestreamConfiguration) => any;
404
+ }
405
+ /**
406
+ * <p>Configuration used for writing the output of a query.</p>
407
+ */
408
+ export interface TargetConfiguration {
409
+ /**
410
+ * <p>Configuration needed to write data into the Timestream database and table.</p>
411
+ */
412
+ TimestreamConfiguration: TimestreamConfiguration | undefined;
413
+ }
414
+ export declare namespace TargetConfiguration {
415
+ /**
416
+ * @internal
417
+ */
418
+ const filterSensitiveLog: (obj: TargetConfiguration) => any;
419
+ }
420
+ export interface CreateScheduledQueryRequest {
421
+ /**
422
+ * <p>Name of the scheduled query.</p>
423
+ */
424
+ Name: string | undefined;
425
+ /**
426
+ * <p>The query string to run. Parameter
427
+ * names can be specified in the query string <code>@</code> character followed by an
428
+ * identifier. The named Parameter <code>@scheduled_runtime</code> is reserved and can be used in the query to get the time at which the query is scheduled to run.</p>
429
+ * <p>The timestamp calculated according to the ScheduleConfiguration parameter, will be the value of <code>@scheduled_runtime</code> paramater for each query run.
430
+ * For example, consider an instance of a scheduled query executing on 2021-12-01 00:00:00. For this instance, the <code>@scheduled_runtime</code> parameter is
431
+ * initialized to the timestamp 2021-12-01 00:00:00 when invoking the query.</p>
432
+ */
433
+ QueryString: string | undefined;
434
+ /**
435
+ * <p>The schedule configuration for the query.</p>
436
+ */
437
+ ScheduleConfiguration: ScheduleConfiguration | undefined;
438
+ /**
439
+ * <p>Notification configuration for the scheduled query. A notification is sent by
440
+ * Timestream when a query run finishes, when the state is updated or when you delete it. </p>
441
+ */
442
+ NotificationConfiguration: NotificationConfiguration | undefined;
443
+ /**
444
+ * <p>Configuration used for writing the result of a query.</p>
445
+ */
446
+ TargetConfiguration?: TargetConfiguration;
447
+ /**
448
+ * <p>Using a ClientToken makes the call to CreateScheduledQuery idempotent, in other words, making the same request repeatedly will produce the same result. Making
449
+ * multiple identical CreateScheduledQuery requests has the same effect as making a single request.
450
+ *
451
+ * </p>
452
+ * <ul>
453
+ * <li>
454
+ * <p> If CreateScheduledQuery is called without a <code>ClientToken</code>, the
455
+ * Query SDK generates a <code>ClientToken</code> on your behalf.</p>
456
+ * </li>
457
+ * <li>
458
+ * <p> After 8 hours, any request with the same <code>ClientToken</code> is treated
459
+ * as a new request. </p>
460
+ * </li>
461
+ * </ul>
462
+ */
463
+ ClientToken?: string;
464
+ /**
465
+ * <p>The ARN for the IAM role that Timestream will assume when running the scheduled query. </p>
466
+ */
467
+ ScheduledQueryExecutionRoleArn: string | undefined;
468
+ /**
469
+ * <p>A list of key-value pairs to label the scheduled query.</p>
470
+ */
471
+ Tags?: Tag[];
472
+ /**
473
+ * <p>The Amazon KMS key used to encrypt the scheduled query resource, at-rest. If the Amazon KMS
474
+ * key is not specified, the scheduled query resource will be encrypted with a Timestream
475
+ * owned Amazon KMS key. To specify a KMS key, use the key ID, key ARN, alias name, or alias
476
+ * ARN. When using an alias name, prefix the name with <i>alias/</i>
477
+ * </p>
478
+ * <p>If ErrorReportConfiguration uses <code>SSE_KMS</code> as encryption type, the same KmsKeyId is used to encrypt the error report at rest.</p>
479
+ */
480
+ KmsKeyId?: string;
481
+ /**
482
+ * <p>Configuration for error reporting. Error reports will be generated when a problem is encountered when writing the query results. </p>
483
+ */
484
+ ErrorReportConfiguration: ErrorReportConfiguration | undefined;
485
+ }
486
+ export declare namespace CreateScheduledQueryRequest {
487
+ /**
488
+ * @internal
489
+ */
490
+ const filterSensitiveLog: (obj: CreateScheduledQueryRequest) => any;
491
+ }
492
+ export interface CreateScheduledQueryResponse {
493
+ /**
494
+ * <p>ARN for the created scheduled query.</p>
495
+ */
496
+ Arn: string | undefined;
497
+ }
498
+ export declare namespace CreateScheduledQueryResponse {
499
+ /**
500
+ * @internal
501
+ */
502
+ const filterSensitiveLog: (obj: CreateScheduledQueryResponse) => any;
503
+ }
504
+ /**
505
+ * <p>You have exceeded the service quota.</p>
506
+ */
507
+ export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer {
508
+ name: "ServiceQuotaExceededException";
509
+ $fault: "client";
510
+ Message?: string;
511
+ }
512
+ export declare namespace ServiceQuotaExceededException {
513
+ /**
514
+ * @internal
515
+ */
516
+ const filterSensitiveLog: (obj: ServiceQuotaExceededException) => any;
517
+ }
518
+ export interface DeleteScheduledQueryRequest {
519
+ /**
520
+ * <p>The ARN of the scheduled query. </p>
521
+ */
522
+ ScheduledQueryArn: string | undefined;
523
+ }
524
+ export declare namespace DeleteScheduledQueryRequest {
525
+ /**
526
+ * @internal
527
+ */
528
+ const filterSensitiveLog: (obj: DeleteScheduledQueryRequest) => any;
529
+ }
530
+ /**
531
+ * <p>The requested resource could not be found.</p>
532
+ */
533
+ export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer {
534
+ name: "ResourceNotFoundException";
535
+ $fault: "client";
536
+ Message?: string;
537
+ /**
538
+ * <p>The ARN of the scheduled query.</p>
539
+ */
540
+ ScheduledQueryArn?: string;
541
+ }
542
+ export declare namespace ResourceNotFoundException {
543
+ /**
544
+ * @internal
545
+ */
546
+ const filterSensitiveLog: (obj: ResourceNotFoundException) => any;
547
+ }
548
+ export interface DescribeEndpointsRequest {
549
+ }
550
+ export declare namespace DescribeEndpointsRequest {
551
+ /**
552
+ * @internal
553
+ */
554
+ const filterSensitiveLog: (obj: DescribeEndpointsRequest) => any;
555
+ }
556
+ /**
557
+ * <p>Represents an available endpoint against which to make API calls against, as well as
558
+ * the TTL for that endpoint.</p>
559
+ */
560
+ export interface Endpoint {
561
+ /**
562
+ * <p>An endpoint address.</p>
563
+ */
564
+ Address: string | undefined;
565
+ /**
566
+ * <p>The TTL for the endpoint, in minutes.</p>
567
+ */
568
+ CachePeriodInMinutes: number | undefined;
569
+ }
570
+ export declare namespace Endpoint {
571
+ /**
572
+ * @internal
573
+ */
574
+ const filterSensitiveLog: (obj: Endpoint) => any;
575
+ }
576
+ export interface DescribeEndpointsResponse {
577
+ /**
578
+ * <p>An <code>Endpoints</code> object is returned when a <code>DescribeEndpoints</code>
579
+ * request is made.</p>
580
+ */
581
+ Endpoints: Endpoint[] | undefined;
582
+ }
583
+ export declare namespace DescribeEndpointsResponse {
584
+ /**
585
+ * @internal
586
+ */
587
+ const filterSensitiveLog: (obj: DescribeEndpointsResponse) => any;
588
+ }
589
+ export interface DescribeScheduledQueryRequest {
590
+ /**
591
+ * <p>The ARN of the scheduled query.</p>
592
+ */
593
+ ScheduledQueryArn: string | undefined;
594
+ }
595
+ export declare namespace DescribeScheduledQueryRequest {
596
+ /**
597
+ * @internal
598
+ */
599
+ const filterSensitiveLog: (obj: DescribeScheduledQueryRequest) => any;
600
+ }
601
+ /**
602
+ * <p> S3 report location for the scheduled query run.</p>
603
+ */
604
+ export interface S3ReportLocation {
605
+ /**
606
+ * <p> S3 bucket name. </p>
607
+ */
608
+ BucketName?: string;
609
+ /**
610
+ * <p>S3 key. </p>
611
+ */
612
+ ObjectKey?: string;
613
+ }
614
+ export declare namespace S3ReportLocation {
615
+ /**
616
+ * @internal
617
+ */
618
+ const filterSensitiveLog: (obj: S3ReportLocation) => any;
619
+ }
620
+ /**
621
+ * <p>This contains the location of the error report for a single scheduled query call.
622
+ * </p>
623
+ */
624
+ export interface ErrorReportLocation {
625
+ /**
626
+ * <p>The S3 location where error reports are written.</p>
627
+ */
628
+ S3ReportLocation?: S3ReportLocation;
629
+ }
630
+ export declare namespace ErrorReportLocation {
631
+ /**
632
+ * @internal
633
+ */
634
+ const filterSensitiveLog: (obj: ErrorReportLocation) => any;
635
+ }
636
+ /**
637
+ * <p>Statistics for a single scheduled query run.</p>
638
+ */
639
+ export interface ExecutionStats {
640
+ /**
641
+ * <p>Total time, measured in milliseconds, that was needed for the scheduled query run to complete.</p>
642
+ */
643
+ ExecutionTimeInMillis?: number;
644
+ /**
645
+ * <p>Data writes metered for records ingested in a single scheduled query run.</p>
646
+ */
647
+ DataWrites?: number;
648
+ /**
649
+ * <p>Bytes metered for a single scheduled query run.</p>
650
+ */
651
+ BytesMetered?: number;
652
+ /**
653
+ * <p>The number of records ingested for a single scheduled query run. </p>
654
+ */
655
+ RecordsIngested?: number;
656
+ /**
657
+ * <p>Number of rows present in the output from running a query before ingestion to
658
+ * destination data source.</p>
659
+ */
660
+ QueryResultRows?: number;
661
+ }
662
+ export declare namespace ExecutionStats {
663
+ /**
664
+ * @internal
665
+ */
666
+ const filterSensitiveLog: (obj: ExecutionStats) => any;
667
+ }
668
+ export declare enum ScheduledQueryRunStatus {
669
+ AUTO_TRIGGER_FAILURE = "AUTO_TRIGGER_FAILURE",
670
+ AUTO_TRIGGER_SUCCESS = "AUTO_TRIGGER_SUCCESS",
671
+ MANUAL_TRIGGER_FAILURE = "MANUAL_TRIGGER_FAILURE",
672
+ MANUAL_TRIGGER_SUCCESS = "MANUAL_TRIGGER_SUCCESS"
673
+ }
674
+ /**
675
+ * <p>Run summary for the scheduled query</p>
676
+ */
677
+ export interface ScheduledQueryRunSummary {
678
+ /**
679
+ * <p>InvocationTime for this run. This is the time at which the query is scheduled to run.
680
+ * Parameter <code>@scheduled_runtime</code> can be used in the query to get the value. </p>
681
+ */
682
+ InvocationTime?: Date;
683
+ /**
684
+ * <p>The actual time when the query was run.</p>
685
+ */
686
+ TriggerTime?: Date;
687
+ /**
688
+ * <p>The status of a scheduled query run.</p>
689
+ */
690
+ RunStatus?: ScheduledQueryRunStatus | string;
691
+ /**
692
+ * <p>Runtime statistics for a scheduled run.</p>
693
+ */
694
+ ExecutionStats?: ExecutionStats;
695
+ /**
696
+ * <p>S3 location for error report.</p>
697
+ */
698
+ ErrorReportLocation?: ErrorReportLocation;
699
+ /**
700
+ * <p>Error message for the scheduled query in case of failure. You might have to look at
701
+ * the error report to get more detailed error reasons. </p>
702
+ */
703
+ FailureReason?: string;
704
+ }
705
+ export declare namespace ScheduledQueryRunSummary {
706
+ /**
707
+ * @internal
708
+ */
709
+ const filterSensitiveLog: (obj: ScheduledQueryRunSummary) => any;
710
+ }
711
+ export declare enum ScheduledQueryState {
712
+ DISABLED = "DISABLED",
713
+ ENABLED = "ENABLED"
714
+ }
715
+ /**
716
+ * <p>Structure that describes scheduled query.</p>
717
+ */
718
+ export interface ScheduledQueryDescription {
719
+ /**
720
+ * <p>Scheduled query ARN.</p>
721
+ */
722
+ Arn: string | undefined;
723
+ /**
724
+ * <p>Name of the scheduled query.</p>
725
+ */
726
+ Name: string | undefined;
727
+ /**
728
+ * <p>The query to be run.</p>
729
+ */
730
+ QueryString: string | undefined;
731
+ /**
732
+ * <p>Creation time of the scheduled query.</p>
733
+ */
734
+ CreationTime?: Date;
735
+ /**
736
+ * <p>State of the scheduled query. </p>
737
+ */
738
+ State: ScheduledQueryState | string | undefined;
739
+ /**
740
+ * <p>Last time the query was run.</p>
741
+ */
742
+ PreviousInvocationTime?: Date;
743
+ /**
744
+ * <p>The next time the scheduled query is scheduled to run.</p>
745
+ */
746
+ NextInvocationTime?: Date;
747
+ /**
748
+ * <p>Schedule configuration.</p>
749
+ */
750
+ ScheduleConfiguration: ScheduleConfiguration | undefined;
751
+ /**
752
+ * <p>Notification configuration.</p>
753
+ */
754
+ NotificationConfiguration: NotificationConfiguration | undefined;
755
+ /**
756
+ * <p>Scheduled query target store configuration.</p>
757
+ */
758
+ TargetConfiguration?: TargetConfiguration;
759
+ /**
760
+ * <p>IAM role that Timestream uses to run the schedule query.</p>
761
+ */
762
+ ScheduledQueryExecutionRoleArn?: string;
763
+ /**
764
+ * <p>A customer provided KMS key used to encrypt the scheduled query resource.</p>
765
+ */
766
+ KmsKeyId?: string;
767
+ /**
768
+ * <p>Error-reporting configuration for the scheduled query.</p>
769
+ */
770
+ ErrorReportConfiguration?: ErrorReportConfiguration;
771
+ /**
772
+ * <p>Runtime summary for the last scheduled query run. </p>
773
+ */
774
+ LastRunSummary?: ScheduledQueryRunSummary;
775
+ /**
776
+ * <p>Runtime summary for the last five failed scheduled query runs.</p>
777
+ */
778
+ RecentlyFailedRuns?: ScheduledQueryRunSummary[];
779
+ }
780
+ export declare namespace ScheduledQueryDescription {
13
781
  /**
14
782
  * @internal
15
783
  */
16
- const filterSensitiveLog: (obj: AccessDeniedException) => any;
784
+ const filterSensitiveLog: (obj: ScheduledQueryDescription) => any;
17
785
  }
18
- export interface CancelQueryRequest {
786
+ export interface DescribeScheduledQueryResponse {
19
787
  /**
20
- * <p>
21
- * The id of the query that needs to be cancelled. <code>QueryID</code> is returned as part of QueryResult.
22
- * </p>
788
+ * <p>The scheduled query.</p>
23
789
  */
24
- QueryId: string | undefined;
790
+ ScheduledQuery: ScheduledQueryDescription | undefined;
25
791
  }
26
- export declare namespace CancelQueryRequest {
792
+ export declare namespace DescribeScheduledQueryResponse {
27
793
  /**
28
794
  * @internal
29
795
  */
30
- const filterSensitiveLog: (obj: CancelQueryRequest) => any;
796
+ const filterSensitiveLog: (obj: DescribeScheduledQueryResponse) => any;
31
797
  }
32
- export interface CancelQueryResponse {
798
+ export interface ExecuteScheduledQueryRequest {
33
799
  /**
34
- * <p>
35
- * A <code>CancellationMessage</code> is returned when a <code>CancelQuery</code> request for the query specified by <code>QueryId</code> has already been issued.
36
- * </p>
800
+ * <p>ARN of the scheduled query.</p>
37
801
  */
38
- CancellationMessage?: string;
802
+ ScheduledQueryArn: string | undefined;
803
+ /**
804
+ * <p>The timestamp in UTC. Query will be run as if it was invoked at this timestamp. </p>
805
+ */
806
+ InvocationTime: Date | undefined;
807
+ /**
808
+ * <p>Not used. </p>
809
+ */
810
+ ClientToken?: string;
39
811
  }
40
- export declare namespace CancelQueryResponse {
812
+ export declare namespace ExecuteScheduledQueryRequest {
41
813
  /**
42
814
  * @internal
43
815
  */
44
- const filterSensitiveLog: (obj: CancelQueryResponse) => any;
816
+ const filterSensitiveLog: (obj: ExecuteScheduledQueryRequest) => any;
45
817
  }
46
- /**
47
- * <p>
48
- * Timestream was unable to fully process this request because of an internal server error.
49
- * </p>
50
- */
51
- export interface InternalServerException extends __SmithyException, $MetadataBearer {
52
- name: "InternalServerException";
53
- $fault: "server";
54
- Message?: string;
818
+ export interface ListScheduledQueriesRequest {
819
+ /**
820
+ * <p>The maximum number of items to return in the output. If the total number of items
821
+ * available is more than the value specified, a <code>NextToken</code> is provided in the
822
+ * output. To resume pagination, provide the <code>NextToken</code> value as the argument
823
+ * to the subsequent call to <code>ListScheduledQueriesRequest</code>.</p>
824
+ */
825
+ MaxResults?: number;
826
+ /**
827
+ * <p> A pagination token to resume pagination.</p>
828
+ */
829
+ NextToken?: string;
55
830
  }
56
- export declare namespace InternalServerException {
831
+ export declare namespace ListScheduledQueriesRequest {
57
832
  /**
58
833
  * @internal
59
834
  */
60
- const filterSensitiveLog: (obj: InternalServerException) => any;
835
+ const filterSensitiveLog: (obj: ListScheduledQueriesRequest) => any;
61
836
  }
62
837
  /**
63
- * <p>The requested endpoint was invalid.</p>
838
+ * <p>Destination for scheduled query.</p>
64
839
  */
65
- export interface InvalidEndpointException extends __SmithyException, $MetadataBearer {
66
- name: "InvalidEndpointException";
67
- $fault: "client";
68
- Message?: string;
840
+ export interface TimestreamDestination {
841
+ /**
842
+ * <p>Timestream database name. </p>
843
+ */
844
+ DatabaseName?: string;
845
+ /**
846
+ * <p>Timestream table name. </p>
847
+ */
848
+ TableName?: string;
69
849
  }
70
- export declare namespace InvalidEndpointException {
850
+ export declare namespace TimestreamDestination {
71
851
  /**
72
852
  * @internal
73
853
  */
74
- const filterSensitiveLog: (obj: InvalidEndpointException) => any;
854
+ const filterSensitiveLog: (obj: TimestreamDestination) => any;
75
855
  }
76
856
  /**
77
- * <p>The request was denied due to request throttling.</p>
857
+ * <p>Destination details to write data for a target data source. Current supported data
858
+ * source is Timestream.</p>
78
859
  */
79
- export interface ThrottlingException extends __SmithyException, $MetadataBearer {
80
- name: "ThrottlingException";
81
- $fault: "client";
82
- Message?: string;
860
+ export interface TargetDestination {
861
+ /**
862
+ * <p>Query result destination details for Timestream data source.</p>
863
+ */
864
+ TimestreamDestination?: TimestreamDestination;
83
865
  }
84
- export declare namespace ThrottlingException {
866
+ export declare namespace TargetDestination {
85
867
  /**
86
868
  * @internal
87
869
  */
88
- const filterSensitiveLog: (obj: ThrottlingException) => any;
870
+ const filterSensitiveLog: (obj: TargetDestination) => any;
89
871
  }
90
872
  /**
91
- * <p>
92
- * Invalid or malformed request.
93
- * </p>
873
+ * <p>Scheduled Query</p>
94
874
  */
95
- export interface ValidationException extends __SmithyException, $MetadataBearer {
96
- name: "ValidationException";
97
- $fault: "client";
98
- Message?: string;
875
+ export interface ScheduledQuery {
876
+ /**
877
+ * <p>The Amazon Resource Name.</p>
878
+ */
879
+ Arn: string | undefined;
880
+ /**
881
+ * <p>The name of the scheduled query.</p>
882
+ */
883
+ Name: string | undefined;
884
+ /**
885
+ * <p>The creation time of the scheduled query.</p>
886
+ */
887
+ CreationTime?: Date;
888
+ /**
889
+ * <p>State of scheduled query. </p>
890
+ */
891
+ State: ScheduledQueryState | string | undefined;
892
+ /**
893
+ * <p>The last time the scheduled query was run.</p>
894
+ */
895
+ PreviousInvocationTime?: Date;
896
+ /**
897
+ * <p>The next time the scheduled query is to be run.</p>
898
+ */
899
+ NextInvocationTime?: Date;
900
+ /**
901
+ * <p>Configuration for scheduled query error reporting.</p>
902
+ */
903
+ ErrorReportConfiguration?: ErrorReportConfiguration;
904
+ /**
905
+ * <p>Target data source where final scheduled query result will be written.</p>
906
+ */
907
+ TargetDestination?: TargetDestination;
908
+ /**
909
+ * <p>Status of the last scheduled query run.</p>
910
+ */
911
+ LastRunStatus?: ScheduledQueryRunStatus | string;
99
912
  }
100
- export declare namespace ValidationException {
913
+ export declare namespace ScheduledQuery {
101
914
  /**
102
915
  * @internal
103
916
  */
104
- const filterSensitiveLog: (obj: ValidationException) => any;
105
- }
106
- export declare enum ScalarType {
107
- BIGINT = "BIGINT",
108
- BOOLEAN = "BOOLEAN",
109
- DATE = "DATE",
110
- DOUBLE = "DOUBLE",
111
- INTEGER = "INTEGER",
112
- INTERVAL_DAY_TO_SECOND = "INTERVAL_DAY_TO_SECOND",
113
- INTERVAL_YEAR_TO_MONTH = "INTERVAL_YEAR_TO_MONTH",
114
- TIME = "TIME",
115
- TIMESTAMP = "TIMESTAMP",
116
- UNKNOWN = "UNKNOWN",
117
- VARCHAR = "VARCHAR"
917
+ const filterSensitiveLog: (obj: ScheduledQuery) => any;
118
918
  }
119
- /**
120
- * <p>
121
- * Unable to poll results for a cancelled query.
122
- * </p>
123
- */
124
- export interface ConflictException extends __SmithyException, $MetadataBearer {
125
- name: "ConflictException";
126
- $fault: "client";
127
- Message?: string;
919
+ export interface ListScheduledQueriesResponse {
920
+ /**
921
+ * <p>A list of scheduled queries.</p>
922
+ */
923
+ ScheduledQueries: ScheduledQuery[] | undefined;
924
+ /**
925
+ * <p>A token to specify where to start paginating. This is the NextToken from a previously
926
+ * truncated response.</p>
927
+ */
928
+ NextToken?: string;
128
929
  }
129
- export declare namespace ConflictException {
930
+ export declare namespace ListScheduledQueriesResponse {
130
931
  /**
131
932
  * @internal
132
933
  */
133
- const filterSensitiveLog: (obj: ConflictException) => any;
934
+ const filterSensitiveLog: (obj: ListScheduledQueriesResponse) => any;
134
935
  }
135
- export interface DescribeEndpointsRequest {
936
+ export interface ListTagsForResourceRequest {
937
+ /**
938
+ * <p>The Timestream resource with tags to be listed. This value is an Amazon Resource Name
939
+ * (ARN).</p>
940
+ */
941
+ ResourceARN: string | undefined;
942
+ /**
943
+ * <p>The maximum number of tags to return.</p>
944
+ */
945
+ MaxResults?: number;
946
+ /**
947
+ * <p>A pagination token to resume pagination.</p>
948
+ */
949
+ NextToken?: string;
136
950
  }
137
- export declare namespace DescribeEndpointsRequest {
951
+ export declare namespace ListTagsForResourceRequest {
138
952
  /**
139
953
  * @internal
140
954
  */
141
- const filterSensitiveLog: (obj: DescribeEndpointsRequest) => any;
955
+ const filterSensitiveLog: (obj: ListTagsForResourceRequest) => any;
142
956
  }
143
- /**
144
- * <p>Represents an available endpoint against which to make API calls agaisnt, as well as the TTL for that endpoint.</p>
145
- */
146
- export interface Endpoint {
957
+ export interface ListTagsForResourceResponse {
147
958
  /**
148
- * <p>An endpoint address.</p>
959
+ * <p>The tags currently associated with the Timestream resource. </p>
149
960
  */
150
- Address: string | undefined;
961
+ Tags: Tag[] | undefined;
151
962
  /**
152
- * <p>The TTL for the endpoint, in minutes.</p>
963
+ * <p>A pagination token to resume pagination with a subsequent call to
964
+ * <code>ListTagsForResourceResponse</code>.</p>
153
965
  */
154
- CachePeriodInMinutes: number | undefined;
966
+ NextToken?: string;
155
967
  }
156
- export declare namespace Endpoint {
968
+ export declare namespace ListTagsForResourceResponse {
157
969
  /**
158
970
  * @internal
159
971
  */
160
- const filterSensitiveLog: (obj: Endpoint) => any;
972
+ const filterSensitiveLog: (obj: ListTagsForResourceResponse) => any;
161
973
  }
162
- export interface DescribeEndpointsResponse {
974
+ export interface PrepareQueryRequest {
163
975
  /**
164
- * <p>An <code>Endpoints</code> object is returned when a <code>DescribeEndpoints</code> request is made.</p>
976
+ * <p>The Timestream query string that you want to use as a prepared statement. Parameter
977
+ * names can be specified in the query string <code>@</code> character followed by an
978
+ * identifier. </p>
165
979
  */
166
- Endpoints: Endpoint[] | undefined;
980
+ QueryString: string | undefined;
981
+ /**
982
+ * <p>By setting this value to <code>true</code>, Timestream will only validate that the
983
+ * query string is a valid Timestream query, and not store the prepared query for later
984
+ * use.</p>
985
+ */
986
+ ValidateOnly?: boolean;
167
987
  }
168
- export declare namespace DescribeEndpointsResponse {
988
+ export declare namespace PrepareQueryRequest {
169
989
  /**
170
990
  * @internal
171
991
  */
172
- const filterSensitiveLog: (obj: DescribeEndpointsResponse) => any;
992
+ const filterSensitiveLog: (obj: PrepareQueryRequest) => any;
173
993
  }
174
994
  /**
175
995
  * <p>
176
- * Timestream was unable to run the query successfully.
177
- * </p>
996
+ * Timestream was unable to run the query successfully. </p>
178
997
  */
179
998
  export interface QueryExecutionException extends __SmithyException, $MetadataBearer {
180
999
  name: "QueryExecutionException";
@@ -189,50 +1008,102 @@ export declare namespace QueryExecutionException {
189
1008
  }
190
1009
  export interface QueryRequest {
191
1010
  /**
192
- * <p>
193
- * The query to be executed by Timestream.
194
- * </p>
1011
+ * <p> The query to be run by Timestream. </p>
195
1012
  */
196
1013
  QueryString: string | undefined;
197
1014
  /**
198
- * <p>
199
- * Unique, case-sensitive string of up to 64 ASCII characters that you specify when you make a Query request.
200
- * Providing a <code>ClientToken</code> makes the call to <code>Query</code> idempotent, meaning that multiple identical calls
201
- * have the same effect as one single call.
202
- * </p>
203
- *
204
- * <p>Your query request will fail in the following cases:</p>
205
- * <ul>
1015
+ * <p> Unique, case-sensitive string of up to 64 ASCII characters specified when a
1016
+ * <code>Query</code> request is made. Providing a <code>ClientToken</code> makes the
1017
+ * call to <code>Query</code>
1018
+ * <i>idempotent</i>. This means that running the same query repeatedly will
1019
+ * produce the same result. In other words, making multiple identical <code>Query</code>
1020
+ * requests has the same effect as making a single request. When using
1021
+ * <code>ClientToken</code> in a query, note the following: </p>
1022
+ * <ul>
206
1023
  * <li>
207
- * <p>
208
- * If you submit a request with the same client token outside the 5-minute idepotency window.
209
- * </p>
210
- * </li>
1024
+ * <p> If the Query API is instantiated without a <code>ClientToken</code>, the
1025
+ * Query SDK generates a <code>ClientToken</code> on your behalf.</p>
1026
+ * </li>
211
1027
  * <li>
212
- * <p>
213
- * If you submit a request with the same client token but a change in other parameters within the 5-minute idempotency window.
214
- * </p>
215
- * </li>
1028
+ * <p>If the <code>Query</code> invocation only contains the
1029
+ * <code>ClientToken</code> but does not include a <code>NextToken</code>, that
1030
+ * invocation of <code>Query</code> is assumed to be a new query run.</p>
1031
+ * </li>
1032
+ * <li>
1033
+ * <p>If the invocation contains <code>NextToken</code>, that particular invocation
1034
+ * is assumed to be a subsequent invocation of a prior call to the Query API, and a
1035
+ * result set is returned.</p>
1036
+ * </li>
1037
+ * <li>
1038
+ * <p> After 4 hours, any request with the same <code>ClientToken</code> is treated
1039
+ * as a new request. </p>
1040
+ * </li>
216
1041
  * </ul>
217
- *
218
- * <p>
219
- * After 4 hours, any request with the same client token is treated as a new request.
220
- * </p>
221
1042
  */
222
1043
  ClientToken?: string;
223
1044
  /**
224
- * <p>
225
- * A pagination token passed to get a set of results.
226
- * </p>
1045
+ * <p> A pagination token used to return a set of results. When the <code>Query</code> API
1046
+ * is invoked using <code>NextToken</code>, that particular invocation is assumed to be a
1047
+ * subsequent invocation of a prior call to <code>Query</code>, and a result set is
1048
+ * returned. However, if the <code>Query</code> invocation only contains the
1049
+ * <code>ClientToken</code>, that invocation of <code>Query</code> is assumed to be a
1050
+ * new query run. </p>
1051
+ * <p>Note the following when using NextToken in a query:</p>
1052
+ * <ul>
1053
+ * <li>
1054
+ * <p>A pagination token can be used for up to five <code>Query</code> invocations,
1055
+ * OR for a duration of up to 1 hour – whichever comes first.</p>
1056
+ * </li>
1057
+ * <li>
1058
+ * <p>Using the same <code>NextToken</code> will return the same set of records. To
1059
+ * keep paginating through the result set, you must to use the most recent
1060
+ * <code>nextToken</code>.</p>
1061
+ * </li>
1062
+ * <li>
1063
+ * <p>Suppose a <code>Query</code> invocation returns two <code>NextToken</code>
1064
+ * values, <code>TokenA</code> and <code>TokenB</code>. If <code>TokenB</code> is
1065
+ * used in a subsequent <code>Query</code> invocation, then <code>TokenA</code> is
1066
+ * invalidated and cannot be reused.</p>
1067
+ * </li>
1068
+ * <li>
1069
+ * <p>To request a previous result set from a query after pagination has begun, you
1070
+ * must re-invoke the Query API.</p>
1071
+ * </li>
1072
+ * <li>
1073
+ * <p>The latest <code>NextToken</code> should be used to paginate until
1074
+ * <code>null</code> is returned, at which point a new <code>NextToken</code>
1075
+ * should be used.</p>
1076
+ * </li>
1077
+ * <li>
1078
+ * <p> If the IAM principal of the query initiator and the result reader are not the
1079
+ * same and/or the query initiator and the result reader do not have the same query
1080
+ * string in the query requests, the query will fail with an <code>Invalid
1081
+ * pagination token</code> error. </p>
1082
+ * </li>
1083
+ * </ul>
227
1084
  */
228
1085
  NextToken?: string;
229
1086
  /**
230
- * <p>
231
- * The total number of rows to return in the output. If the total number of rows available
232
- * is more than the value specified, a NextToken is provided in the command's output.
233
- * To resume pagination, provide the NextToken value in the starting-token argument of a
234
- * subsequent command.
235
- * </p>
1087
+ * <p> The total number of rows to be returned in the <code>Query</code> output. The initial
1088
+ * run of <code>Query</code> with a <code>MaxRows</code> value specified will return the
1089
+ * result set of the query in two cases: </p>
1090
+ * <ul>
1091
+ * <li>
1092
+ * <p>The size of the result is less than <code>1MB</code>.</p>
1093
+ * </li>
1094
+ * <li>
1095
+ * <p>The number of rows in the result set is less than the value of
1096
+ * <code>maxRows</code>.</p>
1097
+ * </li>
1098
+ * </ul>
1099
+ * <p>Otherwise, the initial invocation of <code>Query</code> only returns a
1100
+ * <code>NextToken</code>, which can then be used in subsequent calls to fetch the
1101
+ * result set. To resume pagination, provide the <code>NextToken</code> value in the
1102
+ * subsequent command.</p>
1103
+ * <p>If the row size is large (e.g. a row has many columns), Timestream may return
1104
+ * fewer rows to keep the response size from exceeding the 1 MB limit. If
1105
+ * <code>MaxRows</code> is not provided, Timestream will send the necessary
1106
+ * number of rows to meet the 1 MB limit.</p>
236
1107
  */
237
1108
  MaxRows?: number;
238
1109
  }
@@ -243,7 +1114,8 @@ export declare namespace QueryRequest {
243
1114
  const filterSensitiveLog: (obj: QueryRequest) => any;
244
1115
  }
245
1116
  /**
246
- * <p>Information about the status of the query, including progress and bytes scannned.</p>
1117
+ * <p>Information about the status of the query, including progress and bytes
1118
+ * scanned.</p>
247
1119
  */
248
1120
  export interface QueryStatus {
249
1121
  /**
@@ -251,18 +1123,15 @@ export interface QueryStatus {
251
1123
  */
252
1124
  ProgressPercentage?: number;
253
1125
  /**
254
- * <p>The amount of data scanned by the query in bytes.
255
- * This is a cumulative sum and represents the total amount of bytes scanned since the query was started.
256
- * </p>
1126
+ * <p>The amount of data scanned by the query in bytes. This is a cumulative sum and
1127
+ * represents the total amount of bytes scanned since the query was started. </p>
257
1128
  */
258
1129
  CumulativeBytesScanned?: number;
259
1130
  /**
260
- * <p>The amount of data scanned by the query in bytes that you will be charged for.
261
- * This is a cumulative sum and represents the total amount of data that you will be charged
262
- * for since the query was started.
263
- * The charge is applied only once and is either applied when
264
- * the query completes execution or when the query is cancelled.
265
- * </p>
1131
+ * <p>The amount of data scanned by the query in bytes that you will be charged for. This is
1132
+ * a cumulative sum and represents the total amount of data that you will be charged for
1133
+ * since the query was started. The charge is applied only once and is either applied when
1134
+ * the query completes running or when the query is cancelled. </p>
266
1135
  */
267
1136
  CumulativeBytesMetered?: number;
268
1137
  }
@@ -272,22 +1141,87 @@ export declare namespace QueryStatus {
272
1141
  */
273
1142
  const filterSensitiveLog: (obj: QueryStatus) => any;
274
1143
  }
1144
+ export interface TagResourceRequest {
1145
+ /**
1146
+ * <p>Identifies the Timestream resource to which tags should be added. This value is an
1147
+ * Amazon Resource Name (ARN).</p>
1148
+ */
1149
+ ResourceARN: string | undefined;
1150
+ /**
1151
+ * <p>The tags to be assigned to the Timestream resource.</p>
1152
+ */
1153
+ Tags: Tag[] | undefined;
1154
+ }
1155
+ export declare namespace TagResourceRequest {
1156
+ /**
1157
+ * @internal
1158
+ */
1159
+ const filterSensitiveLog: (obj: TagResourceRequest) => any;
1160
+ }
1161
+ export interface TagResourceResponse {
1162
+ }
1163
+ export declare namespace TagResourceResponse {
1164
+ /**
1165
+ * @internal
1166
+ */
1167
+ const filterSensitiveLog: (obj: TagResourceResponse) => any;
1168
+ }
1169
+ export interface UntagResourceRequest {
1170
+ /**
1171
+ * <p>The Timestream resource that the tags will be removed from. This value is an Amazon
1172
+ * Resource Name (ARN). </p>
1173
+ */
1174
+ ResourceARN: string | undefined;
1175
+ /**
1176
+ * <p>A list of tags keys. Existing tags of the resource whose keys are members of this list
1177
+ * will be removed from the Timestream resource. </p>
1178
+ */
1179
+ TagKeys: string[] | undefined;
1180
+ }
1181
+ export declare namespace UntagResourceRequest {
1182
+ /**
1183
+ * @internal
1184
+ */
1185
+ const filterSensitiveLog: (obj: UntagResourceRequest) => any;
1186
+ }
1187
+ export interface UntagResourceResponse {
1188
+ }
1189
+ export declare namespace UntagResourceResponse {
1190
+ /**
1191
+ * @internal
1192
+ */
1193
+ const filterSensitiveLog: (obj: UntagResourceResponse) => any;
1194
+ }
1195
+ export interface UpdateScheduledQueryRequest {
1196
+ /**
1197
+ * <p>ARN of the scheuled query.</p>
1198
+ */
1199
+ ScheduledQueryArn: string | undefined;
1200
+ /**
1201
+ * <p>State of the scheduled query. </p>
1202
+ */
1203
+ State: ScheduledQueryState | string | undefined;
1204
+ }
1205
+ export declare namespace UpdateScheduledQueryRequest {
1206
+ /**
1207
+ * @internal
1208
+ */
1209
+ const filterSensitiveLog: (obj: UpdateScheduledQueryRequest) => any;
1210
+ }
275
1211
  /**
276
- * <p>
277
- * Contains the meta data for query results such as the column names, data types, and other attributes.
278
- * </p>
1212
+ * <p> Contains the metadata for query results such as the column names, data types, and
1213
+ * other attributes. </p>
279
1214
  */
280
1215
  export interface ColumnInfo {
281
1216
  /**
282
- * <p>
283
- * The name of the result set column. The name of the result set is available for columns of all data types except for arrays.
284
- * </p>
1217
+ * <p> The name of the result set column. The name of the result set is available for
1218
+ * columns of all data types except for arrays. </p>
285
1219
  */
286
1220
  Name?: string;
287
1221
  /**
288
- * <p>
289
- * The data type of the result set column. The data type can be a scalar or complex. Scalar data types are integers, strings, doubles, booleans, and others. Complex data types are types such as arrays, rows, and others.
290
- * </p>
1222
+ * <p>The data type of the result set column. The data type can be a scalar or complex.
1223
+ * Scalar data types are integers, strings, doubles, Booleans, and others. Complex data
1224
+ * types are types such as arrays, rows, and others. </p>
291
1225
  */
292
1226
  Type: Type | undefined;
293
1227
  }
@@ -298,11 +1232,15 @@ export declare namespace ColumnInfo {
298
1232
  const filterSensitiveLog: (obj: ColumnInfo) => any;
299
1233
  }
300
1234
  /**
301
- * <p>Contains the data type of a column in a query result set. The data type can be scalar or complex. The supported scalar data types are integers, boolean, string, double, timestamp, date, time, and intervals. The supported complex data types are arrays, rows, and timeseries.</p>
1235
+ * <p>Contains the data type of a column in a query result set. The data type can be scalar
1236
+ * or complex. The supported scalar data types are integers, Boolean, string, double,
1237
+ * timestamp, date, time, and intervals. The supported complex data types are arrays, rows,
1238
+ * and timeseries.</p>
302
1239
  */
303
1240
  export interface Type {
304
1241
  /**
305
- * <p>Indicates if the column is of type string, integer, boolean, double, timestamp, date, time. </p>
1242
+ * <p>Indicates if the column is of type string, integer, Boolean, double, timestamp, date,
1243
+ * time. </p>
306
1244
  */
307
1245
  ScalarType?: ScalarType | string;
308
1246
  /**
@@ -325,39 +1263,28 @@ export declare namespace Type {
325
1263
  const filterSensitiveLog: (obj: Type) => any;
326
1264
  }
327
1265
  /**
328
- * <p>
329
- * Datum represents a single data point in a query result.
330
- * </p>
1266
+ * <p> Datum represents a single data point in a query result. </p>
331
1267
  */
332
1268
  export interface Datum {
333
1269
  /**
334
- * <p>
335
- * Indicates if the data point is a scalar value such as integer, string, double, or boolean.
336
- * </p>
1270
+ * <p> Indicates if the data point is a scalar value such as integer, string, double, or
1271
+ * Boolean. </p>
337
1272
  */
338
1273
  ScalarValue?: string;
339
1274
  /**
340
- * <p>
341
- * Indicates if the data point is of timeseries data type.
342
- * </p>
1275
+ * <p> Indicates if the data point is a timeseries data type. </p>
343
1276
  */
344
1277
  TimeSeriesValue?: TimeSeriesDataPoint[];
345
1278
  /**
346
- * <p>
347
- * Indicates if the data point is an array.
348
- * </p>
1279
+ * <p> Indicates if the data point is an array. </p>
349
1280
  */
350
1281
  ArrayValue?: Datum[];
351
1282
  /**
352
- * <p>
353
- * Indicates if the data point is a row.
354
- * </p>
1283
+ * <p> Indicates if the data point is a row. </p>
355
1284
  */
356
1285
  RowValue?: Row;
357
1286
  /**
358
- * <p>
359
- * Indicates if the data point is null.
360
- * </p>
1287
+ * <p> Indicates if the data point is null. </p>
361
1288
  */
362
1289
  NullValue?: boolean;
363
1290
  }
@@ -368,7 +1295,66 @@ export declare namespace Datum {
368
1295
  const filterSensitiveLog: (obj: Datum) => any;
369
1296
  }
370
1297
  /**
371
- * <p>The timeseries datatype represents the values of a measure over time. A time series is an array of rows of timestamps and measure values, with rows sorted in ascending order of time. A TimeSeriesDataPoint is a single data point in the timeseries. It represents a tuple of (time, measure value) in a timeseries. </p>
1298
+ * <p>Mapping for named parameters.</p>
1299
+ */
1300
+ export interface ParameterMapping {
1301
+ /**
1302
+ * <p>Parameter name.</p>
1303
+ */
1304
+ Name: string | undefined;
1305
+ /**
1306
+ * <p>Contains the data type of a column in a query result set. The data type can be scalar
1307
+ * or complex. The supported scalar data types are integers, Boolean, string, double,
1308
+ * timestamp, date, time, and intervals. The supported complex data types are arrays, rows,
1309
+ * and timeseries.</p>
1310
+ */
1311
+ Type: Type | undefined;
1312
+ }
1313
+ export declare namespace ParameterMapping {
1314
+ /**
1315
+ * @internal
1316
+ */
1317
+ const filterSensitiveLog: (obj: ParameterMapping) => any;
1318
+ }
1319
+ /**
1320
+ * <p>Details of the column that is returned by the query. </p>
1321
+ */
1322
+ export interface SelectColumn {
1323
+ /**
1324
+ * <p>Name of the column.</p>
1325
+ */
1326
+ Name?: string;
1327
+ /**
1328
+ * <p>Contains the data type of a column in a query result set. The data type can be scalar
1329
+ * or complex. The supported scalar data types are integers, Boolean, string, double,
1330
+ * timestamp, date, time, and intervals. The supported complex data types are arrays, rows,
1331
+ * and timeseries.</p>
1332
+ */
1333
+ Type?: Type;
1334
+ /**
1335
+ * <p> Database that has this column.</p>
1336
+ */
1337
+ DatabaseName?: string;
1338
+ /**
1339
+ * <p>Table within the database that has this column. </p>
1340
+ */
1341
+ TableName?: string;
1342
+ /**
1343
+ * <p>True, if the column name was aliased by the query. False otherwise.</p>
1344
+ */
1345
+ Aliased?: boolean;
1346
+ }
1347
+ export declare namespace SelectColumn {
1348
+ /**
1349
+ * @internal
1350
+ */
1351
+ const filterSensitiveLog: (obj: SelectColumn) => any;
1352
+ }
1353
+ /**
1354
+ * <p>The timeseries data type represents the values of a measure over time. A time series
1355
+ * is an array of rows of timestamps and measure values, with rows sorted in ascending
1356
+ * order of time. A TimeSeriesDataPoint is a single data point in the time series. It
1357
+ * represents a tuple of (time, measure value) in a time series. </p>
372
1358
  */
373
1359
  export interface TimeSeriesDataPoint {
374
1360
  /**
@@ -376,7 +1362,7 @@ export interface TimeSeriesDataPoint {
376
1362
  */
377
1363
  Time: string | undefined;
378
1364
  /**
379
- * <p>The measure value for the data point.</p>
1365
+ * <p>The measure value for the data point.</p>
380
1366
  */
381
1367
  Value: Datum | undefined;
382
1368
  }
@@ -403,31 +1389,25 @@ export declare namespace Row {
403
1389
  }
404
1390
  export interface QueryResponse {
405
1391
  /**
406
- * <p>
407
- * A unique ID for the given query.
408
- * </p>
1392
+ * <p> A unique ID for the given query. </p>
409
1393
  */
410
1394
  QueryId: string | undefined;
411
1395
  /**
412
- * <p>
413
- * A pagination token that can be used again on a <code>Query</code> call to get the next set of results.
414
- * </p>
1396
+ * <p> A pagination token that can be used again on a <code>Query</code> call to get the
1397
+ * next set of results. </p>
415
1398
  */
416
1399
  NextToken?: string;
417
1400
  /**
418
- * <p>
419
- * The result set rows returned by the query.
420
- * </p>
1401
+ * <p> The result set rows returned by the query. </p>
421
1402
  */
422
1403
  Rows: Row[] | undefined;
423
1404
  /**
424
- * <p>
425
- * The column data types of the returned result set.
426
- * </p>
1405
+ * <p> The column data types of the returned result set. </p>
427
1406
  */
428
1407
  ColumnInfo: ColumnInfo[] | undefined;
429
1408
  /**
430
- * <p>Information about the status of the query, including progress and bytes scannned.</p>
1409
+ * <p>Information about the status of the query, including progress and bytes
1410
+ * scanned.</p>
431
1411
  */
432
1412
  QueryStatus?: QueryStatus;
433
1413
  }
@@ -437,3 +1417,23 @@ export declare namespace QueryResponse {
437
1417
  */
438
1418
  const filterSensitiveLog: (obj: QueryResponse) => any;
439
1419
  }
1420
+ export interface PrepareQueryResponse {
1421
+ /**
1422
+ * <p>The query string that you want prepare.</p>
1423
+ */
1424
+ QueryString: string | undefined;
1425
+ /**
1426
+ * <p>A list of SELECT clause columns of the submitted query string. </p>
1427
+ */
1428
+ Columns: SelectColumn[] | undefined;
1429
+ /**
1430
+ * <p>A list of parameters used in the submitted query string. </p>
1431
+ */
1432
+ Parameters: ParameterMapping[] | undefined;
1433
+ }
1434
+ export declare namespace PrepareQueryResponse {
1435
+ /**
1436
+ * @internal
1437
+ */
1438
+ const filterSensitiveLog: (obj: PrepareQueryResponse) => any;
1439
+ }