UNPKG

73 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 KinesisAnalytics extends Service {
9 /**
10 * Constructs a service object. This object has one method for each API operation.
11 */
12 constructor(options?: KinesisAnalytics.Types.ClientConfiguration)
13 config: Config & KinesisAnalytics.Types.ClientConfiguration;
14 /**
15 * Adds a CloudWatch log stream to monitor application configuration errors. For more information about using CloudWatch log streams with Amazon Kinesis Analytics applications, see Working with Amazon CloudWatch Logs.
16 */
17 addApplicationCloudWatchLoggingOption(params: KinesisAnalytics.Types.AddApplicationCloudWatchLoggingOptionRequest, callback?: (err: AWSError, data: KinesisAnalytics.Types.AddApplicationCloudWatchLoggingOptionResponse) => void): Request<KinesisAnalytics.Types.AddApplicationCloudWatchLoggingOptionResponse, AWSError>;
18 /**
19 * Adds a CloudWatch log stream to monitor application configuration errors. For more information about using CloudWatch log streams with Amazon Kinesis Analytics applications, see Working with Amazon CloudWatch Logs.
20 */
21 addApplicationCloudWatchLoggingOption(callback?: (err: AWSError, data: KinesisAnalytics.Types.AddApplicationCloudWatchLoggingOptionResponse) => void): Request<KinesisAnalytics.Types.AddApplicationCloudWatchLoggingOptionResponse, AWSError>;
22 /**
23 * Adds a streaming source to your Amazon Kinesis application. For conceptual information, see Configuring Application Input. You can add a streaming source either when you create an application or you can use this operation to add a streaming source after you create an application. For more information, see CreateApplication. Any configuration update, including adding a streaming source using this operation, results in a new version of the application. You can use the DescribeApplication operation to find the current application version. This operation requires permissions to perform the kinesisanalytics:AddApplicationInput action.
24 */
25 addApplicationInput(params: KinesisAnalytics.Types.AddApplicationInputRequest, callback?: (err: AWSError, data: KinesisAnalytics.Types.AddApplicationInputResponse) => void): Request<KinesisAnalytics.Types.AddApplicationInputResponse, AWSError>;
26 /**
27 * Adds a streaming source to your Amazon Kinesis application. For conceptual information, see Configuring Application Input. You can add a streaming source either when you create an application or you can use this operation to add a streaming source after you create an application. For more information, see CreateApplication. Any configuration update, including adding a streaming source using this operation, results in a new version of the application. You can use the DescribeApplication operation to find the current application version. This operation requires permissions to perform the kinesisanalytics:AddApplicationInput action.
28 */
29 addApplicationInput(callback?: (err: AWSError, data: KinesisAnalytics.Types.AddApplicationInputResponse) => void): Request<KinesisAnalytics.Types.AddApplicationInputResponse, AWSError>;
30 /**
31 * Adds an InputProcessingConfiguration to an application. An input processor preprocesses records on the input stream before the application's SQL code executes. Currently, the only input processor available is AWS Lambda.
32 */
33 addApplicationInputProcessingConfiguration(params: KinesisAnalytics.Types.AddApplicationInputProcessingConfigurationRequest, callback?: (err: AWSError, data: KinesisAnalytics.Types.AddApplicationInputProcessingConfigurationResponse) => void): Request<KinesisAnalytics.Types.AddApplicationInputProcessingConfigurationResponse, AWSError>;
34 /**
35 * Adds an InputProcessingConfiguration to an application. An input processor preprocesses records on the input stream before the application's SQL code executes. Currently, the only input processor available is AWS Lambda.
36 */
37 addApplicationInputProcessingConfiguration(callback?: (err: AWSError, data: KinesisAnalytics.Types.AddApplicationInputProcessingConfigurationResponse) => void): Request<KinesisAnalytics.Types.AddApplicationInputProcessingConfigurationResponse, AWSError>;
38 /**
39 * Adds an external destination to your Amazon Kinesis Analytics application. If you want Amazon Kinesis Analytics to deliver data from an in-application stream within your application to an external destination (such as an Amazon Kinesis stream, an Amazon Kinesis Firehose delivery stream, or an AWS Lambda function), you add the relevant configuration to your application using this operation. You can configure one or more outputs for your application. Each output configuration maps an in-application stream and an external destination. You can use one of the output configurations to deliver data from your in-application error stream to an external destination so that you can analyze the errors. For more information, see Understanding Application Output (Destination). Any configuration update, including adding a streaming source using this operation, results in a new version of the application. You can use the DescribeApplication operation to find the current application version. For the limits on the number of application inputs and outputs you can configure, see Limits. This operation requires permissions to perform the kinesisanalytics:AddApplicationOutput action.
40 */
41 addApplicationOutput(params: KinesisAnalytics.Types.AddApplicationOutputRequest, callback?: (err: AWSError, data: KinesisAnalytics.Types.AddApplicationOutputResponse) => void): Request<KinesisAnalytics.Types.AddApplicationOutputResponse, AWSError>;
42 /**
43 * Adds an external destination to your Amazon Kinesis Analytics application. If you want Amazon Kinesis Analytics to deliver data from an in-application stream within your application to an external destination (such as an Amazon Kinesis stream, an Amazon Kinesis Firehose delivery stream, or an AWS Lambda function), you add the relevant configuration to your application using this operation. You can configure one or more outputs for your application. Each output configuration maps an in-application stream and an external destination. You can use one of the output configurations to deliver data from your in-application error stream to an external destination so that you can analyze the errors. For more information, see Understanding Application Output (Destination). Any configuration update, including adding a streaming source using this operation, results in a new version of the application. You can use the DescribeApplication operation to find the current application version. For the limits on the number of application inputs and outputs you can configure, see Limits. This operation requires permissions to perform the kinesisanalytics:AddApplicationOutput action.
44 */
45 addApplicationOutput(callback?: (err: AWSError, data: KinesisAnalytics.Types.AddApplicationOutputResponse) => void): Request<KinesisAnalytics.Types.AddApplicationOutputResponse, AWSError>;
46 /**
47 * Adds a reference data source to an existing application. Amazon Kinesis Analytics reads reference data (that is, an Amazon S3 object) and creates an in-application table within your application. In the request, you provide the source (S3 bucket name and object key name), name of the in-application table to create, and the necessary mapping information that describes how data in Amazon S3 object maps to columns in the resulting in-application table. For conceptual information, see Configuring Application Input. For the limits on data sources you can add to your application, see Limits. This operation requires permissions to perform the kinesisanalytics:AddApplicationOutput action.
48 */
49 addApplicationReferenceDataSource(params: KinesisAnalytics.Types.AddApplicationReferenceDataSourceRequest, callback?: (err: AWSError, data: KinesisAnalytics.Types.AddApplicationReferenceDataSourceResponse) => void): Request<KinesisAnalytics.Types.AddApplicationReferenceDataSourceResponse, AWSError>;
50 /**
51 * Adds a reference data source to an existing application. Amazon Kinesis Analytics reads reference data (that is, an Amazon S3 object) and creates an in-application table within your application. In the request, you provide the source (S3 bucket name and object key name), name of the in-application table to create, and the necessary mapping information that describes how data in Amazon S3 object maps to columns in the resulting in-application table. For conceptual information, see Configuring Application Input. For the limits on data sources you can add to your application, see Limits. This operation requires permissions to perform the kinesisanalytics:AddApplicationOutput action.
52 */
53 addApplicationReferenceDataSource(callback?: (err: AWSError, data: KinesisAnalytics.Types.AddApplicationReferenceDataSourceResponse) => void): Request<KinesisAnalytics.Types.AddApplicationReferenceDataSourceResponse, AWSError>;
54 /**
55 * Creates an Amazon Kinesis Analytics application. You can configure each application with one streaming source as input, application code to process the input, and up to three destinations where you want Amazon Kinesis Analytics to write the output data from your application. For an overview, see How it Works. In the input configuration, you map the streaming source to an in-application stream, which you can think of as a constantly updating table. In the mapping, you must provide a schema for the in-application stream and map each data column in the in-application stream to a data element in the streaming source. Your application code is one or more SQL statements that read input data, transform it, and generate output. Your application code can create one or more SQL artifacts like SQL streams or pumps. In the output configuration, you can configure the application to write data from in-application streams created in your applications to up to three destinations. To read data from your source stream or write data to destination streams, Amazon Kinesis Analytics needs your permissions. You grant these permissions by creating IAM roles. This operation requires permissions to perform the kinesisanalytics:CreateApplication action. For introductory exercises to create an Amazon Kinesis Analytics application, see Getting Started.
56 */
57 createApplication(params: KinesisAnalytics.Types.CreateApplicationRequest, callback?: (err: AWSError, data: KinesisAnalytics.Types.CreateApplicationResponse) => void): Request<KinesisAnalytics.Types.CreateApplicationResponse, AWSError>;
58 /**
59 * Creates an Amazon Kinesis Analytics application. You can configure each application with one streaming source as input, application code to process the input, and up to three destinations where you want Amazon Kinesis Analytics to write the output data from your application. For an overview, see How it Works. In the input configuration, you map the streaming source to an in-application stream, which you can think of as a constantly updating table. In the mapping, you must provide a schema for the in-application stream and map each data column in the in-application stream to a data element in the streaming source. Your application code is one or more SQL statements that read input data, transform it, and generate output. Your application code can create one or more SQL artifacts like SQL streams or pumps. In the output configuration, you can configure the application to write data from in-application streams created in your applications to up to three destinations. To read data from your source stream or write data to destination streams, Amazon Kinesis Analytics needs your permissions. You grant these permissions by creating IAM roles. This operation requires permissions to perform the kinesisanalytics:CreateApplication action. For introductory exercises to create an Amazon Kinesis Analytics application, see Getting Started.
60 */
61 createApplication(callback?: (err: AWSError, data: KinesisAnalytics.Types.CreateApplicationResponse) => void): Request<KinesisAnalytics.Types.CreateApplicationResponse, AWSError>;
62 /**
63 * Deletes the specified application. Amazon Kinesis Analytics halts application execution and deletes the application, including any application artifacts (such as in-application streams, reference table, and application code). This operation requires permissions to perform the kinesisanalytics:DeleteApplication action.
64 */
65 deleteApplication(params: KinesisAnalytics.Types.DeleteApplicationRequest, callback?: (err: AWSError, data: KinesisAnalytics.Types.DeleteApplicationResponse) => void): Request<KinesisAnalytics.Types.DeleteApplicationResponse, AWSError>;
66 /**
67 * Deletes the specified application. Amazon Kinesis Analytics halts application execution and deletes the application, including any application artifacts (such as in-application streams, reference table, and application code). This operation requires permissions to perform the kinesisanalytics:DeleteApplication action.
68 */
69 deleteApplication(callback?: (err: AWSError, data: KinesisAnalytics.Types.DeleteApplicationResponse) => void): Request<KinesisAnalytics.Types.DeleteApplicationResponse, AWSError>;
70 /**
71 * Deletes a CloudWatch log stream from an application. For more information about using CloudWatch log streams with Amazon Kinesis Analytics applications, see Working with Amazon CloudWatch Logs.
72 */
73 deleteApplicationCloudWatchLoggingOption(params: KinesisAnalytics.Types.DeleteApplicationCloudWatchLoggingOptionRequest, callback?: (err: AWSError, data: KinesisAnalytics.Types.DeleteApplicationCloudWatchLoggingOptionResponse) => void): Request<KinesisAnalytics.Types.DeleteApplicationCloudWatchLoggingOptionResponse, AWSError>;
74 /**
75 * Deletes a CloudWatch log stream from an application. For more information about using CloudWatch log streams with Amazon Kinesis Analytics applications, see Working with Amazon CloudWatch Logs.
76 */
77 deleteApplicationCloudWatchLoggingOption(callback?: (err: AWSError, data: KinesisAnalytics.Types.DeleteApplicationCloudWatchLoggingOptionResponse) => void): Request<KinesisAnalytics.Types.DeleteApplicationCloudWatchLoggingOptionResponse, AWSError>;
78 /**
79 * Deletes an InputProcessingConfiguration from an input.
80 */
81 deleteApplicationInputProcessingConfiguration(params: KinesisAnalytics.Types.DeleteApplicationInputProcessingConfigurationRequest, callback?: (err: AWSError, data: KinesisAnalytics.Types.DeleteApplicationInputProcessingConfigurationResponse) => void): Request<KinesisAnalytics.Types.DeleteApplicationInputProcessingConfigurationResponse, AWSError>;
82 /**
83 * Deletes an InputProcessingConfiguration from an input.
84 */
85 deleteApplicationInputProcessingConfiguration(callback?: (err: AWSError, data: KinesisAnalytics.Types.DeleteApplicationInputProcessingConfigurationResponse) => void): Request<KinesisAnalytics.Types.DeleteApplicationInputProcessingConfigurationResponse, AWSError>;
86 /**
87 * Deletes output destination configuration from your application configuration. Amazon Kinesis Analytics will no longer write data from the corresponding in-application stream to the external output destination. This operation requires permissions to perform the kinesisanalytics:DeleteApplicationOutput action.
88 */
89 deleteApplicationOutput(params: KinesisAnalytics.Types.DeleteApplicationOutputRequest, callback?: (err: AWSError, data: KinesisAnalytics.Types.DeleteApplicationOutputResponse) => void): Request<KinesisAnalytics.Types.DeleteApplicationOutputResponse, AWSError>;
90 /**
91 * Deletes output destination configuration from your application configuration. Amazon Kinesis Analytics will no longer write data from the corresponding in-application stream to the external output destination. This operation requires permissions to perform the kinesisanalytics:DeleteApplicationOutput action.
92 */
93 deleteApplicationOutput(callback?: (err: AWSError, data: KinesisAnalytics.Types.DeleteApplicationOutputResponse) => void): Request<KinesisAnalytics.Types.DeleteApplicationOutputResponse, AWSError>;
94 /**
95 * Deletes a reference data source configuration from the specified application configuration. If the application is running, Amazon Kinesis Analytics immediately removes the in-application table that you created using the AddApplicationReferenceDataSource operation. This operation requires permissions to perform the kinesisanalytics.DeleteApplicationReferenceDataSource action.
96 */
97 deleteApplicationReferenceDataSource(params: KinesisAnalytics.Types.DeleteApplicationReferenceDataSourceRequest, callback?: (err: AWSError, data: KinesisAnalytics.Types.DeleteApplicationReferenceDataSourceResponse) => void): Request<KinesisAnalytics.Types.DeleteApplicationReferenceDataSourceResponse, AWSError>;
98 /**
99 * Deletes a reference data source configuration from the specified application configuration. If the application is running, Amazon Kinesis Analytics immediately removes the in-application table that you created using the AddApplicationReferenceDataSource operation. This operation requires permissions to perform the kinesisanalytics.DeleteApplicationReferenceDataSource action.
100 */
101 deleteApplicationReferenceDataSource(callback?: (err: AWSError, data: KinesisAnalytics.Types.DeleteApplicationReferenceDataSourceResponse) => void): Request<KinesisAnalytics.Types.DeleteApplicationReferenceDataSourceResponse, AWSError>;
102 /**
103 * Returns information about a specific Amazon Kinesis Analytics application. If you want to retrieve a list of all applications in your account, use the ListApplications operation. This operation requires permissions to perform the kinesisanalytics:DescribeApplication action. You can use DescribeApplication to get the current application versionId, which you need to call other operations such as Update.
104 */
105 describeApplication(params: KinesisAnalytics.Types.DescribeApplicationRequest, callback?: (err: AWSError, data: KinesisAnalytics.Types.DescribeApplicationResponse) => void): Request<KinesisAnalytics.Types.DescribeApplicationResponse, AWSError>;
106 /**
107 * Returns information about a specific Amazon Kinesis Analytics application. If you want to retrieve a list of all applications in your account, use the ListApplications operation. This operation requires permissions to perform the kinesisanalytics:DescribeApplication action. You can use DescribeApplication to get the current application versionId, which you need to call other operations such as Update.
108 */
109 describeApplication(callback?: (err: AWSError, data: KinesisAnalytics.Types.DescribeApplicationResponse) => void): Request<KinesisAnalytics.Types.DescribeApplicationResponse, AWSError>;
110 /**
111 * Infers a schema by evaluating sample records on the specified streaming source (Amazon Kinesis stream or Amazon Kinesis Firehose delivery stream) or S3 object. In the response, the operation returns the inferred schema and also the sample records that the operation used to infer the schema. You can use the inferred schema when configuring a streaming source for your application. For conceptual information, see Configuring Application Input. Note that when you create an application using the Amazon Kinesis Analytics console, the console uses this operation to infer a schema and show it in the console user interface. This operation requires permissions to perform the kinesisanalytics:DiscoverInputSchema action.
112 */
113 discoverInputSchema(params: KinesisAnalytics.Types.DiscoverInputSchemaRequest, callback?: (err: AWSError, data: KinesisAnalytics.Types.DiscoverInputSchemaResponse) => void): Request<KinesisAnalytics.Types.DiscoverInputSchemaResponse, AWSError>;
114 /**
115 * Infers a schema by evaluating sample records on the specified streaming source (Amazon Kinesis stream or Amazon Kinesis Firehose delivery stream) or S3 object. In the response, the operation returns the inferred schema and also the sample records that the operation used to infer the schema. You can use the inferred schema when configuring a streaming source for your application. For conceptual information, see Configuring Application Input. Note that when you create an application using the Amazon Kinesis Analytics console, the console uses this operation to infer a schema and show it in the console user interface. This operation requires permissions to perform the kinesisanalytics:DiscoverInputSchema action.
116 */
117 discoverInputSchema(callback?: (err: AWSError, data: KinesisAnalytics.Types.DiscoverInputSchemaResponse) => void): Request<KinesisAnalytics.Types.DiscoverInputSchemaResponse, AWSError>;
118 /**
119 * Returns a list of Amazon Kinesis Analytics applications in your account. For each application, the response includes the application name, Amazon Resource Name (ARN), and status. If the response returns the HasMoreApplications value as true, you can send another request by adding the ExclusiveStartApplicationName in the request body, and set the value of this to the last application name from the previous response. If you want detailed information about a specific application, use DescribeApplication. This operation requires permissions to perform the kinesisanalytics:ListApplications action.
120 */
121 listApplications(params: KinesisAnalytics.Types.ListApplicationsRequest, callback?: (err: AWSError, data: KinesisAnalytics.Types.ListApplicationsResponse) => void): Request<KinesisAnalytics.Types.ListApplicationsResponse, AWSError>;
122 /**
123 * Returns a list of Amazon Kinesis Analytics applications in your account. For each application, the response includes the application name, Amazon Resource Name (ARN), and status. If the response returns the HasMoreApplications value as true, you can send another request by adding the ExclusiveStartApplicationName in the request body, and set the value of this to the last application name from the previous response. If you want detailed information about a specific application, use DescribeApplication. This operation requires permissions to perform the kinesisanalytics:ListApplications action.
124 */
125 listApplications(callback?: (err: AWSError, data: KinesisAnalytics.Types.ListApplicationsResponse) => void): Request<KinesisAnalytics.Types.ListApplicationsResponse, AWSError>;
126 /**
127 * Starts the specified Amazon Kinesis Analytics application. After creating an application, you must exclusively call this operation to start your application. After the application starts, it begins consuming the input data, processes it, and writes the output to the configured destination. The application status must be READY for you to start an application. You can get the application status in the console or using the DescribeApplication operation. After you start the application, you can stop the application from processing the input by calling the StopApplication operation. This operation requires permissions to perform the kinesisanalytics:StartApplication action.
128 */
129 startApplication(params: KinesisAnalytics.Types.StartApplicationRequest, callback?: (err: AWSError, data: KinesisAnalytics.Types.StartApplicationResponse) => void): Request<KinesisAnalytics.Types.StartApplicationResponse, AWSError>;
130 /**
131 * Starts the specified Amazon Kinesis Analytics application. After creating an application, you must exclusively call this operation to start your application. After the application starts, it begins consuming the input data, processes it, and writes the output to the configured destination. The application status must be READY for you to start an application. You can get the application status in the console or using the DescribeApplication operation. After you start the application, you can stop the application from processing the input by calling the StopApplication operation. This operation requires permissions to perform the kinesisanalytics:StartApplication action.
132 */
133 startApplication(callback?: (err: AWSError, data: KinesisAnalytics.Types.StartApplicationResponse) => void): Request<KinesisAnalytics.Types.StartApplicationResponse, AWSError>;
134 /**
135 * Stops the application from processing input data. You can stop an application only if it is in the running state. You can use the DescribeApplication operation to find the application state. After the application is stopped, Amazon Kinesis Analytics stops reading data from the input, the application stops processing data, and there is no output written to the destination. This operation requires permissions to perform the kinesisanalytics:StopApplication action.
136 */
137 stopApplication(params: KinesisAnalytics.Types.StopApplicationRequest, callback?: (err: AWSError, data: KinesisAnalytics.Types.StopApplicationResponse) => void): Request<KinesisAnalytics.Types.StopApplicationResponse, AWSError>;
138 /**
139 * Stops the application from processing input data. You can stop an application only if it is in the running state. You can use the DescribeApplication operation to find the application state. After the application is stopped, Amazon Kinesis Analytics stops reading data from the input, the application stops processing data, and there is no output written to the destination. This operation requires permissions to perform the kinesisanalytics:StopApplication action.
140 */
141 stopApplication(callback?: (err: AWSError, data: KinesisAnalytics.Types.StopApplicationResponse) => void): Request<KinesisAnalytics.Types.StopApplicationResponse, AWSError>;
142 /**
143 * Updates an existing Amazon Kinesis Analytics application. Using this API, you can update application code, input configuration, and output configuration. Note that Amazon Kinesis Analytics updates the CurrentApplicationVersionId each time you update your application. This operation requires permission for the kinesisanalytics:UpdateApplication action.
144 */
145 updateApplication(params: KinesisAnalytics.Types.UpdateApplicationRequest, callback?: (err: AWSError, data: KinesisAnalytics.Types.UpdateApplicationResponse) => void): Request<KinesisAnalytics.Types.UpdateApplicationResponse, AWSError>;
146 /**
147 * Updates an existing Amazon Kinesis Analytics application. Using this API, you can update application code, input configuration, and output configuration. Note that Amazon Kinesis Analytics updates the CurrentApplicationVersionId each time you update your application. This operation requires permission for the kinesisanalytics:UpdateApplication action.
148 */
149 updateApplication(callback?: (err: AWSError, data: KinesisAnalytics.Types.UpdateApplicationResponse) => void): Request<KinesisAnalytics.Types.UpdateApplicationResponse, AWSError>;
150}
151declare namespace KinesisAnalytics {
152 export interface AddApplicationCloudWatchLoggingOptionRequest {
153 /**
154 * The Kinesis Analytics application name.
155 */
156 ApplicationName: ApplicationName;
157 /**
158 * The version ID of the Kinesis Analytics application.
159 */
160 CurrentApplicationVersionId: ApplicationVersionId;
161 /**
162 * Provides the CloudWatch log stream Amazon Resource Name (ARN) and the IAM role ARN. Note: To write application messages to CloudWatch, the IAM role that is used must have the PutLogEvents policy action enabled.
163 */
164 CloudWatchLoggingOption: CloudWatchLoggingOption;
165 }
166 export interface AddApplicationCloudWatchLoggingOptionResponse {
167 }
168 export interface AddApplicationInputProcessingConfigurationRequest {
169 /**
170 * Name of the application to which you want to add the input processing configuration.
171 */
172 ApplicationName: ApplicationName;
173 /**
174 * Version of the application to which you want to add the input processing configuration. You can use the DescribeApplication operation to get the current application version. If the version specified is not the current version, the ConcurrentModificationException is returned.
175 */
176 CurrentApplicationVersionId: ApplicationVersionId;
177 /**
178 * The ID of the input configuration to add the input processing configuration to. You can get a list of the input IDs for an application using the DescribeApplication operation.
179 */
180 InputId: Id;
181 /**
182 * The InputProcessingConfiguration to add to the application.
183 */
184 InputProcessingConfiguration: InputProcessingConfiguration;
185 }
186 export interface AddApplicationInputProcessingConfigurationResponse {
187 }
188 export interface AddApplicationInputRequest {
189 /**
190 * Name of your existing Amazon Kinesis Analytics application to which you want to add the streaming source.
191 */
192 ApplicationName: ApplicationName;
193 /**
194 * Current version of your Amazon Kinesis Analytics application. You can use the DescribeApplication operation to find the current application version.
195 */
196 CurrentApplicationVersionId: ApplicationVersionId;
197 /**
198 * The Input to add.
199 */
200 Input: Input;
201 }
202 export interface AddApplicationInputResponse {
203 }
204 export interface AddApplicationOutputRequest {
205 /**
206 * Name of the application to which you want to add the output configuration.
207 */
208 ApplicationName: ApplicationName;
209 /**
210 * Version of the application to which you want to add the output configuration. You can use the DescribeApplication operation to get the current application version. If the version specified is not the current version, the ConcurrentModificationException is returned.
211 */
212 CurrentApplicationVersionId: ApplicationVersionId;
213 /**
214 * An array of objects, each describing one output configuration. In the output configuration, you specify the name of an in-application stream, a destination (that is, an Amazon Kinesis stream, an Amazon Kinesis Firehose delivery stream, or an AWS Lambda function), and record the formation to use when writing to the destination.
215 */
216 Output: Output;
217 }
218 export interface AddApplicationOutputResponse {
219 }
220 export interface AddApplicationReferenceDataSourceRequest {
221 /**
222 * Name of an existing application.
223 */
224 ApplicationName: ApplicationName;
225 /**
226 * Version of the application for which you are adding the reference data source. You can use the DescribeApplication operation to get the current application version. If the version specified is not the current version, the ConcurrentModificationException is returned.
227 */
228 CurrentApplicationVersionId: ApplicationVersionId;
229 /**
230 * The reference data source can be an object in your Amazon S3 bucket. Amazon Kinesis Analytics reads the object and copies the data into the in-application table that is created. You provide an S3 bucket, object key name, and the resulting in-application table that is created. You must also provide an IAM role with the necessary permissions that Amazon Kinesis Analytics can assume to read the object from your S3 bucket on your behalf.
231 */
232 ReferenceDataSource: ReferenceDataSource;
233 }
234 export interface AddApplicationReferenceDataSourceResponse {
235 }
236 export type ApplicationCode = string;
237 export type ApplicationDescription = string;
238 export interface ApplicationDetail {
239 /**
240 * Name of the application.
241 */
242 ApplicationName: ApplicationName;
243 /**
244 * Description of the application.
245 */
246 ApplicationDescription?: ApplicationDescription;
247 /**
248 * ARN of the application.
249 */
250 ApplicationARN: ResourceARN;
251 /**
252 * Status of the application.
253 */
254 ApplicationStatus: ApplicationStatus;
255 /**
256 * Time stamp when the application version was created.
257 */
258 CreateTimestamp?: Timestamp;
259 /**
260 * Time stamp when the application was last updated.
261 */
262 LastUpdateTimestamp?: Timestamp;
263 /**
264 * Describes the application input configuration. For more information, see Configuring Application Input.
265 */
266 InputDescriptions?: InputDescriptions;
267 /**
268 * Describes the application output configuration. For more information, see Configuring Application Output.
269 */
270 OutputDescriptions?: OutputDescriptions;
271 /**
272 * Describes reference data sources configured for the application. For more information, see Configuring Application Input.
273 */
274 ReferenceDataSourceDescriptions?: ReferenceDataSourceDescriptions;
275 /**
276 * Describes the CloudWatch log streams that are configured to receive application messages. For more information about using CloudWatch log streams with Amazon Kinesis Analytics applications, see Working with Amazon CloudWatch Logs.
277 */
278 CloudWatchLoggingOptionDescriptions?: CloudWatchLoggingOptionDescriptions;
279 /**
280 * Returns the application code that you provided to perform data analysis on any of the in-application streams in your application.
281 */
282 ApplicationCode?: ApplicationCode;
283 /**
284 * Provides the current application version.
285 */
286 ApplicationVersionId: ApplicationVersionId;
287 }
288 export type ApplicationName = string;
289 export type ApplicationStatus = "DELETING"|"STARTING"|"STOPPING"|"READY"|"RUNNING"|"UPDATING"|string;
290 export type ApplicationSummaries = ApplicationSummary[];
291 export interface ApplicationSummary {
292 /**
293 * Name of the application.
294 */
295 ApplicationName: ApplicationName;
296 /**
297 * ARN of the application.
298 */
299 ApplicationARN: ResourceARN;
300 /**
301 * Status of the application.
302 */
303 ApplicationStatus: ApplicationStatus;
304 }
305 export interface ApplicationUpdate {
306 /**
307 * Describes application input configuration updates.
308 */
309 InputUpdates?: InputUpdates;
310 /**
311 * Describes application code updates.
312 */
313 ApplicationCodeUpdate?: ApplicationCode;
314 /**
315 * Describes application output configuration updates.
316 */
317 OutputUpdates?: OutputUpdates;
318 /**
319 * Describes application reference data source updates.
320 */
321 ReferenceDataSourceUpdates?: ReferenceDataSourceUpdates;
322 /**
323 * Describes application CloudWatch logging option updates.
324 */
325 CloudWatchLoggingOptionUpdates?: CloudWatchLoggingOptionUpdates;
326 }
327 export type ApplicationVersionId = number;
328 export type BooleanObject = boolean;
329 export type BucketARN = string;
330 export interface CSVMappingParameters {
331 /**
332 * Row delimiter. For example, in a CSV format, '\n' is the typical row delimiter.
333 */
334 RecordRowDelimiter: RecordRowDelimiter;
335 /**
336 * Column delimiter. For example, in a CSV format, a comma (",") is the typical column delimiter.
337 */
338 RecordColumnDelimiter: RecordColumnDelimiter;
339 }
340 export interface CloudWatchLoggingOption {
341 /**
342 * ARN of the CloudWatch log to receive application messages.
343 */
344 LogStreamARN: LogStreamARN;
345 /**
346 * IAM ARN of the role to use to send application messages. Note: To write application messages to CloudWatch, the IAM role that is used must have the PutLogEvents policy action enabled.
347 */
348 RoleARN: RoleARN;
349 }
350 export interface CloudWatchLoggingOptionDescription {
351 /**
352 * ID of the CloudWatch logging option description.
353 */
354 CloudWatchLoggingOptionId?: Id;
355 /**
356 * ARN of the CloudWatch log to receive application messages.
357 */
358 LogStreamARN: LogStreamARN;
359 /**
360 * IAM ARN of the role to use to send application messages. Note: To write application messages to CloudWatch, the IAM role used must have the PutLogEvents policy action enabled.
361 */
362 RoleARN: RoleARN;
363 }
364 export type CloudWatchLoggingOptionDescriptions = CloudWatchLoggingOptionDescription[];
365 export interface CloudWatchLoggingOptionUpdate {
366 /**
367 * ID of the CloudWatch logging option to update
368 */
369 CloudWatchLoggingOptionId: Id;
370 /**
371 * ARN of the CloudWatch log to receive application messages.
372 */
373 LogStreamARNUpdate?: LogStreamARN;
374 /**
375 * IAM ARN of the role to use to send application messages. Note: To write application messages to CloudWatch, the IAM role used must have the PutLogEvents policy action enabled.
376 */
377 RoleARNUpdate?: RoleARN;
378 }
379 export type CloudWatchLoggingOptionUpdates = CloudWatchLoggingOptionUpdate[];
380 export type CloudWatchLoggingOptions = CloudWatchLoggingOption[];
381 export interface CreateApplicationRequest {
382 /**
383 * Name of your Amazon Kinesis Analytics application (for example, sample-app).
384 */
385 ApplicationName: ApplicationName;
386 /**
387 * Summary description of the application.
388 */
389 ApplicationDescription?: ApplicationDescription;
390 /**
391 * Use this parameter to configure the application input. You can configure your application to receive input from a single streaming source. In this configuration, you map this streaming source to an in-application stream that is created. Your application code can then query the in-application stream like a table (you can think of it as a constantly updating table). For the streaming source, you provide its Amazon Resource Name (ARN) and format of data on the stream (for example, JSON, CSV, etc.). You also must provide an IAM role that Amazon Kinesis Analytics can assume to read this stream on your behalf. To create the in-application stream, you need to specify a schema to transform your data into a schematized version used in SQL. In the schema, you provide the necessary mapping of the data elements in the streaming source to record columns in the in-app stream.
392 */
393 Inputs?: Inputs;
394 /**
395 * You can configure application output to write data from any of the in-application streams to up to three destinations. These destinations can be Amazon Kinesis streams, Amazon Kinesis Firehose delivery streams, AWS Lambda destinations, or any combination of the three. In the configuration, you specify the in-application stream name, the destination stream or Lambda function Amazon Resource Name (ARN), and the format to use when writing data. You must also provide an IAM role that Amazon Kinesis Analytics can assume to write to the destination stream or Lambda function on your behalf. In the output configuration, you also provide the output stream or Lambda function ARN. For stream destinations, you provide the format of data in the stream (for example, JSON, CSV). You also must provide an IAM role that Amazon Kinesis Analytics can assume to write to the stream or Lambda function on your behalf.
396 */
397 Outputs?: Outputs;
398 /**
399 * Use this parameter to configure a CloudWatch log stream to monitor application configuration errors. For more information, see Working with Amazon CloudWatch Logs.
400 */
401 CloudWatchLoggingOptions?: CloudWatchLoggingOptions;
402 /**
403 * One or more SQL statements that read input data, transform it, and generate output. For example, you can write a SQL statement that reads data from one in-application stream, generates a running average of the number of advertisement clicks by vendor, and insert resulting rows in another in-application stream using pumps. For more information about the typical pattern, see Application Code. You can provide such series of SQL statements, where output of one statement can be used as the input for the next statement. You store intermediate results by creating in-application streams and pumps. Note that the application code must create the streams with names specified in the Outputs. For example, if your Outputs defines output streams named ExampleOutputStream1 and ExampleOutputStream2, then your application code must create these streams.
404 */
405 ApplicationCode?: ApplicationCode;
406 }
407 export interface CreateApplicationResponse {
408 /**
409 * In response to your CreateApplication request, Amazon Kinesis Analytics returns a response with a summary of the application it created, including the application Amazon Resource Name (ARN), name, and status.
410 */
411 ApplicationSummary: ApplicationSummary;
412 }
413 export interface DeleteApplicationCloudWatchLoggingOptionRequest {
414 /**
415 * The Kinesis Analytics application name.
416 */
417 ApplicationName: ApplicationName;
418 /**
419 * The version ID of the Kinesis Analytics application.
420 */
421 CurrentApplicationVersionId: ApplicationVersionId;
422 /**
423 * The CloudWatchLoggingOptionId of the CloudWatch logging option to delete. You can get the CloudWatchLoggingOptionId by using the DescribeApplication operation.
424 */
425 CloudWatchLoggingOptionId: Id;
426 }
427 export interface DeleteApplicationCloudWatchLoggingOptionResponse {
428 }
429 export interface DeleteApplicationInputProcessingConfigurationRequest {
430 /**
431 * The Kinesis Analytics application name.
432 */
433 ApplicationName: ApplicationName;
434 /**
435 * The version ID of the Kinesis Analytics application.
436 */
437 CurrentApplicationVersionId: ApplicationVersionId;
438 /**
439 * The ID of the input configuration from which to delete the input processing configuration. You can get a list of the input IDs for an application by using the DescribeApplication operation.
440 */
441 InputId: Id;
442 }
443 export interface DeleteApplicationInputProcessingConfigurationResponse {
444 }
445 export interface DeleteApplicationOutputRequest {
446 /**
447 * Amazon Kinesis Analytics application name.
448 */
449 ApplicationName: ApplicationName;
450 /**
451 * Amazon Kinesis Analytics application version. You can use the DescribeApplication operation to get the current application version. If the version specified is not the current version, the ConcurrentModificationException is returned.
452 */
453 CurrentApplicationVersionId: ApplicationVersionId;
454 /**
455 * The ID of the configuration to delete. Each output configuration that is added to the application, either when the application is created or later using the AddApplicationOutput operation, has a unique ID. You need to provide the ID to uniquely identify the output configuration that you want to delete from the application configuration. You can use the DescribeApplication operation to get the specific OutputId.
456 */
457 OutputId: Id;
458 }
459 export interface DeleteApplicationOutputResponse {
460 }
461 export interface DeleteApplicationReferenceDataSourceRequest {
462 /**
463 * Name of an existing application.
464 */
465 ApplicationName: ApplicationName;
466 /**
467 * Version of the application. You can use the DescribeApplication operation to get the current application version. If the version specified is not the current version, the ConcurrentModificationException is returned.
468 */
469 CurrentApplicationVersionId: ApplicationVersionId;
470 /**
471 * ID of the reference data source. When you add a reference data source to your application using the AddApplicationReferenceDataSource, Amazon Kinesis Analytics assigns an ID. You can use the DescribeApplication operation to get the reference ID.
472 */
473 ReferenceId: Id;
474 }
475 export interface DeleteApplicationReferenceDataSourceResponse {
476 }
477 export interface DeleteApplicationRequest {
478 /**
479 * Name of the Amazon Kinesis Analytics application to delete.
480 */
481 ApplicationName: ApplicationName;
482 /**
483 * You can use the DescribeApplication operation to get this value.
484 */
485 CreateTimestamp: Timestamp;
486 }
487 export interface DeleteApplicationResponse {
488 }
489 export interface DescribeApplicationRequest {
490 /**
491 * Name of the application.
492 */
493 ApplicationName: ApplicationName;
494 }
495 export interface DescribeApplicationResponse {
496 /**
497 * Provides a description of the application, such as the application Amazon Resource Name (ARN), status, latest version, and input and output configuration details.
498 */
499 ApplicationDetail: ApplicationDetail;
500 }
501 export interface DestinationSchema {
502 /**
503 * Specifies the format of the records on the output stream.
504 */
505 RecordFormatType: RecordFormatType;
506 }
507 export interface DiscoverInputSchemaRequest {
508 /**
509 * Amazon Resource Name (ARN) of the streaming source.
510 */
511 ResourceARN?: ResourceARN;
512 /**
513 * ARN of the IAM role that Amazon Kinesis Analytics can assume to access the stream on your behalf.
514 */
515 RoleARN?: RoleARN;
516 /**
517 * Point at which you want Amazon Kinesis Analytics to start reading records from the specified streaming source discovery purposes.
518 */
519 InputStartingPositionConfiguration?: InputStartingPositionConfiguration;
520 /**
521 * Specify this parameter to discover a schema from data in an Amazon S3 object.
522 */
523 S3Configuration?: S3Configuration;
524 /**
525 * The InputProcessingConfiguration to use to preprocess the records before discovering the schema of the records.
526 */
527 InputProcessingConfiguration?: InputProcessingConfiguration;
528 }
529 export interface DiscoverInputSchemaResponse {
530 /**
531 * Schema inferred from the streaming source. It identifies the format of the data in the streaming source and how each data element maps to corresponding columns in the in-application stream that you can create.
532 */
533 InputSchema?: SourceSchema;
534 /**
535 * An array of elements, where each element corresponds to a row in a stream record (a stream record can have more than one row).
536 */
537 ParsedInputRecords?: ParsedInputRecords;
538 /**
539 * Stream data that was modified by the processor specified in the InputProcessingConfiguration parameter.
540 */
541 ProcessedInputRecords?: ProcessedInputRecords;
542 /**
543 * Raw stream data that was sampled to infer the schema.
544 */
545 RawInputRecords?: RawInputRecords;
546 }
547 export type FileKey = string;
548 export type Id = string;
549 export type InAppStreamName = string;
550 export type InAppStreamNames = InAppStreamName[];
551 export type InAppTableName = string;
552 export interface Input {
553 /**
554 * Name prefix to use when creating an in-application stream. Suppose that you specify a prefix "MyInApplicationStream." Amazon Kinesis Analytics then creates one or more (as per the InputParallelism count you specified) in-application streams with names "MyInApplicationStream_001," "MyInApplicationStream_002," and so on.
555 */
556 NamePrefix: InAppStreamName;
557 /**
558 * The InputProcessingConfiguration for the input. An input processor transforms records as they are received from the stream, before the application's SQL code executes. Currently, the only input processing configuration available is InputLambdaProcessor.
559 */
560 InputProcessingConfiguration?: InputProcessingConfiguration;
561 /**
562 * If the streaming source is an Amazon Kinesis stream, identifies the stream's Amazon Resource Name (ARN) and an IAM role that enables Amazon Kinesis Analytics to access the stream on your behalf. Note: Either KinesisStreamsInput or KinesisFirehoseInput is required.
563 */
564 KinesisStreamsInput?: KinesisStreamsInput;
565 /**
566 * If the streaming source is an Amazon Kinesis Firehose delivery stream, identifies the delivery stream's ARN and an IAM role that enables Amazon Kinesis Analytics to access the stream on your behalf. Note: Either KinesisStreamsInput or KinesisFirehoseInput is required.
567 */
568 KinesisFirehoseInput?: KinesisFirehoseInput;
569 /**
570 * Describes the number of in-application streams to create. Data from your source is routed to these in-application input streams. (see Configuring Application Input.
571 */
572 InputParallelism?: InputParallelism;
573 /**
574 * Describes the format of the data in the streaming source, and how each data element maps to corresponding columns in the in-application stream that is being created. Also used to describe the format of the reference data source.
575 */
576 InputSchema: SourceSchema;
577 }
578 export interface InputConfiguration {
579 /**
580 * Input source ID. You can get this ID by calling the DescribeApplication operation.
581 */
582 Id: Id;
583 /**
584 * Point at which you want the application to start processing records from the streaming source.
585 */
586 InputStartingPositionConfiguration: InputStartingPositionConfiguration;
587 }
588 export type InputConfigurations = InputConfiguration[];
589 export interface InputDescription {
590 /**
591 * Input ID associated with the application input. This is the ID that Amazon Kinesis Analytics assigns to each input configuration you add to your application.
592 */
593 InputId?: Id;
594 /**
595 * In-application name prefix.
596 */
597 NamePrefix?: InAppStreamName;
598 /**
599 * Returns the in-application stream names that are mapped to the stream source.
600 */
601 InAppStreamNames?: InAppStreamNames;
602 /**
603 * The description of the preprocessor that executes on records in this input before the application's code is run.
604 */
605 InputProcessingConfigurationDescription?: InputProcessingConfigurationDescription;
606 /**
607 * If an Amazon Kinesis stream is configured as streaming source, provides Amazon Kinesis stream's Amazon Resource Name (ARN) and an IAM role that enables Amazon Kinesis Analytics to access the stream on your behalf.
608 */
609 KinesisStreamsInputDescription?: KinesisStreamsInputDescription;
610 /**
611 * If an Amazon Kinesis Firehose delivery stream is configured as a streaming source, provides the delivery stream's ARN and an IAM role that enables Amazon Kinesis Analytics to access the stream on your behalf.
612 */
613 KinesisFirehoseInputDescription?: KinesisFirehoseInputDescription;
614 /**
615 * Describes the format of the data in the streaming source, and how each data element maps to corresponding columns in the in-application stream that is being created.
616 */
617 InputSchema?: SourceSchema;
618 /**
619 * Describes the configured parallelism (number of in-application streams mapped to the streaming source).
620 */
621 InputParallelism?: InputParallelism;
622 /**
623 * Point at which the application is configured to read from the input stream.
624 */
625 InputStartingPositionConfiguration?: InputStartingPositionConfiguration;
626 }
627 export type InputDescriptions = InputDescription[];
628 export interface InputLambdaProcessor {
629 /**
630 * The ARN of the AWS Lambda function that operates on records in the stream.
631 */
632 ResourceARN: ResourceARN;
633 /**
634 * The ARN of the IAM role that is used to access the AWS Lambda function.
635 */
636 RoleARN: RoleARN;
637 }
638 export interface InputLambdaProcessorDescription {
639 /**
640 * The ARN of the AWS Lambda function that is used to preprocess the records in the stream.
641 */
642 ResourceARN?: ResourceARN;
643 /**
644 * The ARN of the IAM role that is used to access the AWS Lambda function.
645 */
646 RoleARN?: RoleARN;
647 }
648 export interface InputLambdaProcessorUpdate {
649 /**
650 * The Amazon Resource Name (ARN) of the new AWS Lambda function that is used to preprocess the records in the stream.
651 */
652 ResourceARNUpdate?: ResourceARN;
653 /**
654 * The ARN of the new IAM role that is used to access the AWS Lambda function.
655 */
656 RoleARNUpdate?: RoleARN;
657 }
658 export interface InputParallelism {
659 /**
660 * Number of in-application streams to create. For more information, see Limits.
661 */
662 Count?: InputParallelismCount;
663 }
664 export type InputParallelismCount = number;
665 export interface InputParallelismUpdate {
666 /**
667 * Number of in-application streams to create for the specified streaming source.
668 */
669 CountUpdate?: InputParallelismCount;
670 }
671 export interface InputProcessingConfiguration {
672 /**
673 * The InputLambdaProcessor that is used to preprocess the records in the stream before being processed by your application code.
674 */
675 InputLambdaProcessor: InputLambdaProcessor;
676 }
677 export interface InputProcessingConfigurationDescription {
678 /**
679 * Provides configuration information about the associated InputLambdaProcessorDescription.
680 */
681 InputLambdaProcessorDescription?: InputLambdaProcessorDescription;
682 }
683 export interface InputProcessingConfigurationUpdate {
684 /**
685 * Provides update information for an InputLambdaProcessor.
686 */
687 InputLambdaProcessorUpdate: InputLambdaProcessorUpdate;
688 }
689 export interface InputSchemaUpdate {
690 /**
691 * Specifies the format of the records on the streaming source.
692 */
693 RecordFormatUpdate?: RecordFormat;
694 /**
695 * Specifies the encoding of the records in the streaming source. For example, UTF-8.
696 */
697 RecordEncodingUpdate?: RecordEncoding;
698 /**
699 * A list of RecordColumn objects. Each object describes the mapping of the streaming source element to the corresponding column in the in-application stream.
700 */
701 RecordColumnUpdates?: RecordColumns;
702 }
703 export type InputStartingPosition = "NOW"|"TRIM_HORIZON"|"LAST_STOPPED_POINT"|string;
704 export interface InputStartingPositionConfiguration {
705 /**
706 * The starting position on the stream. NOW - Start reading just after the most recent record in the stream, start at the request time stamp that the customer issued. TRIM_HORIZON - Start reading at the last untrimmed record in the stream, which is the oldest record available in the stream. This option is not available for an Amazon Kinesis Firehose delivery stream. LAST_STOPPED_POINT - Resume reading from where the application last stopped reading.
707 */
708 InputStartingPosition?: InputStartingPosition;
709 }
710 export interface InputUpdate {
711 /**
712 * Input ID of the application input to be updated.
713 */
714 InputId: Id;
715 /**
716 * Name prefix for in-application streams that Amazon Kinesis Analytics creates for the specific streaming source.
717 */
718 NamePrefixUpdate?: InAppStreamName;
719 /**
720 * Describes updates for an input processing configuration.
721 */
722 InputProcessingConfigurationUpdate?: InputProcessingConfigurationUpdate;
723 /**
724 * If an Amazon Kinesis stream is the streaming source to be updated, provides an updated stream Amazon Resource Name (ARN) and IAM role ARN.
725 */
726 KinesisStreamsInputUpdate?: KinesisStreamsInputUpdate;
727 /**
728 * If an Amazon Kinesis Firehose delivery stream is the streaming source to be updated, provides an updated stream ARN and IAM role ARN.
729 */
730 KinesisFirehoseInputUpdate?: KinesisFirehoseInputUpdate;
731 /**
732 * Describes the data format on the streaming source, and how record elements on the streaming source map to columns of the in-application stream that is created.
733 */
734 InputSchemaUpdate?: InputSchemaUpdate;
735 /**
736 * Describes the parallelism updates (the number in-application streams Amazon Kinesis Analytics creates for the specific streaming source).
737 */
738 InputParallelismUpdate?: InputParallelismUpdate;
739 }
740 export type InputUpdates = InputUpdate[];
741 export type Inputs = Input[];
742 export interface JSONMappingParameters {
743 /**
744 * Path to the top-level parent that contains the records.
745 */
746 RecordRowPath: RecordRowPath;
747 }
748 export interface KinesisFirehoseInput {
749 /**
750 * ARN of the input delivery stream.
751 */
752 ResourceARN: ResourceARN;
753 /**
754 * ARN of the IAM role that Amazon Kinesis Analytics can assume to access the stream on your behalf. You need to make sure that the role has the necessary permissions to access the stream.
755 */
756 RoleARN: RoleARN;
757 }
758 export interface KinesisFirehoseInputDescription {
759 /**
760 * Amazon Resource Name (ARN) of the Amazon Kinesis Firehose delivery stream.
761 */
762 ResourceARN?: ResourceARN;
763 /**
764 * ARN of the IAM role that Amazon Kinesis Analytics assumes to access the stream.
765 */
766 RoleARN?: RoleARN;
767 }
768 export interface KinesisFirehoseInputUpdate {
769 /**
770 * Amazon Resource Name (ARN) of the input Amazon Kinesis Firehose delivery stream to read.
771 */
772 ResourceARNUpdate?: ResourceARN;
773 /**
774 * ARN of the IAM role that Amazon Kinesis Analytics can assume to access the stream on your behalf. You need to grant the necessary permissions to this role.
775 */
776 RoleARNUpdate?: RoleARN;
777 }
778 export interface KinesisFirehoseOutput {
779 /**
780 * ARN of the destination Amazon Kinesis Firehose delivery stream to write to.
781 */
782 ResourceARN: ResourceARN;
783 /**
784 * ARN of the IAM role that Amazon Kinesis Analytics can assume to write to the destination stream on your behalf. You need to grant the necessary permissions to this role.
785 */
786 RoleARN: RoleARN;
787 }
788 export interface KinesisFirehoseOutputDescription {
789 /**
790 * Amazon Resource Name (ARN) of the Amazon Kinesis Firehose delivery stream.
791 */
792 ResourceARN?: ResourceARN;
793 /**
794 * ARN of the IAM role that Amazon Kinesis Analytics can assume to access the stream.
795 */
796 RoleARN?: RoleARN;
797 }
798 export interface KinesisFirehoseOutputUpdate {
799 /**
800 * Amazon Resource Name (ARN) of the Amazon Kinesis Firehose delivery stream to write to.
801 */
802 ResourceARNUpdate?: ResourceARN;
803 /**
804 * ARN of the IAM role that Amazon Kinesis Analytics can assume to access the stream on your behalf. You need to grant the necessary permissions to this role.
805 */
806 RoleARNUpdate?: RoleARN;
807 }
808 export interface KinesisStreamsInput {
809 /**
810 * ARN of the input Amazon Kinesis stream to read.
811 */
812 ResourceARN: ResourceARN;
813 /**
814 * ARN of the IAM role that Amazon Kinesis Analytics can assume to access the stream on your behalf. You need to grant the necessary permissions to this role.
815 */
816 RoleARN: RoleARN;
817 }
818 export interface KinesisStreamsInputDescription {
819 /**
820 * Amazon Resource Name (ARN) of the Amazon Kinesis stream.
821 */
822 ResourceARN?: ResourceARN;
823 /**
824 * ARN of the IAM role that Amazon Kinesis Analytics can assume to access the stream.
825 */
826 RoleARN?: RoleARN;
827 }
828 export interface KinesisStreamsInputUpdate {
829 /**
830 * Amazon Resource Name (ARN) of the input Amazon Kinesis stream to read.
831 */
832 ResourceARNUpdate?: ResourceARN;
833 /**
834 * ARN of the IAM role that Amazon Kinesis Analytics can assume to access the stream on your behalf. You need to grant the necessary permissions to this role.
835 */
836 RoleARNUpdate?: RoleARN;
837 }
838 export interface KinesisStreamsOutput {
839 /**
840 * ARN of the destination Amazon Kinesis stream to write to.
841 */
842 ResourceARN: ResourceARN;
843 /**
844 * ARN of the IAM role that Amazon Kinesis Analytics can assume to write to the destination stream on your behalf. You need to grant the necessary permissions to this role.
845 */
846 RoleARN: RoleARN;
847 }
848 export interface KinesisStreamsOutputDescription {
849 /**
850 * Amazon Resource Name (ARN) of the Amazon Kinesis stream.
851 */
852 ResourceARN?: ResourceARN;
853 /**
854 * ARN of the IAM role that Amazon Kinesis Analytics can assume to access the stream.
855 */
856 RoleARN?: RoleARN;
857 }
858 export interface KinesisStreamsOutputUpdate {
859 /**
860 * Amazon Resource Name (ARN) of the Amazon Kinesis stream where you want to write the output.
861 */
862 ResourceARNUpdate?: ResourceARN;
863 /**
864 * ARN of the IAM role that Amazon Kinesis Analytics can assume to access the stream on your behalf. You need to grant the necessary permissions to this role.
865 */
866 RoleARNUpdate?: RoleARN;
867 }
868 export interface LambdaOutput {
869 /**
870 * Amazon Resource Name (ARN) of the destination Lambda function to write to.
871 */
872 ResourceARN: ResourceARN;
873 /**
874 * ARN of the IAM role that Amazon Kinesis Analytics can assume to write to the destination function on your behalf. You need to grant the necessary permissions to this role.
875 */
876 RoleARN: RoleARN;
877 }
878 export interface LambdaOutputDescription {
879 /**
880 * Amazon Resource Name (ARN) of the destination Lambda function.
881 */
882 ResourceARN?: ResourceARN;
883 /**
884 * ARN of the IAM role that Amazon Kinesis Analytics can assume to write to the destination function.
885 */
886 RoleARN?: RoleARN;
887 }
888 export interface LambdaOutputUpdate {
889 /**
890 * Amazon Resource Name (ARN) of the destination Lambda function.
891 */
892 ResourceARNUpdate?: ResourceARN;
893 /**
894 * ARN of the IAM role that Amazon Kinesis Analytics can assume to write to the destination function on your behalf. You need to grant the necessary permissions to this role.
895 */
896 RoleARNUpdate?: RoleARN;
897 }
898 export type ListApplicationsInputLimit = number;
899 export interface ListApplicationsRequest {
900 /**
901 * Maximum number of applications to list.
902 */
903 Limit?: ListApplicationsInputLimit;
904 /**
905 * Name of the application to start the list with. When using pagination to retrieve the list, you don't need to specify this parameter in the first request. However, in subsequent requests, you add the last application name from the previous response to get the next page of applications.
906 */
907 ExclusiveStartApplicationName?: ApplicationName;
908 }
909 export interface ListApplicationsResponse {
910 /**
911 * List of ApplicationSummary objects.
912 */
913 ApplicationSummaries: ApplicationSummaries;
914 /**
915 * Returns true if there are more applications to retrieve.
916 */
917 HasMoreApplications: BooleanObject;
918 }
919 export type LogStreamARN = string;
920 export interface MappingParameters {
921 /**
922 * Provides additional mapping information when JSON is the record format on the streaming source.
923 */
924 JSONMappingParameters?: JSONMappingParameters;
925 /**
926 * Provides additional mapping information when the record format uses delimiters (for example, CSV).
927 */
928 CSVMappingParameters?: CSVMappingParameters;
929 }
930 export interface Output {
931 /**
932 * Name of the in-application stream.
933 */
934 Name: InAppStreamName;
935 /**
936 * Identifies an Amazon Kinesis stream as the destination.
937 */
938 KinesisStreamsOutput?: KinesisStreamsOutput;
939 /**
940 * Identifies an Amazon Kinesis Firehose delivery stream as the destination.
941 */
942 KinesisFirehoseOutput?: KinesisFirehoseOutput;
943 /**
944 * Identifies an AWS Lambda function as the destination.
945 */
946 LambdaOutput?: LambdaOutput;
947 /**
948 * Describes the data format when records are written to the destination. For more information, see Configuring Application Output.
949 */
950 DestinationSchema: DestinationSchema;
951 }
952 export interface OutputDescription {
953 /**
954 * A unique identifier for the output configuration.
955 */
956 OutputId?: Id;
957 /**
958 * Name of the in-application stream configured as output.
959 */
960 Name?: InAppStreamName;
961 /**
962 * Describes Amazon Kinesis stream configured as the destination where output is written.
963 */
964 KinesisStreamsOutputDescription?: KinesisStreamsOutputDescription;
965 /**
966 * Describes the Amazon Kinesis Firehose delivery stream configured as the destination where output is written.
967 */
968 KinesisFirehoseOutputDescription?: KinesisFirehoseOutputDescription;
969 /**
970 * Describes the AWS Lambda function configured as the destination where output is written.
971 */
972 LambdaOutputDescription?: LambdaOutputDescription;
973 /**
974 * Data format used for writing data to the destination.
975 */
976 DestinationSchema?: DestinationSchema;
977 }
978 export type OutputDescriptions = OutputDescription[];
979 export interface OutputUpdate {
980 /**
981 * Identifies the specific output configuration that you want to update.
982 */
983 OutputId: Id;
984 /**
985 * If you want to specify a different in-application stream for this output configuration, use this field to specify the new in-application stream name.
986 */
987 NameUpdate?: InAppStreamName;
988 /**
989 * Describes an Amazon Kinesis stream as the destination for the output.
990 */
991 KinesisStreamsOutputUpdate?: KinesisStreamsOutputUpdate;
992 /**
993 * Describes an Amazon Kinesis Firehose delivery stream as the destination for the output.
994 */
995 KinesisFirehoseOutputUpdate?: KinesisFirehoseOutputUpdate;
996 /**
997 * Describes an AWS Lambda function as the destination for the output.
998 */
999 LambdaOutputUpdate?: LambdaOutputUpdate;
1000 /**
1001 * Describes the data format when records are written to the destination. For more information, see Configuring Application Output.
1002 */
1003 DestinationSchemaUpdate?: DestinationSchema;
1004 }
1005 export type OutputUpdates = OutputUpdate[];
1006 export type Outputs = Output[];
1007 export type ParsedInputRecord = ParsedInputRecordField[];
1008 export type ParsedInputRecordField = string;
1009 export type ParsedInputRecords = ParsedInputRecord[];
1010 export type ProcessedInputRecord = string;
1011 export type ProcessedInputRecords = ProcessedInputRecord[];
1012 export type RawInputRecord = string;
1013 export type RawInputRecords = RawInputRecord[];
1014 export interface RecordColumn {
1015 /**
1016 * Name of the column created in the in-application input stream or reference table.
1017 */
1018 Name: RecordColumnName;
1019 /**
1020 * Reference to the data element in the streaming input of the reference data source.
1021 */
1022 Mapping?: RecordColumnMapping;
1023 /**
1024 * Type of column created in the in-application input stream or reference table.
1025 */
1026 SqlType: RecordColumnSqlType;
1027 }
1028 export type RecordColumnDelimiter = string;
1029 export type RecordColumnMapping = string;
1030 export type RecordColumnName = string;
1031 export type RecordColumnSqlType = string;
1032 export type RecordColumns = RecordColumn[];
1033 export type RecordEncoding = string;
1034 export interface RecordFormat {
1035 /**
1036 * The type of record format.
1037 */
1038 RecordFormatType: RecordFormatType;
1039 /**
1040 * When configuring application input at the time of creating or updating an application, provides additional mapping information specific to the record format (such as JSON, CSV, or record fields delimited by some delimiter) on the streaming source.
1041 */
1042 MappingParameters?: MappingParameters;
1043 }
1044 export type RecordFormatType = "JSON"|"CSV"|string;
1045 export type RecordRowDelimiter = string;
1046 export type RecordRowPath = string;
1047 export interface ReferenceDataSource {
1048 /**
1049 * Name of the in-application table to create.
1050 */
1051 TableName: InAppTableName;
1052 /**
1053 * Identifies the S3 bucket and object that contains the reference data. Also identifies the IAM role Amazon Kinesis Analytics can assume to read this object on your behalf. An Amazon Kinesis Analytics application loads reference data only once. If the data changes, you call the UpdateApplication operation to trigger reloading of data into your application.
1054 */
1055 S3ReferenceDataSource?: S3ReferenceDataSource;
1056 /**
1057 * Describes the format of the data in the streaming source, and how each data element maps to corresponding columns created in the in-application stream.
1058 */
1059 ReferenceSchema: SourceSchema;
1060 }
1061 export interface ReferenceDataSourceDescription {
1062 /**
1063 * ID of the reference data source. This is the ID that Amazon Kinesis Analytics assigns when you add the reference data source to your application using the AddApplicationReferenceDataSource operation.
1064 */
1065 ReferenceId: Id;
1066 /**
1067 * The in-application table name created by the specific reference data source configuration.
1068 */
1069 TableName: InAppTableName;
1070 /**
1071 * Provides the S3 bucket name, the object key name that contains the reference data. It also provides the Amazon Resource Name (ARN) of the IAM role that Amazon Kinesis Analytics can assume to read the Amazon S3 object and populate the in-application reference table.
1072 */
1073 S3ReferenceDataSourceDescription: S3ReferenceDataSourceDescription;
1074 /**
1075 * Describes the format of the data in the streaming source, and how each data element maps to corresponding columns created in the in-application stream.
1076 */
1077 ReferenceSchema?: SourceSchema;
1078 }
1079 export type ReferenceDataSourceDescriptions = ReferenceDataSourceDescription[];
1080 export interface ReferenceDataSourceUpdate {
1081 /**
1082 * ID of the reference data source being updated. You can use the DescribeApplication operation to get this value.
1083 */
1084 ReferenceId: Id;
1085 /**
1086 * In-application table name that is created by this update.
1087 */
1088 TableNameUpdate?: InAppTableName;
1089 /**
1090 * Describes the S3 bucket name, object key name, and IAM role that Amazon Kinesis Analytics can assume to read the Amazon S3 object on your behalf and populate the in-application reference table.
1091 */
1092 S3ReferenceDataSourceUpdate?: S3ReferenceDataSourceUpdate;
1093 /**
1094 * Describes the format of the data in the streaming source, and how each data element maps to corresponding columns created in the in-application stream.
1095 */
1096 ReferenceSchemaUpdate?: SourceSchema;
1097 }
1098 export type ReferenceDataSourceUpdates = ReferenceDataSourceUpdate[];
1099 export type ResourceARN = string;
1100 export type RoleARN = string;
1101 export interface S3Configuration {
1102 /**
1103 * IAM ARN of the role used to access the data.
1104 */
1105 RoleARN: RoleARN;
1106 /**
1107 * ARN of the S3 bucket that contains the data.
1108 */
1109 BucketARN: BucketARN;
1110 /**
1111 * The name of the object that contains the data.
1112 */
1113 FileKey: FileKey;
1114 }
1115 export interface S3ReferenceDataSource {
1116 /**
1117 * Amazon Resource Name (ARN) of the S3 bucket.
1118 */
1119 BucketARN: BucketARN;
1120 /**
1121 * Object key name containing reference data.
1122 */
1123 FileKey: FileKey;
1124 /**
1125 * ARN of the IAM role that the service can assume to read data on your behalf. This role must have permission for the s3:GetObject action on the object and trust policy that allows Amazon Kinesis Analytics service principal to assume this role.
1126 */
1127 ReferenceRoleARN: RoleARN;
1128 }
1129 export interface S3ReferenceDataSourceDescription {
1130 /**
1131 * Amazon Resource Name (ARN) of the S3 bucket.
1132 */
1133 BucketARN: BucketARN;
1134 /**
1135 * Amazon S3 object key name.
1136 */
1137 FileKey: FileKey;
1138 /**
1139 * ARN of the IAM role that Amazon Kinesis Analytics can assume to read the Amazon S3 object on your behalf to populate the in-application reference table.
1140 */
1141 ReferenceRoleARN: RoleARN;
1142 }
1143 export interface S3ReferenceDataSourceUpdate {
1144 /**
1145 * Amazon Resource Name (ARN) of the S3 bucket.
1146 */
1147 BucketARNUpdate?: BucketARN;
1148 /**
1149 * Object key name.
1150 */
1151 FileKeyUpdate?: FileKey;
1152 /**
1153 * ARN of the IAM role that Amazon Kinesis Analytics can assume to read the Amazon S3 object and populate the in-application.
1154 */
1155 ReferenceRoleARNUpdate?: RoleARN;
1156 }
1157 export interface SourceSchema {
1158 /**
1159 * Specifies the format of the records on the streaming source.
1160 */
1161 RecordFormat: RecordFormat;
1162 /**
1163 * Specifies the encoding of the records in the streaming source. For example, UTF-8.
1164 */
1165 RecordEncoding?: RecordEncoding;
1166 /**
1167 * A list of RecordColumn objects.
1168 */
1169 RecordColumns: RecordColumns;
1170 }
1171 export interface StartApplicationRequest {
1172 /**
1173 * Name of the application.
1174 */
1175 ApplicationName: ApplicationName;
1176 /**
1177 * Identifies the specific input, by ID, that the application starts consuming. Amazon Kinesis Analytics starts reading the streaming source associated with the input. You can also specify where in the streaming source you want Amazon Kinesis Analytics to start reading.
1178 */
1179 InputConfigurations: InputConfigurations;
1180 }
1181 export interface StartApplicationResponse {
1182 }
1183 export interface StopApplicationRequest {
1184 /**
1185 * Name of the running application to stop.
1186 */
1187 ApplicationName: ApplicationName;
1188 }
1189 export interface StopApplicationResponse {
1190 }
1191 export type Timestamp = Date;
1192 export interface UpdateApplicationRequest {
1193 /**
1194 * Name of the Amazon Kinesis Analytics application to update.
1195 */
1196 ApplicationName: ApplicationName;
1197 /**
1198 * The current application version ID. You can use the DescribeApplication operation to get this value.
1199 */
1200 CurrentApplicationVersionId: ApplicationVersionId;
1201 /**
1202 * Describes application updates.
1203 */
1204 ApplicationUpdate: ApplicationUpdate;
1205 }
1206 export interface UpdateApplicationResponse {
1207 }
1208 /**
1209 * 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.
1210 */
1211 export type apiVersion = "2015-08-14"|"latest"|string;
1212 export interface ClientApiVersions {
1213 /**
1214 * 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.
1215 */
1216 apiVersion?: apiVersion;
1217 }
1218 export type ClientConfiguration = ServiceConfigurationOptions & ClientApiVersions;
1219 /**
1220 * Contains interfaces for use with the KinesisAnalytics client.
1221 */
1222 export import Types = KinesisAnalytics;
1223}
1224export = KinesisAnalytics;