@aws-sdk/client-bedrock-agent 3.808.0 → 3.811.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 (37) hide show
  1. package/dist-cjs/index.js +995 -703
  2. package/dist-es/commands/CreateFlowCommand.js +1 -1
  3. package/dist-es/commands/CreateFlowVersionCommand.js +1 -1
  4. package/dist-es/commands/GetFlowCommand.js +1 -1
  5. package/dist-es/commands/GetFlowVersionCommand.js +1 -1
  6. package/dist-es/commands/UpdateFlowCommand.js +1 -1
  7. package/dist-es/models/models_0.js +119 -115
  8. package/dist-es/models/models_1.js +136 -5
  9. package/dist-es/protocols/Aws_restJson1.js +140 -3
  10. package/dist-types/commands/CreateFlowAliasCommand.d.ts +8 -0
  11. package/dist-types/commands/CreateFlowCommand.d.ts +575 -41
  12. package/dist-types/commands/CreateFlowVersionCommand.d.ts +289 -21
  13. package/dist-types/commands/GetFlowAliasCommand.d.ts +4 -0
  14. package/dist-types/commands/GetFlowCommand.d.ts +312 -22
  15. package/dist-types/commands/GetFlowVersionCommand.d.ts +289 -21
  16. package/dist-types/commands/GetIngestionJobCommand.d.ts +2 -1
  17. package/dist-types/commands/ListFlowAliasesCommand.d.ts +4 -0
  18. package/dist-types/commands/ListIngestionJobsCommand.d.ts +1 -1
  19. package/dist-types/commands/StartIngestionJobCommand.d.ts +1 -1
  20. package/dist-types/commands/StopIngestionJobCommand.d.ts +1 -2
  21. package/dist-types/commands/UpdateFlowAliasCommand.d.ts +8 -0
  22. package/dist-types/commands/UpdateFlowCommand.d.ts +575 -41
  23. package/dist-types/commands/ValidateFlowDefinitionCommand.d.ts +310 -21
  24. package/dist-types/models/models_0.d.ts +1133 -1313
  25. package/dist-types/models/models_1.d.ts +1263 -20
  26. package/dist-types/ts3.4/commands/CreateFlowCommand.d.ts +1 -1
  27. package/dist-types/ts3.4/commands/CreateFlowVersionCommand.d.ts +2 -4
  28. package/dist-types/ts3.4/commands/GetFlowCommand.d.ts +2 -1
  29. package/dist-types/ts3.4/commands/GetFlowVersionCommand.d.ts +2 -4
  30. package/dist-types/ts3.4/commands/GetIngestionJobCommand.d.ts +2 -4
  31. package/dist-types/ts3.4/commands/ListIngestionJobsCommand.d.ts +1 -1
  32. package/dist-types/ts3.4/commands/StartIngestionJobCommand.d.ts +1 -1
  33. package/dist-types/ts3.4/commands/StopIngestionJobCommand.d.ts +4 -2
  34. package/dist-types/ts3.4/commands/UpdateFlowCommand.d.ts +1 -1
  35. package/dist-types/ts3.4/models/models_0.d.ts +603 -471
  36. package/dist-types/ts3.4/models/models_1.d.ts +597 -8
  37. package/package.json +12 -12
@@ -397,7 +397,7 @@ export interface CreateAgentActionGroupRequest {
397
397
  * Computer use is a new Anthropic Claude model capability (in beta) available with Anthropic Claude 3.7 Sonnet and Claude 3.5 Sonnet v2 only.
398
398
  * When operating computer use functionality, we recommend taking additional security precautions,
399
399
  * such as executing computer actions in virtual environments with restricted data access and limited internet connectivity.
400
- * For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/agents-computer-use.html">Configure an Amazon Bedrock Agent to complete tasks with computer use tools</a>.
400
+ * For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/agent-computer-use.html">Configure an Amazon Bedrock Agent to complete tasks with computer use tools</a>.
401
401
  * </p>
402
402
  * </important>
403
403
  * <ul>
@@ -424,7 +424,7 @@ export interface CreateAgentActionGroupRequest {
424
424
  * <p>The configuration settings for a computer use action.</p>
425
425
  * <important>
426
426
  * <p>
427
- * Computer use is a new Anthropic Claude model capability (in beta) available with Anthropic Claude 3.7 Sonnet and Claude 3.5 Sonnet v2 only. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/agents-computer-use.html">Configure an Amazon Bedrock Agent to complete tasks with computer use tools</a>.
427
+ * Computer use is a new Anthropic Claude model capability (in beta) available with Anthropic Claude 3.7 Sonnet and Claude 3.5 Sonnet v2 only. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/agent-computer-use.html">Configure an Amazon Bedrock Agent to complete tasks with computer use tools</a>.
428
428
  * </p>
429
429
  * </important>
430
430
  * @public
@@ -507,7 +507,7 @@ export interface AgentActionGroup {
507
507
  * <p>The configuration settings for a computer use action.</p>
508
508
  * <important>
509
509
  * <p>
510
- * Computer use is a new Anthropic Claude model capability (in beta) available with Claude 3.7 Sonnet and Claude 3.5 Sonnet v2 only. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/agents-computer-use.html">Configure an Amazon Bedrock Agent to complete tasks with computer use tools</a>.
510
+ * Computer use is a new Anthropic Claude model capability (in beta) available with Claude 3.7 Sonnet and Claude 3.5 Sonnet v2 only. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/agent-computer-use.html">Configure an Amazon Bedrock Agent to complete tasks with computer use tools</a>.
511
511
  * </p>
512
512
  * </important>
513
513
  * @public
@@ -803,7 +803,7 @@ export interface UpdateAgentActionGroupRequest {
803
803
  * Computer use is a new Anthropic Claude model capability (in beta) available with Anthropic Claude 3.7 Sonnet and Claude 3.5 Sonnet v2 only.
804
804
  * When operating computer use functionality, we recommend taking additional security precautions,
805
805
  * such as executing computer actions in virtual environments with restricted data access and limited internet connectivity.
806
- * For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/agents-computer-use.html">Configure an Amazon Bedrock Agent to complete tasks with computer use tools</a>.
806
+ * For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/agent-computer-use.html">Configure an Amazon Bedrock Agent to complete tasks with computer use tools</a>.
807
807
  * </p>
808
808
  * </important>
809
809
  * <ul>
@@ -831,7 +831,7 @@ export interface UpdateAgentActionGroupRequest {
831
831
  * <p>The configuration settings for a computer use action.</p>
832
832
  * <important>
833
833
  * <p>
834
- * Computer use is a new Anthropic Claude model capability (in beta) available with Claude 3.7 Sonnet and Claude 3.5 Sonnet v2 only. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/agents-computer-use.html">Configure an Amazon Bedrock Agent to complete tasks with computer use tools</a>.
834
+ * Computer use is a new Anthropic Claude model capability (in beta) available with Claude 3.7 Sonnet and Claude 3.5 Sonnet v2 only. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/agent-computer-use.html">Configure an Amazon Bedrock Agent to complete tasks with computer use tools</a>.
835
835
  * </p>
836
836
  * </important>
837
837
  * @public
@@ -1109,7 +1109,7 @@ export interface PromptConfiguration {
1109
1109
  * <ul>
1110
1110
  * <li>
1111
1111
  * <p>
1112
- * <code>PRE_PROCESSING</code> – <code>DISABLED</code>
1112
+ * <code>PRE_PROCESSING</code> – <code>ENABLED</code>
1113
1113
  * </p>
1114
1114
  * </li>
1115
1115
  * <li>
@@ -1836,7 +1836,7 @@ export interface UpdateAgentCollaboratorResponse {
1836
1836
  agentCollaborator: AgentCollaborator | undefined;
1837
1837
  }
1838
1838
  /**
1839
- * <p>Defines an agent node in your flow. You specify the agent to invoke at this point in the flow. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html">Node types in Amazon Bedrock works</a> in the Amazon Bedrock User Guide.</p>
1839
+ * <p>Defines an agent node in your flow. You specify the agent to invoke at this point in the flow. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html">Node types in a flow</a> in the Amazon Bedrock User Guide.</p>
1840
1840
  * @public
1841
1841
  */
1842
1842
  export interface AgentFlowNodeConfiguration {
@@ -4076,7 +4076,7 @@ export interface FlowConnection {
4076
4076
  configuration?: FlowConnectionConfiguration | undefined;
4077
4077
  }
4078
4078
  /**
4079
- * <p>Defines a collector node in your flow. This node takes an iteration of inputs and consolidates them into an array in the output. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html">Node types in Amazon Bedrock works</a> in the Amazon Bedrock User Guide.</p>
4079
+ * <p>Defines a collector node in your flow. This node takes an iteration of inputs and consolidates them into an array in the output. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html">Node types in a flow</a> in the Amazon Bedrock User Guide.</p>
4080
4080
  * @public
4081
4081
  */
4082
4082
  export interface CollectorFlowNodeConfiguration {
@@ -4098,7 +4098,7 @@ export interface FlowCondition {
4098
4098
  expression?: string | undefined;
4099
4099
  }
4100
4100
  /**
4101
- * <p>Defines a condition node in your flow. You can specify conditions that determine which node comes next in the flow. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html">Node types in Amazon Bedrock works</a> in the Amazon Bedrock User Guide.</p>
4101
+ * <p>Defines a condition node in your flow. You can specify conditions that determine which node comes next in the flow. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html">Node types in a flow</a> in the Amazon Bedrock User Guide.</p>
4102
4102
  * @public
4103
4103
  */
4104
4104
  export interface ConditionFlowNodeConfiguration {
@@ -4151,114 +4151,368 @@ export interface InputFlowNodeConfiguration {
4151
4151
  export interface IteratorFlowNodeConfiguration {
4152
4152
  }
4153
4153
  /**
4154
- * <p>Contains configurations for a knowledge base node in a flow. This node takes a query as the input and returns, as the output, the retrieved responses directly (as an array) or a response generated based on the retrieved responses. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html">Node types in Amazon Bedrock works</a> in the Amazon Bedrock User Guide.</p>
4154
+ * <p>Contains inference configurations related to model inference for a prompt. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/inference-parameters.html">Inference parameters</a>.</p>
4155
4155
  * @public
4156
4156
  */
4157
- export interface KnowledgeBaseFlowNodeConfiguration {
4157
+ export interface PromptModelInferenceConfiguration {
4158
4158
  /**
4159
- * <p>The unique identifier of the knowledge base to query.</p>
4159
+ * <p>Controls the randomness of the response. Choose a lower value for more predictable outputs and a higher value for more surprising outputs.</p>
4160
4160
  * @public
4161
4161
  */
4162
- knowledgeBaseId: string | undefined;
4162
+ temperature?: number | undefined;
4163
4163
  /**
4164
- * <p>The unique identifier of the model or <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/cross-region-inference.html">inference profile</a> to use to generate a response from the query results. Omit this field if you want to return the retrieved results as an array.</p>
4164
+ * <p>The percentage of most-likely candidates that the model considers for the next token.</p>
4165
4165
  * @public
4166
4166
  */
4167
- modelId?: string | undefined;
4167
+ topP?: number | undefined;
4168
4168
  /**
4169
- * <p>Contains configurations for a guardrail to apply during query and response generation for the knowledge base in this configuration.</p>
4169
+ * <p>The maximum number of tokens to return in the response.</p>
4170
4170
  * @public
4171
4171
  */
4172
- guardrailConfiguration?: GuardrailConfiguration | undefined;
4172
+ maxTokens?: number | undefined;
4173
+ /**
4174
+ * <p>A list of strings that define sequences after which the model will stop generating.</p>
4175
+ * @public
4176
+ */
4177
+ stopSequences?: string[] | undefined;
4173
4178
  }
4174
4179
  /**
4175
- * <p>Contains configurations for a Lambda function node in the flow. You specify the Lambda function to invoke and the inputs into the function. The output is the response that is defined in the Lambda function. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html">Node types in Amazon Bedrock works</a> in the Amazon Bedrock User Guide.</p>
4180
+ * <p>Contains inference configurations for the prompt.</p>
4176
4181
  * @public
4177
4182
  */
4178
- export interface LambdaFunctionFlowNodeConfiguration {
4183
+ export type PromptInferenceConfiguration = PromptInferenceConfiguration.TextMember | PromptInferenceConfiguration.$UnknownMember;
4184
+ /**
4185
+ * @public
4186
+ */
4187
+ export declare namespace PromptInferenceConfiguration {
4179
4188
  /**
4180
- * <p>The Amazon Resource Name (ARN) of the Lambda function to invoke.</p>
4189
+ * <p>Contains inference configurations for a text prompt.</p>
4181
4190
  * @public
4182
4191
  */
4183
- lambdaArn: string | undefined;
4192
+ interface TextMember {
4193
+ text: PromptModelInferenceConfiguration;
4194
+ $unknown?: never;
4195
+ }
4196
+ /**
4197
+ * @public
4198
+ */
4199
+ interface $UnknownMember {
4200
+ text?: never;
4201
+ $unknown: [string, any];
4202
+ }
4203
+ interface Visitor<T> {
4204
+ text: (value: PromptModelInferenceConfiguration) => T;
4205
+ _: (name: string, value: any) => T;
4206
+ }
4207
+ const visit: <T>(value: PromptInferenceConfiguration, visitor: Visitor<T>) => T;
4184
4208
  }
4185
4209
  /**
4186
- * <p>Contains configurations for a Lex node in the flow. You specify a Amazon Lex bot to invoke. This node takes an utterance as the input and returns as the output the intent identified by the Amazon Lex bot. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html">Node types in Amazon Bedrock works</a> in the Amazon Bedrock User Guide.</p>
4187
4210
  * @public
4211
+ * @enum
4188
4212
  */
4189
- export interface LexFlowNodeConfiguration {
4190
- /**
4191
- * <p>The Amazon Resource Name (ARN) of the Amazon Lex bot alias to invoke.</p>
4192
- * @public
4193
- */
4194
- botAliasArn: string | undefined;
4213
+ export declare const PerformanceConfigLatency: {
4214
+ readonly OPTIMIZED: "optimized";
4215
+ readonly STANDARD: "standard";
4216
+ };
4217
+ /**
4218
+ * @public
4219
+ */
4220
+ export type PerformanceConfigLatency = (typeof PerformanceConfigLatency)[keyof typeof PerformanceConfigLatency];
4221
+ /**
4222
+ * <p>The performance-related configuration options for the knowledge base retrieval and generation process.</p>
4223
+ * @public
4224
+ */
4225
+ export interface PerformanceConfiguration {
4195
4226
  /**
4196
- * <p>The Region to invoke the Amazon Lex bot in.</p>
4227
+ * <p>The latency optimization setting.</p>
4197
4228
  * @public
4198
4229
  */
4199
- localeId: string | undefined;
4230
+ latency?: PerformanceConfigLatency | undefined;
4200
4231
  }
4201
4232
  /**
4202
- * <p>Contains configurations for an output flow node in the flow. You specify the data type expected for the input into the node in the <code>type</code> field and how to return the final output in the <code>expression</code> field.</p>
4233
+ * <p>Defines a custom prompt template for orchestrating the retrieval and generation process.</p>
4203
4234
  * @public
4204
4235
  */
4205
- export interface OutputFlowNodeConfiguration {
4236
+ export interface KnowledgeBasePromptTemplate {
4237
+ /**
4238
+ * <p>The text of the prompt template.</p>
4239
+ * @public
4240
+ */
4241
+ textPromptTemplate?: string | undefined;
4206
4242
  }
4207
4243
  /**
4208
- * <p>Contains inference configurations related to model inference for a prompt. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/inference-parameters.html">Inference parameters</a>.</p>
4244
+ * <p>Configures how the knowledge base orchestrates the retrieval and generation process, allowing for customization of prompts, inference parameters, and performance settings.</p>
4209
4245
  * @public
4210
4246
  */
4211
- export interface PromptModelInferenceConfiguration {
4247
+ export interface KnowledgeBaseOrchestrationConfiguration {
4212
4248
  /**
4213
- * <p>Controls the randomness of the response. Choose a lower value for more predictable outputs and a higher value for more surprising outputs.</p>
4249
+ * <p>A custom prompt template for orchestrating the retrieval and generation process.</p>
4214
4250
  * @public
4215
4251
  */
4216
- temperature?: number | undefined;
4252
+ promptTemplate?: KnowledgeBasePromptTemplate | undefined;
4217
4253
  /**
4218
- * <p>The percentage of most-likely candidates that the model considers for the next token.</p>
4254
+ * <p>Contains inference configurations for the prompt.</p>
4219
4255
  * @public
4220
4256
  */
4221
- topP?: number | undefined;
4257
+ inferenceConfig?: PromptInferenceConfiguration | undefined;
4222
4258
  /**
4223
- * <p>The maximum number of tokens to return in the response.</p>
4259
+ * <p>The additional model-specific request parameters as key-value pairs to be included in the request to the foundation model.</p>
4224
4260
  * @public
4225
4261
  */
4226
- maxTokens?: number | undefined;
4262
+ additionalModelRequestFields?: Record<string, __DocumentType> | undefined;
4227
4263
  /**
4228
- * <p>A list of strings that define sequences after which the model will stop generating.</p>
4264
+ * <p>The performance configuration options for the knowledge base retrieval and generation process.</p>
4229
4265
  * @public
4230
4266
  */
4231
- stopSequences?: string[] | undefined;
4267
+ performanceConfig?: PerformanceConfiguration | undefined;
4232
4268
  }
4233
4269
  /**
4234
- * <p>Contains inference configurations for the prompt.</p>
4270
+ * @public
4271
+ * @enum
4272
+ */
4273
+ export declare const RerankingMetadataSelectionMode: {
4274
+ readonly ALL: "ALL";
4275
+ readonly SELECTIVE: "SELECTIVE";
4276
+ };
4277
+ /**
4235
4278
  * @public
4236
4279
  */
4237
- export type PromptInferenceConfiguration = PromptInferenceConfiguration.TextMember | PromptInferenceConfiguration.$UnknownMember;
4280
+ export type RerankingMetadataSelectionMode = (typeof RerankingMetadataSelectionMode)[keyof typeof RerankingMetadataSelectionMode];
4238
4281
  /**
4282
+ * <p>Specifies a metadata field to include or exclude during the reranking process.</p>
4239
4283
  * @public
4240
4284
  */
4241
- export declare namespace PromptInferenceConfiguration {
4285
+ export interface FieldForReranking {
4242
4286
  /**
4243
- * <p>Contains inference configurations for a text prompt.</p>
4287
+ * <p>The name of the metadata field to include or exclude during reranking.</p>
4244
4288
  * @public
4245
4289
  */
4246
- interface TextMember {
4247
- text: PromptModelInferenceConfiguration;
4290
+ fieldName: string | undefined;
4291
+ }
4292
+ /**
4293
+ * <p>Configures the metadata fields to include or exclude during the reranking process when using selective mode.</p>
4294
+ * @public
4295
+ */
4296
+ export type RerankingMetadataSelectiveModeConfiguration = RerankingMetadataSelectiveModeConfiguration.FieldsToExcludeMember | RerankingMetadataSelectiveModeConfiguration.FieldsToIncludeMember | RerankingMetadataSelectiveModeConfiguration.$UnknownMember;
4297
+ /**
4298
+ * @public
4299
+ */
4300
+ export declare namespace RerankingMetadataSelectiveModeConfiguration {
4301
+ /**
4302
+ * <p>Specifies the metadata fields to include in the reranking process.</p>
4303
+ * @public
4304
+ */
4305
+ interface FieldsToIncludeMember {
4306
+ fieldsToInclude: FieldForReranking[];
4307
+ fieldsToExclude?: never;
4308
+ $unknown?: never;
4309
+ }
4310
+ /**
4311
+ * <p>Specifies the metadata fields to exclude from the reranking process.</p>
4312
+ * @public
4313
+ */
4314
+ interface FieldsToExcludeMember {
4315
+ fieldsToInclude?: never;
4316
+ fieldsToExclude: FieldForReranking[];
4248
4317
  $unknown?: never;
4249
4318
  }
4250
4319
  /**
4251
4320
  * @public
4252
4321
  */
4253
4322
  interface $UnknownMember {
4254
- text?: never;
4323
+ fieldsToInclude?: never;
4324
+ fieldsToExclude?: never;
4255
4325
  $unknown: [string, any];
4256
4326
  }
4257
4327
  interface Visitor<T> {
4258
- text: (value: PromptModelInferenceConfiguration) => T;
4328
+ fieldsToInclude: (value: FieldForReranking[]) => T;
4329
+ fieldsToExclude: (value: FieldForReranking[]) => T;
4259
4330
  _: (name: string, value: any) => T;
4260
4331
  }
4261
- const visit: <T>(value: PromptInferenceConfiguration, visitor: Visitor<T>) => T;
4332
+ const visit: <T>(value: RerankingMetadataSelectiveModeConfiguration, visitor: Visitor<T>) => T;
4333
+ }
4334
+ /**
4335
+ * <p>Specifies how metadata fields should be handled during the reranking process.</p>
4336
+ * @public
4337
+ */
4338
+ export interface MetadataConfigurationForReranking {
4339
+ /**
4340
+ * <p>The mode for selecting metadata fields for reranking.</p>
4341
+ * @public
4342
+ */
4343
+ selectionMode: RerankingMetadataSelectionMode | undefined;
4344
+ /**
4345
+ * <p>The configuration for selective metadata field inclusion or exclusion during reranking.</p>
4346
+ * @public
4347
+ */
4348
+ selectiveModeConfiguration?: RerankingMetadataSelectiveModeConfiguration | undefined;
4349
+ }
4350
+ /**
4351
+ * <p>Configures the Amazon Bedrock model used for reranking retrieved results.</p>
4352
+ * @public
4353
+ */
4354
+ export interface VectorSearchBedrockRerankingModelConfiguration {
4355
+ /**
4356
+ * <p>The Amazon Resource Name (ARN) of the Amazon Bedrock reranker model.</p>
4357
+ * @public
4358
+ */
4359
+ modelArn: string | undefined;
4360
+ /**
4361
+ * <p>Specifies additional model-specific request parameters as key-value pairs that are included in the request to the Amazon Bedrock reranker model.</p>
4362
+ * @public
4363
+ */
4364
+ additionalModelRequestFields?: Record<string, __DocumentType> | undefined;
4365
+ }
4366
+ /**
4367
+ * <p>Configures the Amazon Bedrock reranker model to improve the relevance of retrieved results.</p>
4368
+ * @public
4369
+ */
4370
+ export interface VectorSearchBedrockRerankingConfiguration {
4371
+ /**
4372
+ * <p>Specifies the configuration for the Amazon Bedrock reranker model.</p>
4373
+ * @public
4374
+ */
4375
+ modelConfiguration: VectorSearchBedrockRerankingModelConfiguration | undefined;
4376
+ /**
4377
+ * <p>Specifies the number of results to return after reranking.</p>
4378
+ * @public
4379
+ */
4380
+ numberOfRerankedResults?: number | undefined;
4381
+ /**
4382
+ * <p>Specifies how metadata fields should be handled during the reranking process.</p>
4383
+ * @public
4384
+ */
4385
+ metadataConfiguration?: MetadataConfigurationForReranking | undefined;
4386
+ }
4387
+ /**
4388
+ * @public
4389
+ * @enum
4390
+ */
4391
+ export declare const VectorSearchRerankingConfigurationType: {
4392
+ readonly BEDROCK_RERANKING_MODEL: "BEDROCK_RERANKING_MODEL";
4393
+ };
4394
+ /**
4395
+ * @public
4396
+ */
4397
+ export type VectorSearchRerankingConfigurationType = (typeof VectorSearchRerankingConfigurationType)[keyof typeof VectorSearchRerankingConfigurationType];
4398
+ /**
4399
+ * <p>Specifies how retrieved results from a knowledge base are reranked to improve relevance.</p>
4400
+ * @public
4401
+ */
4402
+ export interface VectorSearchRerankingConfiguration {
4403
+ /**
4404
+ * <p>Specifies the type of reranking model to use. Currently, the only supported value is <code>BEDROCK_RERANKING_MODEL</code>.</p>
4405
+ * @public
4406
+ */
4407
+ type: VectorSearchRerankingConfigurationType | undefined;
4408
+ /**
4409
+ * <p>Specifies the configuration for using an Amazon Bedrock reranker model to rerank retrieved results.</p>
4410
+ * @public
4411
+ */
4412
+ bedrockRerankingConfiguration?: VectorSearchBedrockRerankingConfiguration | undefined;
4413
+ }
4414
+ /**
4415
+ * <p>Contains configurations for a knowledge base node in a flow. This node takes a query as the input and returns, as the output, the retrieved responses directly (as an array) or a response generated based on the retrieved responses. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html">Node types in a flow</a> in the Amazon Bedrock User Guide.</p>
4416
+ * @public
4417
+ */
4418
+ export interface KnowledgeBaseFlowNodeConfiguration {
4419
+ /**
4420
+ * <p>The unique identifier of the knowledge base to query.</p>
4421
+ * @public
4422
+ */
4423
+ knowledgeBaseId: string | undefined;
4424
+ /**
4425
+ * <p>The unique identifier of the model or <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/cross-region-inference.html">inference profile</a> to use to generate a response from the query results. Omit this field if you want to return the retrieved results as an array.</p>
4426
+ * @public
4427
+ */
4428
+ modelId?: string | undefined;
4429
+ /**
4430
+ * <p>Contains configurations for a guardrail to apply during query and response generation for the knowledge base in this configuration.</p>
4431
+ * @public
4432
+ */
4433
+ guardrailConfiguration?: GuardrailConfiguration | undefined;
4434
+ /**
4435
+ * <p>The number of results to retrieve from the knowledge base.</p>
4436
+ * @public
4437
+ */
4438
+ numberOfResults?: number | undefined;
4439
+ /**
4440
+ * <p>A custom prompt template to use with the knowledge base for generating responses.</p>
4441
+ * @public
4442
+ */
4443
+ promptTemplate?: KnowledgeBasePromptTemplate | undefined;
4444
+ /**
4445
+ * <p>Contains inference configurations for the prompt.</p>
4446
+ * @public
4447
+ */
4448
+ inferenceConfiguration?: PromptInferenceConfiguration | undefined;
4449
+ /**
4450
+ * <p>The configuration for reranking the retrieved results from the knowledge base to improve relevance.</p>
4451
+ * @public
4452
+ */
4453
+ rerankingConfiguration?: VectorSearchRerankingConfiguration | undefined;
4454
+ /**
4455
+ * <p>The configuration for orchestrating the retrieval and generation process in the knowledge base node.</p>
4456
+ * @public
4457
+ */
4458
+ orchestrationConfiguration?: KnowledgeBaseOrchestrationConfiguration | undefined;
4459
+ }
4460
+ /**
4461
+ * <p>Contains configurations for a Lambda function node in the flow. You specify the Lambda function to invoke and the inputs into the function. The output is the response that is defined in the Lambda function. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html">Node types in a flow</a> in the Amazon Bedrock User Guide.</p>
4462
+ * @public
4463
+ */
4464
+ export interface LambdaFunctionFlowNodeConfiguration {
4465
+ /**
4466
+ * <p>The Amazon Resource Name (ARN) of the Lambda function to invoke.</p>
4467
+ * @public
4468
+ */
4469
+ lambdaArn: string | undefined;
4470
+ }
4471
+ /**
4472
+ * <p>Contains configurations for a Lex node in the flow. You specify a Amazon Lex bot to invoke. This node takes an utterance as the input and returns as the output the intent identified by the Amazon Lex bot. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html">Node types in a flow</a> in the Amazon Bedrock User Guide.</p>
4473
+ * @public
4474
+ */
4475
+ export interface LexFlowNodeConfiguration {
4476
+ /**
4477
+ * <p>The Amazon Resource Name (ARN) of the Amazon Lex bot alias to invoke.</p>
4478
+ * @public
4479
+ */
4480
+ botAliasArn: string | undefined;
4481
+ /**
4482
+ * <p>The Region to invoke the Amazon Lex bot in.</p>
4483
+ * @public
4484
+ */
4485
+ localeId: string | undefined;
4486
+ }
4487
+ /**
4488
+ * <p>Contains configurations for the controller node of a DoWhile loop in the flow.</p>
4489
+ * @public
4490
+ */
4491
+ export interface LoopControllerFlowNodeConfiguration {
4492
+ /**
4493
+ * <p>Specifies the condition that determines when the flow exits the DoWhile loop. The loop
4494
+ * executes until this condition evaluates to true.</p>
4495
+ * @public
4496
+ */
4497
+ continueCondition: FlowCondition | undefined;
4498
+ /**
4499
+ * <p>Specifies the maximum number of times the DoWhile loop can iterate before the flow
4500
+ * exits the loop.</p>
4501
+ * @public
4502
+ */
4503
+ maxIterations?: number | undefined;
4504
+ }
4505
+ /**
4506
+ * <p>Contains configurations for the input node of a DoWhile loop in the flow.</p>
4507
+ * @public
4508
+ */
4509
+ export interface LoopInputFlowNodeConfiguration {
4510
+ }
4511
+ /**
4512
+ * <p>Contains configurations for an output flow node in the flow. You specify the data type expected for the input into the node in the <code>type</code> field and how to return the final output in the <code>expression</code> field.</p>
4513
+ * @public
4514
+ */
4515
+ export interface OutputFlowNodeConfiguration {
4262
4516
  }
4263
4517
  /**
4264
4518
  * <p>Contains information about a variable in the prompt.</p>
@@ -4779,7 +5033,7 @@ export declare namespace PromptFlowNodeSourceConfiguration {
4779
5033
  const visit: <T>(value: PromptFlowNodeSourceConfiguration, visitor: Visitor<T>) => T;
4780
5034
  }
4781
5035
  /**
4782
- * <p>Contains configurations for a prompt node in the flow. You can use a prompt from Prompt management or you can define one in this node. If the prompt contains variables, the inputs into this node will fill in the variables. The output from this node is the response generated by the model. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html">Node types in Amazon Bedrock works</a> in the Amazon Bedrock User Guide.</p>
5036
+ * <p>Contains configurations for a prompt node in the flow. You can use a prompt from Prompt management or you can define one in this node. If the prompt contains variables, the inputs into this node will fill in the variables. The output from this node is the response generated by the model. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html">Node types in a flow</a> in the Amazon Bedrock User Guide.</p>
4783
5037
  * @public
4784
5038
  */
4785
5039
  export interface PromptFlowNodeConfiguration {
@@ -4899,312 +5153,18 @@ export interface StorageFlowNodeConfiguration {
4899
5153
  serviceConfiguration: StorageFlowNodeServiceConfiguration | undefined;
4900
5154
  }
4901
5155
  /**
4902
- * <p>Contains configurations for a node in your flow. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html">Node types in Amazon Bedrock works</a> in the Amazon Bedrock User Guide.</p>
4903
5156
  * @public
5157
+ * @enum
4904
5158
  */
4905
- export type FlowNodeConfiguration = FlowNodeConfiguration.AgentMember | FlowNodeConfiguration.CollectorMember | FlowNodeConfiguration.ConditionMember | FlowNodeConfiguration.InlineCodeMember | FlowNodeConfiguration.InputMember | FlowNodeConfiguration.IteratorMember | FlowNodeConfiguration.KnowledgeBaseMember | FlowNodeConfiguration.LambdaFunctionMember | FlowNodeConfiguration.LexMember | FlowNodeConfiguration.OutputMember | FlowNodeConfiguration.PromptMember | FlowNodeConfiguration.RetrievalMember | FlowNodeConfiguration.StorageMember | FlowNodeConfiguration.$UnknownMember;
5159
+ export declare const FlowNodeInputCategory: {
5160
+ readonly EXIT_LOOP: "ExitLoop";
5161
+ readonly LOOP_CONDITION: "LoopCondition";
5162
+ readonly RETURN_VALUE_TO_LOOP_START: "ReturnValueToLoopStart";
5163
+ };
4906
5164
  /**
4907
5165
  * @public
4908
5166
  */
4909
- export declare namespace FlowNodeConfiguration {
4910
- /**
4911
- * <p>Contains configurations for an input flow node in your flow. The first node in the flow. <code>inputs</code> can't be specified for this node.</p>
4912
- * @public
4913
- */
4914
- interface InputMember {
4915
- input: InputFlowNodeConfiguration;
4916
- output?: never;
4917
- knowledgeBase?: never;
4918
- condition?: never;
4919
- lex?: never;
4920
- prompt?: never;
4921
- lambdaFunction?: never;
4922
- storage?: never;
4923
- agent?: never;
4924
- retrieval?: never;
4925
- iterator?: never;
4926
- collector?: never;
4927
- inlineCode?: never;
4928
- $unknown?: never;
4929
- }
4930
- /**
4931
- * <p>Contains configurations for an output flow node in your flow. The last node in the flow. <code>outputs</code> can't be specified for this node.</p>
4932
- * @public
4933
- */
4934
- interface OutputMember {
4935
- input?: never;
4936
- output: OutputFlowNodeConfiguration;
4937
- knowledgeBase?: never;
4938
- condition?: never;
4939
- lex?: never;
4940
- prompt?: never;
4941
- lambdaFunction?: never;
4942
- storage?: never;
4943
- agent?: never;
4944
- retrieval?: never;
4945
- iterator?: never;
4946
- collector?: never;
4947
- inlineCode?: never;
4948
- $unknown?: never;
4949
- }
4950
- /**
4951
- * <p>Contains configurations for a knowledge base node in your flow. Queries a knowledge base and returns the retrieved results or generated response.</p>
4952
- * @public
4953
- */
4954
- interface KnowledgeBaseMember {
4955
- input?: never;
4956
- output?: never;
4957
- knowledgeBase: KnowledgeBaseFlowNodeConfiguration;
4958
- condition?: never;
4959
- lex?: never;
4960
- prompt?: never;
4961
- lambdaFunction?: never;
4962
- storage?: never;
4963
- agent?: never;
4964
- retrieval?: never;
4965
- iterator?: never;
4966
- collector?: never;
4967
- inlineCode?: never;
4968
- $unknown?: never;
4969
- }
4970
- /**
4971
- * <p>Contains configurations for a condition node in your flow. Defines conditions that lead to different branches of the flow.</p>
4972
- * @public
4973
- */
4974
- interface ConditionMember {
4975
- input?: never;
4976
- output?: never;
4977
- knowledgeBase?: never;
4978
- condition: ConditionFlowNodeConfiguration;
4979
- lex?: never;
4980
- prompt?: never;
4981
- lambdaFunction?: never;
4982
- storage?: never;
4983
- agent?: never;
4984
- retrieval?: never;
4985
- iterator?: never;
4986
- collector?: never;
4987
- inlineCode?: never;
4988
- $unknown?: never;
4989
- }
4990
- /**
4991
- * <p>Contains configurations for a Lex node in your flow. Invokes an Amazon Lex bot to identify the intent of the input and return the intent as the output.</p>
4992
- * @public
4993
- */
4994
- interface LexMember {
4995
- input?: never;
4996
- output?: never;
4997
- knowledgeBase?: never;
4998
- condition?: never;
4999
- lex: LexFlowNodeConfiguration;
5000
- prompt?: never;
5001
- lambdaFunction?: never;
5002
- storage?: never;
5003
- agent?: never;
5004
- retrieval?: never;
5005
- iterator?: never;
5006
- collector?: never;
5007
- inlineCode?: never;
5008
- $unknown?: never;
5009
- }
5010
- /**
5011
- * <p>Contains configurations for a prompt node in your flow. Runs a prompt and generates the model response as the output. You can use a prompt from Prompt management or you can configure one in this node.</p>
5012
- * @public
5013
- */
5014
- interface PromptMember {
5015
- input?: never;
5016
- output?: never;
5017
- knowledgeBase?: never;
5018
- condition?: never;
5019
- lex?: never;
5020
- prompt: PromptFlowNodeConfiguration;
5021
- lambdaFunction?: never;
5022
- storage?: never;
5023
- agent?: never;
5024
- retrieval?: never;
5025
- iterator?: never;
5026
- collector?: never;
5027
- inlineCode?: never;
5028
- $unknown?: never;
5029
- }
5030
- /**
5031
- * <p>Contains configurations for a Lambda function node in your flow. Invokes an Lambda function.</p>
5032
- * @public
5033
- */
5034
- interface LambdaFunctionMember {
5035
- input?: never;
5036
- output?: never;
5037
- knowledgeBase?: never;
5038
- condition?: never;
5039
- lex?: never;
5040
- prompt?: never;
5041
- lambdaFunction: LambdaFunctionFlowNodeConfiguration;
5042
- storage?: never;
5043
- agent?: never;
5044
- retrieval?: never;
5045
- iterator?: never;
5046
- collector?: never;
5047
- inlineCode?: never;
5048
- $unknown?: never;
5049
- }
5050
- /**
5051
- * <p>Contains configurations for a storage node in your flow. Stores an input in an Amazon S3 location.</p>
5052
- * @public
5053
- */
5054
- interface StorageMember {
5055
- input?: never;
5056
- output?: never;
5057
- knowledgeBase?: never;
5058
- condition?: never;
5059
- lex?: never;
5060
- prompt?: never;
5061
- lambdaFunction?: never;
5062
- storage: StorageFlowNodeConfiguration;
5063
- agent?: never;
5064
- retrieval?: never;
5065
- iterator?: never;
5066
- collector?: never;
5067
- inlineCode?: never;
5068
- $unknown?: never;
5069
- }
5070
- /**
5071
- * <p>Contains configurations for an agent node in your flow. Invokes an alias of an agent and returns the response.</p>
5072
- * @public
5073
- */
5074
- interface AgentMember {
5075
- input?: never;
5076
- output?: never;
5077
- knowledgeBase?: never;
5078
- condition?: never;
5079
- lex?: never;
5080
- prompt?: never;
5081
- lambdaFunction?: never;
5082
- storage?: never;
5083
- agent: AgentFlowNodeConfiguration;
5084
- retrieval?: never;
5085
- iterator?: never;
5086
- collector?: never;
5087
- inlineCode?: never;
5088
- $unknown?: never;
5089
- }
5090
- /**
5091
- * <p>Contains configurations for a retrieval node in your flow. Retrieves data from an Amazon S3 location and returns it as the output.</p>
5092
- * @public
5093
- */
5094
- interface RetrievalMember {
5095
- input?: never;
5096
- output?: never;
5097
- knowledgeBase?: never;
5098
- condition?: never;
5099
- lex?: never;
5100
- prompt?: never;
5101
- lambdaFunction?: never;
5102
- storage?: never;
5103
- agent?: never;
5104
- retrieval: RetrievalFlowNodeConfiguration;
5105
- iterator?: never;
5106
- collector?: never;
5107
- inlineCode?: never;
5108
- $unknown?: never;
5109
- }
5110
- /**
5111
- * <p>Contains configurations for an iterator node in your flow. Takes an input that is an array and iteratively sends each item of the array as an output to the following node. The size of the array is also returned in the output.</p>
5112
- * <p>The output flow node at the end of the flow iteration will return a response for each member of the array. To return only one response, you can include a collector node downstream from the iterator node.</p>
5113
- * @public
5114
- */
5115
- interface IteratorMember {
5116
- input?: never;
5117
- output?: never;
5118
- knowledgeBase?: never;
5119
- condition?: never;
5120
- lex?: never;
5121
- prompt?: never;
5122
- lambdaFunction?: never;
5123
- storage?: never;
5124
- agent?: never;
5125
- retrieval?: never;
5126
- iterator: IteratorFlowNodeConfiguration;
5127
- collector?: never;
5128
- inlineCode?: never;
5129
- $unknown?: never;
5130
- }
5131
- /**
5132
- * <p>Contains configurations for a collector node in your flow. Collects an iteration of inputs and consolidates them into an array of outputs.</p>
5133
- * @public
5134
- */
5135
- interface CollectorMember {
5136
- input?: never;
5137
- output?: never;
5138
- knowledgeBase?: never;
5139
- condition?: never;
5140
- lex?: never;
5141
- prompt?: never;
5142
- lambdaFunction?: never;
5143
- storage?: never;
5144
- agent?: never;
5145
- retrieval?: never;
5146
- iterator?: never;
5147
- collector: CollectorFlowNodeConfiguration;
5148
- inlineCode?: never;
5149
- $unknown?: never;
5150
- }
5151
- /**
5152
- * <p>Contains configurations for an inline code node in your flow. Inline code nodes let you write and execute code directly within your flow, enabling data transformations, custom logic, and integrations without needing an external Lambda function.</p>
5153
- * @public
5154
- */
5155
- interface InlineCodeMember {
5156
- input?: never;
5157
- output?: never;
5158
- knowledgeBase?: never;
5159
- condition?: never;
5160
- lex?: never;
5161
- prompt?: never;
5162
- lambdaFunction?: never;
5163
- storage?: never;
5164
- agent?: never;
5165
- retrieval?: never;
5166
- iterator?: never;
5167
- collector?: never;
5168
- inlineCode: InlineCodeFlowNodeConfiguration;
5169
- $unknown?: never;
5170
- }
5171
- /**
5172
- * @public
5173
- */
5174
- interface $UnknownMember {
5175
- input?: never;
5176
- output?: never;
5177
- knowledgeBase?: never;
5178
- condition?: never;
5179
- lex?: never;
5180
- prompt?: never;
5181
- lambdaFunction?: never;
5182
- storage?: never;
5183
- agent?: never;
5184
- retrieval?: never;
5185
- iterator?: never;
5186
- collector?: never;
5187
- inlineCode?: never;
5188
- $unknown: [string, any];
5189
- }
5190
- interface Visitor<T> {
5191
- input: (value: InputFlowNodeConfiguration) => T;
5192
- output: (value: OutputFlowNodeConfiguration) => T;
5193
- knowledgeBase: (value: KnowledgeBaseFlowNodeConfiguration) => T;
5194
- condition: (value: ConditionFlowNodeConfiguration) => T;
5195
- lex: (value: LexFlowNodeConfiguration) => T;
5196
- prompt: (value: PromptFlowNodeConfiguration) => T;
5197
- lambdaFunction: (value: LambdaFunctionFlowNodeConfiguration) => T;
5198
- storage: (value: StorageFlowNodeConfiguration) => T;
5199
- agent: (value: AgentFlowNodeConfiguration) => T;
5200
- retrieval: (value: RetrievalFlowNodeConfiguration) => T;
5201
- iterator: (value: IteratorFlowNodeConfiguration) => T;
5202
- collector: (value: CollectorFlowNodeConfiguration) => T;
5203
- inlineCode: (value: InlineCodeFlowNodeConfiguration) => T;
5204
- _: (name: string, value: any) => T;
5205
- }
5206
- const visit: <T>(value: FlowNodeConfiguration, visitor: Visitor<T>) => T;
5207
- }
5167
+ export type FlowNodeInputCategory = (typeof FlowNodeInputCategory)[keyof typeof FlowNodeInputCategory];
5208
5168
  /**
5209
5169
  * @public
5210
5170
  * @enum
@@ -5221,17 +5181,18 @@ export declare const FlowNodeIODataType: {
5221
5181
  */
5222
5182
  export type FlowNodeIODataType = (typeof FlowNodeIODataType)[keyof typeof FlowNodeIODataType];
5223
5183
  /**
5224
- * <p>Contains configurations for an input to a node.</p>
5184
+ * <p>Contains configurations for an input in an Amazon Bedrock Flows node.</p>
5225
5185
  * @public
5226
5186
  */
5227
5187
  export interface FlowNodeInput {
5228
5188
  /**
5229
- * <p>A name for the input that you can reference.</p>
5189
+ * <p>Specifies a name for the input that you can reference.</p>
5230
5190
  * @public
5231
5191
  */
5232
5192
  name: string | undefined;
5233
5193
  /**
5234
- * <p>The data type of the input. If the input doesn't match this type at runtime, a validation error will be thrown.</p>
5194
+ * <p>Specifies the data type of the input. If the input doesn't match this type at runtime,
5195
+ * a validation error will be thrown.</p>
5235
5196
  * @public
5236
5197
  */
5237
5198
  type: FlowNodeIODataType | undefined;
@@ -5240,6 +5201,30 @@ export interface FlowNodeInput {
5240
5201
  * @public
5241
5202
  */
5242
5203
  expression: string | undefined;
5204
+ /**
5205
+ * <p>Specifies how input data flows between iterations in a DoWhile
5206
+ * loop.</p>
5207
+ * <ul>
5208
+ * <li>
5209
+ * <p>
5210
+ * <code>LoopCondition</code> - Controls whether the loop continues by evaluating condition expressions against the input data. Use this category to define
5211
+ * the condition that determines if the loop should continue. </p>
5212
+ * </li>
5213
+ * <li>
5214
+ * <p>
5215
+ * <code>ReturnValueToLoopStart</code> - Defines data to pass back to the start
5216
+ * of the loop's next iteration. Use this category for variables that you
5217
+ * want to update for each loop iteration.</p>
5218
+ * </li>
5219
+ * <li>
5220
+ * <p>
5221
+ * <code>ExitLoop</code> - Defines the value that's available once the loop ends.
5222
+ * Use this category to expose loop results to nodes outside the loop.</p>
5223
+ * </li>
5224
+ * </ul>
5225
+ * @public
5226
+ */
5227
+ category?: FlowNodeInputCategory | undefined;
5243
5228
  }
5244
5229
  /**
5245
5230
  * <p>Contains configurations for an output from a node.</p>
@@ -5271,6 +5256,9 @@ export declare const FlowNodeType: {
5271
5256
  readonly KNOWLEDGE_BASE: "KnowledgeBase";
5272
5257
  readonly LAMBDA_FUNCTION: "LambdaFunction";
5273
5258
  readonly LEX: "Lex";
5259
+ readonly LOOP: "Loop";
5260
+ readonly LOOP_CONTROLLER: "LoopController";
5261
+ readonly LOOP_INPUT: "LoopInput";
5274
5262
  readonly OUTPUT: "Output";
5275
5263
  readonly PROMPT: "Prompt";
5276
5264
  readonly RETRIEVAL: "Retrieval";
@@ -5280,94 +5268,6 @@ export declare const FlowNodeType: {
5280
5268
  * @public
5281
5269
  */
5282
5270
  export type FlowNodeType = (typeof FlowNodeType)[keyof typeof FlowNodeType];
5283
- /**
5284
- * <p>Contains configurations about a node in the flow.</p>
5285
- * @public
5286
- */
5287
- export interface FlowNode {
5288
- /**
5289
- * <p>A name for the node.</p>
5290
- * @public
5291
- */
5292
- name: string | undefined;
5293
- /**
5294
- * <p>The type of node. This value must match the name of the key that you provide in the configuration you provide in the <code>FlowNodeConfiguration</code> field.</p>
5295
- * @public
5296
- */
5297
- type: FlowNodeType | undefined;
5298
- /**
5299
- * <p>Contains configurations for the node.</p>
5300
- * @public
5301
- */
5302
- configuration?: FlowNodeConfiguration | undefined;
5303
- /**
5304
- * <p>An array of objects, each of which contains information about an input into the node.</p>
5305
- * @public
5306
- */
5307
- inputs?: FlowNodeInput[] | undefined;
5308
- /**
5309
- * <p>A list of objects, each of which contains information about an output from the node.</p>
5310
- * @public
5311
- */
5312
- outputs?: FlowNodeOutput[] | undefined;
5313
- }
5314
- /**
5315
- * <p>The definition of the nodes and connections between nodes in the flow.</p>
5316
- * @public
5317
- */
5318
- export interface FlowDefinition {
5319
- /**
5320
- * <p>An array of node definitions in the flow.</p>
5321
- * @public
5322
- */
5323
- nodes?: FlowNode[] | undefined;
5324
- /**
5325
- * <p>An array of connection definitions in the flow.</p>
5326
- * @public
5327
- */
5328
- connections?: FlowConnection[] | undefined;
5329
- }
5330
- /**
5331
- * @public
5332
- */
5333
- export interface CreateFlowRequest {
5334
- /**
5335
- * <p>A name for the flow.</p>
5336
- * @public
5337
- */
5338
- name: string | undefined;
5339
- /**
5340
- * <p>A description for the flow.</p>
5341
- * @public
5342
- */
5343
- description?: string | undefined;
5344
- /**
5345
- * <p>The Amazon Resource Name (ARN) of the service role with permissions to create and manage a flow. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-permissions.html">Create a service role for flows in Amazon Bedrock</a> in the Amazon Bedrock User Guide.</p>
5346
- * @public
5347
- */
5348
- executionRoleArn: string | undefined;
5349
- /**
5350
- * <p>The Amazon Resource Name (ARN) of the KMS key to encrypt the flow.</p>
5351
- * @public
5352
- */
5353
- customerEncryptionKeyArn?: string | undefined;
5354
- /**
5355
- * <p>A definition of the nodes and connections between nodes in the flow.</p>
5356
- * @public
5357
- */
5358
- definition?: FlowDefinition | undefined;
5359
- /**
5360
- * <p>A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request,
5361
- * Amazon Bedrock ignores the request, but does not return an error. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html">Ensuring idempotency</a>.</p>
5362
- * @public
5363
- */
5364
- clientToken?: string | undefined;
5365
- /**
5366
- * <p>Any tags that you want to attach to the flow. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/tagging.html">Tagging resources in Amazon Bedrock</a>.</p>
5367
- * @public
5368
- */
5369
- tags?: Record<string, string> | undefined;
5370
- }
5371
5271
  /**
5372
5272
  * @public
5373
5273
  * @enum
@@ -5385,87 +5285,65 @@ export type FlowStatus = (typeof FlowStatus)[keyof typeof FlowStatus];
5385
5285
  /**
5386
5286
  * @public
5387
5287
  */
5388
- export interface CreateFlowResponse {
5389
- /**
5390
- * <p>The name of the flow.</p>
5391
- * @public
5392
- */
5393
- name: string | undefined;
5394
- /**
5395
- * <p>The description of the flow.</p>
5396
- * @public
5397
- */
5398
- description?: string | undefined;
5399
- /**
5400
- * <p>The Amazon Resource Name (ARN) of the service role with permissions to create a flow. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-permissions.html">Create a service role for flows in Amazon Bedrock</a> in the Amazon Bedrock User Guide.</p>
5401
- * @public
5402
- */
5403
- executionRoleArn: string | undefined;
5404
- /**
5405
- * <p>The Amazon Resource Name (ARN) of the KMS key that you encrypted the flow with.</p>
5406
- * @public
5407
- */
5408
- customerEncryptionKeyArn?: string | undefined;
5288
+ export interface DeleteFlowRequest {
5409
5289
  /**
5410
5290
  * <p>The unique identifier of the flow.</p>
5411
5291
  * @public
5412
5292
  */
5413
- id: string | undefined;
5414
- /**
5415
- * <p>The Amazon Resource Name (ARN) of the flow.</p>
5416
- * @public
5417
- */
5418
- arn: string | undefined;
5419
- /**
5420
- * <p>The status of the flow. When you submit this request, the status will be <code>NotPrepared</code>. If creation fails, the status becomes <code>Failed</code>.</p>
5421
- * @public
5422
- */
5423
- status: FlowStatus | undefined;
5424
- /**
5425
- * <p>The time at which the flow was created.</p>
5426
- * @public
5427
- */
5428
- createdAt: Date | undefined;
5429
- /**
5430
- * <p>The time at which the flow was last updated.</p>
5431
- * @public
5432
- */
5433
- updatedAt: Date | undefined;
5434
- /**
5435
- * <p>The version of the flow. When you create a flow, the version created is the <code>DRAFT</code> version.</p>
5436
- * @public
5437
- */
5438
- version: string | undefined;
5293
+ flowIdentifier: string | undefined;
5439
5294
  /**
5440
- * <p>A definition of the nodes and connections between nodes in the flow.</p>
5295
+ * <p>By default, this value is <code>false</code> and deletion is stopped if the resource is in use. If you set it to <code>true</code>, the resource will be deleted even if the resource is in use.</p>
5441
5296
  * @public
5442
5297
  */
5443
- definition?: FlowDefinition | undefined;
5298
+ skipResourceInUseCheck?: boolean | undefined;
5444
5299
  }
5445
5300
  /**
5446
5301
  * @public
5447
5302
  */
5448
- export interface DeleteFlowRequest {
5303
+ export interface DeleteFlowResponse {
5449
5304
  /**
5450
5305
  * <p>The unique identifier of the flow.</p>
5451
5306
  * @public
5452
5307
  */
5453
- flowIdentifier: string | undefined;
5454
- /**
5455
- * <p>By default, this value is <code>false</code> and deletion is stopped if the resource is in use. If you set it to <code>true</code>, the resource will be deleted even if the resource is in use.</p>
5456
- * @public
5457
- */
5458
- skipResourceInUseCheck?: boolean | undefined;
5308
+ id: string | undefined;
5459
5309
  }
5460
5310
  /**
5461
5311
  * @public
5312
+ * @enum
5462
5313
  */
5463
- export interface DeleteFlowResponse {
5314
+ export declare const ConcurrencyType: {
5315
+ readonly AUTOMATIC: "Automatic";
5316
+ readonly MANUAL: "Manual";
5317
+ };
5318
+ /**
5319
+ * @public
5320
+ */
5321
+ export type ConcurrencyType = (typeof ConcurrencyType)[keyof typeof ConcurrencyType];
5322
+ /**
5323
+ * <p>Determines how multiple nodes in a flow can run in parallel. Running nodes concurrently can improve your flow's performance.</p>
5324
+ * @public
5325
+ */
5326
+ export interface FlowAliasConcurrencyConfiguration {
5464
5327
  /**
5465
- * <p>The unique identifier of the flow.</p>
5328
+ * <p>The type of concurrency to use for parallel node execution. Specify one of the following options:</p>
5329
+ * <ul>
5330
+ * <li>
5331
+ * <p>
5332
+ * <code>Automatic</code> - Amazon Bedrock determines which nodes can be executed in parallel based on the flow definition and its dependencies.</p>
5333
+ * </li>
5334
+ * <li>
5335
+ * <p>
5336
+ * <code>Manual</code> - You specify which nodes can be executed in parallel.</p>
5337
+ * </li>
5338
+ * </ul>
5466
5339
  * @public
5467
5340
  */
5468
- id: string | undefined;
5341
+ type: ConcurrencyType | undefined;
5342
+ /**
5343
+ * <p>The maximum number of nodes that can be executed concurrently in the flow.</p>
5344
+ * @public
5345
+ */
5346
+ maxConcurrency?: number | undefined;
5469
5347
  }
5470
5348
  /**
5471
5349
  * <p>Contains information about a version that the alias maps to.</p>
@@ -5497,6 +5375,11 @@ export interface CreateFlowAliasRequest {
5497
5375
  * @public
5498
5376
  */
5499
5377
  routingConfiguration: FlowAliasRoutingConfigurationListItem[] | undefined;
5378
+ /**
5379
+ * <p>The configuration that specifies how nodes in the flow are executed in parallel.</p>
5380
+ * @public
5381
+ */
5382
+ concurrencyConfiguration?: FlowAliasConcurrencyConfiguration | undefined;
5500
5383
  /**
5501
5384
  * <p>The unique identifier of the flow for which to create an alias.</p>
5502
5385
  * @public
@@ -5533,6 +5416,11 @@ export interface CreateFlowAliasResponse {
5533
5416
  * @public
5534
5417
  */
5535
5418
  routingConfiguration: FlowAliasRoutingConfigurationListItem[] | undefined;
5419
+ /**
5420
+ * <p>The configuration that specifies how nodes in the flow are executed in parallel.</p>
5421
+ * @public
5422
+ */
5423
+ concurrencyConfiguration?: FlowAliasConcurrencyConfiguration | undefined;
5536
5424
  /**
5537
5425
  * <p>The unique identifier of the flow that the alias belongs to.</p>
5538
5426
  * @public
@@ -5623,6 +5511,11 @@ export interface GetFlowAliasResponse {
5623
5511
  * @public
5624
5512
  */
5625
5513
  routingConfiguration: FlowAliasRoutingConfigurationListItem[] | undefined;
5514
+ /**
5515
+ * <p>The configuration that specifies how nodes in the flow are executed in parallel.</p>
5516
+ * @public
5517
+ */
5518
+ concurrencyConfiguration?: FlowAliasConcurrencyConfiguration | undefined;
5626
5519
  /**
5627
5520
  * <p>The unique identifier of the flow that the alias belongs to.</p>
5628
5521
  * @public
@@ -5697,6 +5590,11 @@ export interface FlowAliasSummary {
5697
5590
  * @public
5698
5591
  */
5699
5592
  routingConfiguration: FlowAliasRoutingConfigurationListItem[] | undefined;
5593
+ /**
5594
+ * <p>The configuration that specifies how nodes in the flow are executed concurrently.</p>
5595
+ * @public
5596
+ */
5597
+ concurrencyConfiguration?: FlowAliasConcurrencyConfiguration | undefined;
5700
5598
  /**
5701
5599
  * <p>The unique identifier of the flow.</p>
5702
5600
  * @public
@@ -5757,6 +5655,11 @@ export interface UpdateFlowAliasRequest {
5757
5655
  * @public
5758
5656
  */
5759
5657
  routingConfiguration: FlowAliasRoutingConfigurationListItem[] | undefined;
5658
+ /**
5659
+ * <p>The configuration that specifies how nodes in the flow are executed in parallel.</p>
5660
+ * @public
5661
+ */
5662
+ concurrencyConfiguration?: FlowAliasConcurrencyConfiguration | undefined;
5760
5663
  /**
5761
5664
  * <p>The unique identifier of the flow.</p>
5762
5665
  * @public
@@ -5787,6 +5690,11 @@ export interface UpdateFlowAliasResponse {
5787
5690
  * @public
5788
5691
  */
5789
5692
  routingConfiguration: FlowAliasRoutingConfigurationListItem[] | undefined;
5693
+ /**
5694
+ * <p>The configuration that specifies how nodes in the flow are executed in parallel.</p>
5695
+ * @public
5696
+ */
5697
+ concurrencyConfiguration?: FlowAliasConcurrencyConfiguration | undefined;
5790
5698
  /**
5791
5699
  * <p>The unique identifier of the flow.</p>
5792
5700
  * @public
@@ -5834,61 +5742,6 @@ export interface CreateFlowVersionRequest {
5834
5742
  */
5835
5743
  clientToken?: string | undefined;
5836
5744
  }
5837
- /**
5838
- * @public
5839
- */
5840
- export interface CreateFlowVersionResponse {
5841
- /**
5842
- * <p>The name of the version.</p>
5843
- * @public
5844
- */
5845
- name: string | undefined;
5846
- /**
5847
- * <p>The description of the version.</p>
5848
- * @public
5849
- */
5850
- description?: string | undefined;
5851
- /**
5852
- * <p>The Amazon Resource Name (ARN) of the service role with permissions to create a flow. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-permissions.html">Create a service role for flows in Amazon Bedrock</a> in the Amazon Bedrock User Guide.</p>
5853
- * @public
5854
- */
5855
- executionRoleArn: string | undefined;
5856
- /**
5857
- * <p>The KMS key that the flow is encrypted with.</p>
5858
- * @public
5859
- */
5860
- customerEncryptionKeyArn?: string | undefined;
5861
- /**
5862
- * <p>The unique identifier of the flow.</p>
5863
- * @public
5864
- */
5865
- id: string | undefined;
5866
- /**
5867
- * <p>The Amazon Resource Name (ARN) of the flow.</p>
5868
- * @public
5869
- */
5870
- arn: string | undefined;
5871
- /**
5872
- * <p>The status of the flow.</p>
5873
- * @public
5874
- */
5875
- status: FlowStatus | undefined;
5876
- /**
5877
- * <p>The time at which the flow was created.</p>
5878
- * @public
5879
- */
5880
- createdAt: Date | undefined;
5881
- /**
5882
- * <p>The version of the flow that was created. Versions are numbered incrementally, starting from 1.</p>
5883
- * @public
5884
- */
5885
- version: string | undefined;
5886
- /**
5887
- * <p>A definition of the nodes and connections in the flow.</p>
5888
- * @public
5889
- */
5890
- definition?: FlowDefinition | undefined;
5891
- }
5892
5745
  /**
5893
5746
  * @public
5894
5747
  */
@@ -5942,62 +5795,7 @@ export interface GetFlowVersionRequest {
5942
5795
  /**
5943
5796
  * @public
5944
5797
  */
5945
- export interface GetFlowVersionResponse {
5946
- /**
5947
- * <p>The name of the version.</p>
5948
- * @public
5949
- */
5950
- name: string | undefined;
5951
- /**
5952
- * <p>The description of the flow.</p>
5953
- * @public
5954
- */
5955
- description?: string | undefined;
5956
- /**
5957
- * <p>The Amazon Resource Name (ARN) of the service role with permissions to create a flow. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-permissions.html">Create a service role for flows in Amazon Bedrock</a> in the Amazon Bedrock User Guide.</p>
5958
- * @public
5959
- */
5960
- executionRoleArn: string | undefined;
5961
- /**
5962
- * <p>The Amazon Resource Name (ARN) of the KMS key that the version of the flow is encrypted with.</p>
5963
- * @public
5964
- */
5965
- customerEncryptionKeyArn?: string | undefined;
5966
- /**
5967
- * <p>The unique identifier of the flow.</p>
5968
- * @public
5969
- */
5970
- id: string | undefined;
5971
- /**
5972
- * <p>The Amazon Resource Name (ARN) of the flow.</p>
5973
- * @public
5974
- */
5975
- arn: string | undefined;
5976
- /**
5977
- * <p>The status of the flow.</p>
5978
- * @public
5979
- */
5980
- status: FlowStatus | undefined;
5981
- /**
5982
- * <p>The time at which the flow was created.</p>
5983
- * @public
5984
- */
5985
- createdAt: Date | undefined;
5986
- /**
5987
- * <p>The version of the flow for which information was retrieved.</p>
5988
- * @public
5989
- */
5990
- version: string | undefined;
5991
- /**
5992
- * <p>The definition of the nodes and connections between nodes in the flow.</p>
5993
- * @public
5994
- */
5995
- definition?: FlowDefinition | undefined;
5996
- }
5997
- /**
5998
- * @public
5999
- */
6000
- export interface ListFlowVersionsRequest {
5798
+ export interface ListFlowVersionsRequest {
6001
5799
  /**
6002
5800
  * <p>The unique identifier of the flow.</p>
6003
5801
  * @public
@@ -6132,6 +5930,62 @@ export interface IncompatibleConnectionDataTypeFlowValidationDetails {
6132
5930
  */
6133
5931
  connection: string | undefined;
6134
5932
  }
5933
+ /**
5934
+ * <p>Details about a flow that contains connections that violate loop boundary rules.</p>
5935
+ * @public
5936
+ */
5937
+ export interface InvalidLoopBoundaryFlowValidationDetails {
5938
+ /**
5939
+ * <p>The name of the connection that violates loop boundary rules.</p>
5940
+ * @public
5941
+ */
5942
+ connection: string | undefined;
5943
+ /**
5944
+ * <p>The source node of the connection that violates DoWhile loop boundary rules.</p>
5945
+ * @public
5946
+ */
5947
+ source: string | undefined;
5948
+ /**
5949
+ * <p>The target node of the connection that violates DoWhile loop boundary rules.</p>
5950
+ * @public
5951
+ */
5952
+ target: string | undefined;
5953
+ }
5954
+ /**
5955
+ * @public
5956
+ * @enum
5957
+ */
5958
+ export declare const IncompatibleLoopNodeType: {
5959
+ readonly COLLECTOR: "Collector";
5960
+ readonly CONDITION: "Condition";
5961
+ readonly INPUT: "Input";
5962
+ readonly ITERATOR: "Iterator";
5963
+ };
5964
+ /**
5965
+ * @public
5966
+ */
5967
+ export type IncompatibleLoopNodeType = (typeof IncompatibleLoopNodeType)[keyof typeof IncompatibleLoopNodeType];
5968
+ /**
5969
+ * <p>Details about a flow that contains an incompatible node in a DoWhile loop.</p>
5970
+ * @public
5971
+ */
5972
+ export interface LoopIncompatibleNodeTypeFlowValidationDetails {
5973
+ /**
5974
+ * <p>The <code>Loop</code> container node that contains an incompatible node.</p>
5975
+ * @public
5976
+ */
5977
+ node: string | undefined;
5978
+ /**
5979
+ * <p>The node type of the incompatible node in the DoWhile loop. Some node types, like a condition node, aren't allowed in a DoWhile loop.</p>
5980
+ * @public
5981
+ */
5982
+ incompatibleNodeType: IncompatibleLoopNodeType | undefined;
5983
+ /**
5984
+ * <p>The node that's incompatible in the DoWhile loop.</p>
5985
+ * @public
5986
+ */
5987
+ incompatibleNodeName: string | undefined;
5988
+ }
6135
5989
  /**
6136
5990
  * <p>Details about a malformed condition expression in a node.</p>
6137
5991
  * @public
@@ -6245,12 +6099,34 @@ export interface MissingDefaultConditionFlowValidationDetails {
6245
6099
  export interface MissingEndingNodesFlowValidationDetails {
6246
6100
  }
6247
6101
  /**
6248
- * <p>Details about a node missing required configuration.</p>
6102
+ * <p>Details about a flow that's missing a required <code>LoopController</code> node in a DoWhile loop.</p>
6103
+ * @public
6104
+ */
6105
+ export interface MissingLoopControllerNodeFlowValidationDetails {
6106
+ /**
6107
+ * <p>The DoWhile loop in a flow that's missing a required <code>LoopController</code> node.</p>
6108
+ * @public
6109
+ */
6110
+ loopNode: string | undefined;
6111
+ }
6112
+ /**
6113
+ * <p>Details about a flow that's missing a required <code>LoopInput</code> node in a DoWhile loop.</p>
6114
+ * @public
6115
+ */
6116
+ export interface MissingLoopInputNodeFlowValidationDetails {
6117
+ /**
6118
+ * <p>The DoWhile loop in a flow that's missing a required <code>LoopInput</code> node.</p>
6119
+ * @public
6120
+ */
6121
+ loopNode: string | undefined;
6122
+ }
6123
+ /**
6124
+ * <p>Details about a node missing a required configuration.</p>
6249
6125
  * @public
6250
6126
  */
6251
6127
  export interface MissingNodeConfigurationFlowValidationDetails {
6252
6128
  /**
6253
- * <p>The name of the node missing configuration.</p>
6129
+ * <p>The name of the node missing a required configuration.</p>
6254
6130
  * @public
6255
6131
  */
6256
6132
  node: string | undefined;
@@ -6293,6 +6169,28 @@ export interface MissingNodeOutputFlowValidationDetails {
6293
6169
  */
6294
6170
  export interface MissingStartingNodesFlowValidationDetails {
6295
6171
  }
6172
+ /**
6173
+ * <p>Details about a flow that contains multiple <code>LoopController</code> nodes in a DoWhile loop.</p>
6174
+ * @public
6175
+ */
6176
+ export interface MultipleLoopControllerNodesFlowValidationDetails {
6177
+ /**
6178
+ * <p>The DoWhile loop in a flow that contains multiple <code>LoopController</code> nodes.</p>
6179
+ * @public
6180
+ */
6181
+ loopNode: string | undefined;
6182
+ }
6183
+ /**
6184
+ * <p>Details about a flow that contains multiple <code>LoopInput</code> nodes in a DoWhile loop.</p>
6185
+ * @public
6186
+ */
6187
+ export interface MultipleLoopInputNodesFlowValidationDetails {
6188
+ /**
6189
+ * <p>The DoWhile loop in a flow that contains multiple <code>LoopInput</code> nodes.</p>
6190
+ * @public
6191
+ */
6192
+ loopNode: string | undefined;
6193
+ }
6296
6194
  /**
6297
6195
  * <p>Details about multiple connections to a single node input.</p>
6298
6196
  * @public
@@ -6444,7 +6342,7 @@ export interface UnspecifiedFlowValidationDetails {
6444
6342
  * <p>A union type containing various possible validation issues in the flow.</p>
6445
6343
  * @public
6446
6344
  */
6447
- export type FlowValidationDetails = FlowValidationDetails.CyclicConnectionMember | FlowValidationDetails.DuplicateConditionExpressionMember | FlowValidationDetails.DuplicateConnectionsMember | FlowValidationDetails.IncompatibleConnectionDataTypeMember | FlowValidationDetails.MalformedConditionExpressionMember | FlowValidationDetails.MalformedNodeInputExpressionMember | FlowValidationDetails.MismatchedNodeInputTypeMember | FlowValidationDetails.MismatchedNodeOutputTypeMember | FlowValidationDetails.MissingConnectionConfigurationMember | FlowValidationDetails.MissingDefaultConditionMember | FlowValidationDetails.MissingEndingNodesMember | FlowValidationDetails.MissingNodeConfigurationMember | FlowValidationDetails.MissingNodeInputMember | FlowValidationDetails.MissingNodeOutputMember | FlowValidationDetails.MissingStartingNodesMember | FlowValidationDetails.MultipleNodeInputConnectionsMember | FlowValidationDetails.UnfulfilledNodeInputMember | FlowValidationDetails.UnknownConnectionConditionMember | FlowValidationDetails.UnknownConnectionSourceMember | FlowValidationDetails.UnknownConnectionSourceOutputMember | FlowValidationDetails.UnknownConnectionTargetMember | FlowValidationDetails.UnknownConnectionTargetInputMember | FlowValidationDetails.UnknownNodeInputMember | FlowValidationDetails.UnknownNodeOutputMember | FlowValidationDetails.UnreachableNodeMember | FlowValidationDetails.UnsatisfiedConnectionConditionsMember | FlowValidationDetails.UnspecifiedMember | FlowValidationDetails.$UnknownMember;
6345
+ export type FlowValidationDetails = FlowValidationDetails.CyclicConnectionMember | FlowValidationDetails.DuplicateConditionExpressionMember | FlowValidationDetails.DuplicateConnectionsMember | FlowValidationDetails.IncompatibleConnectionDataTypeMember | FlowValidationDetails.InvalidLoopBoundaryMember | FlowValidationDetails.LoopIncompatibleNodeTypeMember | FlowValidationDetails.MalformedConditionExpressionMember | FlowValidationDetails.MalformedNodeInputExpressionMember | FlowValidationDetails.MismatchedNodeInputTypeMember | FlowValidationDetails.MismatchedNodeOutputTypeMember | FlowValidationDetails.MissingConnectionConfigurationMember | FlowValidationDetails.MissingDefaultConditionMember | FlowValidationDetails.MissingEndingNodesMember | FlowValidationDetails.MissingLoopControllerNodeMember | FlowValidationDetails.MissingLoopInputNodeMember | FlowValidationDetails.MissingNodeConfigurationMember | FlowValidationDetails.MissingNodeInputMember | FlowValidationDetails.MissingNodeOutputMember | FlowValidationDetails.MissingStartingNodesMember | FlowValidationDetails.MultipleLoopControllerNodesMember | FlowValidationDetails.MultipleLoopInputNodesMember | FlowValidationDetails.MultipleNodeInputConnectionsMember | FlowValidationDetails.UnfulfilledNodeInputMember | FlowValidationDetails.UnknownConnectionConditionMember | FlowValidationDetails.UnknownConnectionSourceMember | FlowValidationDetails.UnknownConnectionSourceOutputMember | FlowValidationDetails.UnknownConnectionTargetMember | FlowValidationDetails.UnknownConnectionTargetInputMember | FlowValidationDetails.UnknownNodeInputMember | FlowValidationDetails.UnknownNodeOutputMember | FlowValidationDetails.UnreachableNodeMember | FlowValidationDetails.UnsatisfiedConnectionConditionsMember | FlowValidationDetails.UnspecifiedMember | FlowValidationDetails.$UnknownMember;
6448
6346
  /**
6449
6347
  * @public
6450
6348
  */
@@ -6481,6 +6379,12 @@ export declare namespace FlowValidationDetails {
6481
6379
  unspecified?: never;
6482
6380
  unknownNodeInput?: never;
6483
6381
  unknownNodeOutput?: never;
6382
+ missingLoopInputNode?: never;
6383
+ missingLoopControllerNode?: never;
6384
+ multipleLoopInputNodes?: never;
6385
+ multipleLoopControllerNodes?: never;
6386
+ loopIncompatibleNodeType?: never;
6387
+ invalidLoopBoundary?: never;
6484
6388
  $unknown?: never;
6485
6389
  }
6486
6390
  /**
@@ -6515,6 +6419,12 @@ export declare namespace FlowValidationDetails {
6515
6419
  unspecified?: never;
6516
6420
  unknownNodeInput?: never;
6517
6421
  unknownNodeOutput?: never;
6422
+ missingLoopInputNode?: never;
6423
+ missingLoopControllerNode?: never;
6424
+ multipleLoopInputNodes?: never;
6425
+ multipleLoopControllerNodes?: never;
6426
+ loopIncompatibleNodeType?: never;
6427
+ invalidLoopBoundary?: never;
6518
6428
  $unknown?: never;
6519
6429
  }
6520
6430
  /**
@@ -6549,6 +6459,12 @@ export declare namespace FlowValidationDetails {
6549
6459
  unspecified?: never;
6550
6460
  unknownNodeInput?: never;
6551
6461
  unknownNodeOutput?: never;
6462
+ missingLoopInputNode?: never;
6463
+ missingLoopControllerNode?: never;
6464
+ multipleLoopInputNodes?: never;
6465
+ multipleLoopControllerNodes?: never;
6466
+ loopIncompatibleNodeType?: never;
6467
+ invalidLoopBoundary?: never;
6552
6468
  $unknown?: never;
6553
6469
  }
6554
6470
  /**
@@ -6583,6 +6499,12 @@ export declare namespace FlowValidationDetails {
6583
6499
  unspecified?: never;
6584
6500
  unknownNodeInput?: never;
6585
6501
  unknownNodeOutput?: never;
6502
+ missingLoopInputNode?: never;
6503
+ missingLoopControllerNode?: never;
6504
+ multipleLoopInputNodes?: never;
6505
+ multipleLoopControllerNodes?: never;
6506
+ loopIncompatibleNodeType?: never;
6507
+ invalidLoopBoundary?: never;
6586
6508
  $unknown?: never;
6587
6509
  }
6588
6510
  /**
@@ -6617,6 +6539,12 @@ export declare namespace FlowValidationDetails {
6617
6539
  unspecified?: never;
6618
6540
  unknownNodeInput?: never;
6619
6541
  unknownNodeOutput?: never;
6542
+ missingLoopInputNode?: never;
6543
+ missingLoopControllerNode?: never;
6544
+ multipleLoopInputNodes?: never;
6545
+ multipleLoopControllerNodes?: never;
6546
+ loopIncompatibleNodeType?: never;
6547
+ invalidLoopBoundary?: never;
6620
6548
  $unknown?: never;
6621
6549
  }
6622
6550
  /**
@@ -6651,6 +6579,12 @@ export declare namespace FlowValidationDetails {
6651
6579
  unspecified?: never;
6652
6580
  unknownNodeInput?: never;
6653
6581
  unknownNodeOutput?: never;
6582
+ missingLoopInputNode?: never;
6583
+ missingLoopControllerNode?: never;
6584
+ multipleLoopInputNodes?: never;
6585
+ multipleLoopControllerNodes?: never;
6586
+ loopIncompatibleNodeType?: never;
6587
+ invalidLoopBoundary?: never;
6654
6588
  $unknown?: never;
6655
6589
  }
6656
6590
  /**
@@ -6685,6 +6619,12 @@ export declare namespace FlowValidationDetails {
6685
6619
  unspecified?: never;
6686
6620
  unknownNodeInput?: never;
6687
6621
  unknownNodeOutput?: never;
6622
+ missingLoopInputNode?: never;
6623
+ missingLoopControllerNode?: never;
6624
+ multipleLoopInputNodes?: never;
6625
+ multipleLoopControllerNodes?: never;
6626
+ loopIncompatibleNodeType?: never;
6627
+ invalidLoopBoundary?: never;
6688
6628
  $unknown?: never;
6689
6629
  }
6690
6630
  /**
@@ -6719,6 +6659,12 @@ export declare namespace FlowValidationDetails {
6719
6659
  unspecified?: never;
6720
6660
  unknownNodeInput?: never;
6721
6661
  unknownNodeOutput?: never;
6662
+ missingLoopInputNode?: never;
6663
+ missingLoopControllerNode?: never;
6664
+ multipleLoopInputNodes?: never;
6665
+ multipleLoopControllerNodes?: never;
6666
+ loopIncompatibleNodeType?: never;
6667
+ invalidLoopBoundary?: never;
6722
6668
  $unknown?: never;
6723
6669
  }
6724
6670
  /**
@@ -6753,6 +6699,12 @@ export declare namespace FlowValidationDetails {
6753
6699
  unspecified?: never;
6754
6700
  unknownNodeInput?: never;
6755
6701
  unknownNodeOutput?: never;
6702
+ missingLoopInputNode?: never;
6703
+ missingLoopControllerNode?: never;
6704
+ multipleLoopInputNodes?: never;
6705
+ multipleLoopControllerNodes?: never;
6706
+ loopIncompatibleNodeType?: never;
6707
+ invalidLoopBoundary?: never;
6756
6708
  $unknown?: never;
6757
6709
  }
6758
6710
  /**
@@ -6787,6 +6739,12 @@ export declare namespace FlowValidationDetails {
6787
6739
  unspecified?: never;
6788
6740
  unknownNodeInput?: never;
6789
6741
  unknownNodeOutput?: never;
6742
+ missingLoopInputNode?: never;
6743
+ missingLoopControllerNode?: never;
6744
+ multipleLoopInputNodes?: never;
6745
+ multipleLoopControllerNodes?: never;
6746
+ loopIncompatibleNodeType?: never;
6747
+ invalidLoopBoundary?: never;
6790
6748
  $unknown?: never;
6791
6749
  }
6792
6750
  /**
@@ -6821,6 +6779,12 @@ export declare namespace FlowValidationDetails {
6821
6779
  unspecified?: never;
6822
6780
  unknownNodeInput?: never;
6823
6781
  unknownNodeOutput?: never;
6782
+ missingLoopInputNode?: never;
6783
+ missingLoopControllerNode?: never;
6784
+ multipleLoopInputNodes?: never;
6785
+ multipleLoopControllerNodes?: never;
6786
+ loopIncompatibleNodeType?: never;
6787
+ invalidLoopBoundary?: never;
6824
6788
  $unknown?: never;
6825
6789
  }
6826
6790
  /**
@@ -6855,6 +6819,12 @@ export declare namespace FlowValidationDetails {
6855
6819
  unspecified?: never;
6856
6820
  unknownNodeInput?: never;
6857
6821
  unknownNodeOutput?: never;
6822
+ missingLoopInputNode?: never;
6823
+ missingLoopControllerNode?: never;
6824
+ multipleLoopInputNodes?: never;
6825
+ multipleLoopControllerNodes?: never;
6826
+ loopIncompatibleNodeType?: never;
6827
+ invalidLoopBoundary?: never;
6858
6828
  $unknown?: never;
6859
6829
  }
6860
6830
  /**
@@ -6889,6 +6859,12 @@ export declare namespace FlowValidationDetails {
6889
6859
  unspecified?: never;
6890
6860
  unknownNodeInput?: never;
6891
6861
  unknownNodeOutput?: never;
6862
+ missingLoopInputNode?: never;
6863
+ missingLoopControllerNode?: never;
6864
+ multipleLoopInputNodes?: never;
6865
+ multipleLoopControllerNodes?: never;
6866
+ loopIncompatibleNodeType?: never;
6867
+ invalidLoopBoundary?: never;
6892
6868
  $unknown?: never;
6893
6869
  }
6894
6870
  /**
@@ -6923,6 +6899,12 @@ export declare namespace FlowValidationDetails {
6923
6899
  unspecified?: never;
6924
6900
  unknownNodeInput?: never;
6925
6901
  unknownNodeOutput?: never;
6902
+ missingLoopInputNode?: never;
6903
+ missingLoopControllerNode?: never;
6904
+ multipleLoopInputNodes?: never;
6905
+ multipleLoopControllerNodes?: never;
6906
+ loopIncompatibleNodeType?: never;
6907
+ invalidLoopBoundary?: never;
6926
6908
  $unknown?: never;
6927
6909
  }
6928
6910
  /**
@@ -6957,6 +6939,12 @@ export declare namespace FlowValidationDetails {
6957
6939
  unspecified?: never;
6958
6940
  unknownNodeInput?: never;
6959
6941
  unknownNodeOutput?: never;
6942
+ missingLoopInputNode?: never;
6943
+ missingLoopControllerNode?: never;
6944
+ multipleLoopInputNodes?: never;
6945
+ multipleLoopControllerNodes?: never;
6946
+ loopIncompatibleNodeType?: never;
6947
+ invalidLoopBoundary?: never;
6960
6948
  $unknown?: never;
6961
6949
  }
6962
6950
  /**
@@ -6991,6 +6979,12 @@ export declare namespace FlowValidationDetails {
6991
6979
  unspecified?: never;
6992
6980
  unknownNodeInput?: never;
6993
6981
  unknownNodeOutput?: never;
6982
+ missingLoopInputNode?: never;
6983
+ missingLoopControllerNode?: never;
6984
+ multipleLoopInputNodes?: never;
6985
+ multipleLoopControllerNodes?: never;
6986
+ loopIncompatibleNodeType?: never;
6987
+ invalidLoopBoundary?: never;
6994
6988
  $unknown?: never;
6995
6989
  }
6996
6990
  /**
@@ -7025,6 +7019,12 @@ export declare namespace FlowValidationDetails {
7025
7019
  unspecified?: never;
7026
7020
  unknownNodeInput?: never;
7027
7021
  unknownNodeOutput?: never;
7022
+ missingLoopInputNode?: never;
7023
+ missingLoopControllerNode?: never;
7024
+ multipleLoopInputNodes?: never;
7025
+ multipleLoopControllerNodes?: never;
7026
+ loopIncompatibleNodeType?: never;
7027
+ invalidLoopBoundary?: never;
7028
7028
  $unknown?: never;
7029
7029
  }
7030
7030
  /**
@@ -7059,6 +7059,12 @@ export declare namespace FlowValidationDetails {
7059
7059
  unspecified?: never;
7060
7060
  unknownNodeInput?: never;
7061
7061
  unknownNodeOutput?: never;
7062
+ missingLoopInputNode?: never;
7063
+ missingLoopControllerNode?: never;
7064
+ multipleLoopInputNodes?: never;
7065
+ multipleLoopControllerNodes?: never;
7066
+ loopIncompatibleNodeType?: never;
7067
+ invalidLoopBoundary?: never;
7062
7068
  $unknown?: never;
7063
7069
  }
7064
7070
  /**
@@ -7093,6 +7099,12 @@ export declare namespace FlowValidationDetails {
7093
7099
  unspecified?: never;
7094
7100
  unknownNodeInput?: never;
7095
7101
  unknownNodeOutput?: never;
7102
+ missingLoopInputNode?: never;
7103
+ missingLoopControllerNode?: never;
7104
+ multipleLoopInputNodes?: never;
7105
+ multipleLoopControllerNodes?: never;
7106
+ loopIncompatibleNodeType?: never;
7107
+ invalidLoopBoundary?: never;
7096
7108
  $unknown?: never;
7097
7109
  }
7098
7110
  /**
@@ -7127,6 +7139,12 @@ export declare namespace FlowValidationDetails {
7127
7139
  unspecified?: never;
7128
7140
  unknownNodeInput?: never;
7129
7141
  unknownNodeOutput?: never;
7142
+ missingLoopInputNode?: never;
7143
+ missingLoopControllerNode?: never;
7144
+ multipleLoopInputNodes?: never;
7145
+ multipleLoopControllerNodes?: never;
7146
+ loopIncompatibleNodeType?: never;
7147
+ invalidLoopBoundary?: never;
7130
7148
  $unknown?: never;
7131
7149
  }
7132
7150
  /**
@@ -7161,6 +7179,12 @@ export declare namespace FlowValidationDetails {
7161
7179
  unspecified?: never;
7162
7180
  unknownNodeInput?: never;
7163
7181
  unknownNodeOutput?: never;
7182
+ missingLoopInputNode?: never;
7183
+ missingLoopControllerNode?: never;
7184
+ multipleLoopInputNodes?: never;
7185
+ multipleLoopControllerNodes?: never;
7186
+ loopIncompatibleNodeType?: never;
7187
+ invalidLoopBoundary?: never;
7164
7188
  $unknown?: never;
7165
7189
  }
7166
7190
  /**
@@ -7195,6 +7219,12 @@ export declare namespace FlowValidationDetails {
7195
7219
  unspecified?: never;
7196
7220
  unknownNodeInput?: never;
7197
7221
  unknownNodeOutput?: never;
7222
+ missingLoopInputNode?: never;
7223
+ missingLoopControllerNode?: never;
7224
+ multipleLoopInputNodes?: never;
7225
+ multipleLoopControllerNodes?: never;
7226
+ loopIncompatibleNodeType?: never;
7227
+ invalidLoopBoundary?: never;
7198
7228
  $unknown?: never;
7199
7229
  }
7200
7230
  /**
@@ -7229,6 +7259,12 @@ export declare namespace FlowValidationDetails {
7229
7259
  unspecified?: never;
7230
7260
  unknownNodeInput?: never;
7231
7261
  unknownNodeOutput?: never;
7262
+ missingLoopInputNode?: never;
7263
+ missingLoopControllerNode?: never;
7264
+ multipleLoopInputNodes?: never;
7265
+ multipleLoopControllerNodes?: never;
7266
+ loopIncompatibleNodeType?: never;
7267
+ invalidLoopBoundary?: never;
7232
7268
  $unknown?: never;
7233
7269
  }
7234
7270
  /**
@@ -7263,6 +7299,12 @@ export declare namespace FlowValidationDetails {
7263
7299
  unspecified?: never;
7264
7300
  unknownNodeInput?: never;
7265
7301
  unknownNodeOutput?: never;
7302
+ missingLoopInputNode?: never;
7303
+ missingLoopControllerNode?: never;
7304
+ multipleLoopInputNodes?: never;
7305
+ multipleLoopControllerNodes?: never;
7306
+ loopIncompatibleNodeType?: never;
7307
+ invalidLoopBoundary?: never;
7266
7308
  $unknown?: never;
7267
7309
  }
7268
7310
  /**
@@ -7297,6 +7339,12 @@ export declare namespace FlowValidationDetails {
7297
7339
  unspecified: UnspecifiedFlowValidationDetails;
7298
7340
  unknownNodeInput?: never;
7299
7341
  unknownNodeOutput?: never;
7342
+ missingLoopInputNode?: never;
7343
+ missingLoopControllerNode?: never;
7344
+ multipleLoopInputNodes?: never;
7345
+ multipleLoopControllerNodes?: never;
7346
+ loopIncompatibleNodeType?: never;
7347
+ invalidLoopBoundary?: never;
7300
7348
  $unknown?: never;
7301
7349
  }
7302
7350
  /**
@@ -7331,6 +7379,12 @@ export declare namespace FlowValidationDetails {
7331
7379
  unspecified?: never;
7332
7380
  unknownNodeInput: UnknownNodeInputFlowValidationDetails;
7333
7381
  unknownNodeOutput?: never;
7382
+ missingLoopInputNode?: never;
7383
+ missingLoopControllerNode?: never;
7384
+ multipleLoopInputNodes?: never;
7385
+ multipleLoopControllerNodes?: never;
7386
+ loopIncompatibleNodeType?: never;
7387
+ invalidLoopBoundary?: never;
7334
7388
  $unknown?: never;
7335
7389
  }
7336
7390
  /**
@@ -7365,12 +7419,19 @@ export declare namespace FlowValidationDetails {
7365
7419
  unspecified?: never;
7366
7420
  unknownNodeInput?: never;
7367
7421
  unknownNodeOutput: UnknownNodeOutputFlowValidationDetails;
7422
+ missingLoopInputNode?: never;
7423
+ missingLoopControllerNode?: never;
7424
+ multipleLoopInputNodes?: never;
7425
+ multipleLoopControllerNodes?: never;
7426
+ loopIncompatibleNodeType?: never;
7427
+ invalidLoopBoundary?: never;
7368
7428
  $unknown?: never;
7369
7429
  }
7370
7430
  /**
7431
+ * <p>Details about a flow that's missing a required <code>LoopInput</code> node in a DoWhile loop.</p>
7371
7432
  * @public
7372
7433
  */
7373
- interface $UnknownMember {
7434
+ interface MissingLoopInputNodeMember {
7374
7435
  cyclicConnection?: never;
7375
7436
  duplicateConnections?: never;
7376
7437
  duplicateConditionExpression?: never;
@@ -7398,682 +7459,389 @@ export declare namespace FlowValidationDetails {
7398
7459
  unspecified?: never;
7399
7460
  unknownNodeInput?: never;
7400
7461
  unknownNodeOutput?: never;
7401
- $unknown: [string, any];
7402
- }
7403
- interface Visitor<T> {
7404
- cyclicConnection: (value: CyclicConnectionFlowValidationDetails) => T;
7405
- duplicateConnections: (value: DuplicateConnectionsFlowValidationDetails) => T;
7406
- duplicateConditionExpression: (value: DuplicateConditionExpressionFlowValidationDetails) => T;
7407
- unreachableNode: (value: UnreachableNodeFlowValidationDetails) => T;
7408
- unknownConnectionSource: (value: UnknownConnectionSourceFlowValidationDetails) => T;
7409
- unknownConnectionSourceOutput: (value: UnknownConnectionSourceOutputFlowValidationDetails) => T;
7410
- unknownConnectionTarget: (value: UnknownConnectionTargetFlowValidationDetails) => T;
7411
- unknownConnectionTargetInput: (value: UnknownConnectionTargetInputFlowValidationDetails) => T;
7412
- unknownConnectionCondition: (value: UnknownConnectionConditionFlowValidationDetails) => T;
7413
- malformedConditionExpression: (value: MalformedConditionExpressionFlowValidationDetails) => T;
7414
- malformedNodeInputExpression: (value: MalformedNodeInputExpressionFlowValidationDetails) => T;
7415
- mismatchedNodeInputType: (value: MismatchedNodeInputTypeFlowValidationDetails) => T;
7416
- mismatchedNodeOutputType: (value: MismatchedNodeOutputTypeFlowValidationDetails) => T;
7417
- incompatibleConnectionDataType: (value: IncompatibleConnectionDataTypeFlowValidationDetails) => T;
7418
- missingConnectionConfiguration: (value: MissingConnectionConfigurationFlowValidationDetails) => T;
7419
- missingDefaultCondition: (value: MissingDefaultConditionFlowValidationDetails) => T;
7420
- missingEndingNodes: (value: MissingEndingNodesFlowValidationDetails) => T;
7421
- missingNodeConfiguration: (value: MissingNodeConfigurationFlowValidationDetails) => T;
7422
- missingNodeInput: (value: MissingNodeInputFlowValidationDetails) => T;
7423
- missingNodeOutput: (value: MissingNodeOutputFlowValidationDetails) => T;
7424
- missingStartingNodes: (value: MissingStartingNodesFlowValidationDetails) => T;
7425
- multipleNodeInputConnections: (value: MultipleNodeInputConnectionsFlowValidationDetails) => T;
7426
- unfulfilledNodeInput: (value: UnfulfilledNodeInputFlowValidationDetails) => T;
7427
- unsatisfiedConnectionConditions: (value: UnsatisfiedConnectionConditionsFlowValidationDetails) => T;
7428
- unspecified: (value: UnspecifiedFlowValidationDetails) => T;
7429
- unknownNodeInput: (value: UnknownNodeInputFlowValidationDetails) => T;
7430
- unknownNodeOutput: (value: UnknownNodeOutputFlowValidationDetails) => T;
7431
- _: (name: string, value: any) => T;
7462
+ missingLoopInputNode: MissingLoopInputNodeFlowValidationDetails;
7463
+ missingLoopControllerNode?: never;
7464
+ multipleLoopInputNodes?: never;
7465
+ multipleLoopControllerNodes?: never;
7466
+ loopIncompatibleNodeType?: never;
7467
+ invalidLoopBoundary?: never;
7468
+ $unknown?: never;
7432
7469
  }
7433
- const visit: <T>(value: FlowValidationDetails, visitor: Visitor<T>) => T;
7434
- }
7435
- /**
7436
- * @public
7437
- * @enum
7438
- */
7439
- export declare const FlowValidationSeverity: {
7440
- readonly ERROR: "Error";
7441
- readonly WARNING: "Warning";
7442
- };
7443
- /**
7444
- * @public
7445
- */
7446
- export type FlowValidationSeverity = (typeof FlowValidationSeverity)[keyof typeof FlowValidationSeverity];
7447
- /**
7448
- * @public
7449
- * @enum
7450
- */
7451
- export declare const FlowValidationType: {
7452
- readonly CYCLIC_CONNECTION: "CyclicConnection";
7453
- readonly DUPLICATE_CONDITION_EXPRESSION: "DuplicateConditionExpression";
7454
- readonly DUPLICATE_CONNECTIONS: "DuplicateConnections";
7455
- readonly INCOMPATIBLE_CONNECTION_DATA_TYPE: "IncompatibleConnectionDataType";
7456
- readonly MALFORMED_CONDITION_EXPRESSION: "MalformedConditionExpression";
7457
- readonly MALFORMED_NODE_INPUT_EXPRESSION: "MalformedNodeInputExpression";
7458
- readonly MISMATCHED_NODE_INPUT_TYPE: "MismatchedNodeInputType";
7459
- readonly MISMATCHED_NODE_OUTPUT_TYPE: "MismatchedNodeOutputType";
7460
- readonly MISSING_CONNECTION_CONFIGURATION: "MissingConnectionConfiguration";
7461
- readonly MISSING_DEFAULT_CONDITION: "MissingDefaultCondition";
7462
- readonly MISSING_ENDING_NODES: "MissingEndingNodes";
7463
- readonly MISSING_NODE_CONFIGURATION: "MissingNodeConfiguration";
7464
- readonly MISSING_NODE_INPUT: "MissingNodeInput";
7465
- readonly MISSING_NODE_OUTPUT: "MissingNodeOutput";
7466
- readonly MISSING_STARTING_NODES: "MissingStartingNodes";
7467
- readonly MULTIPLE_NODE_INPUT_CONNECTIONS: "MultipleNodeInputConnections";
7468
- readonly UNFULFILLED_NODE_INPUT: "UnfulfilledNodeInput";
7469
- readonly UNKNOWN_CONNECTION_CONDITION: "UnknownConnectionCondition";
7470
- readonly UNKNOWN_CONNECTION_SOURCE: "UnknownConnectionSource";
7471
- readonly UNKNOWN_CONNECTION_SOURCE_OUTPUT: "UnknownConnectionSourceOutput";
7472
- readonly UNKNOWN_CONNECTION_TARGET: "UnknownConnectionTarget";
7473
- readonly UNKNOWN_CONNECTION_TARGET_INPUT: "UnknownConnectionTargetInput";
7474
- readonly UNKNOWN_NODE_INPUT: "UnknownNodeInput";
7475
- readonly UNKNOWN_NODE_OUTPUT: "UnknownNodeOutput";
7476
- readonly UNREACHABLE_NODE: "UnreachableNode";
7477
- readonly UNSATISFIED_CONNECTION_CONDITIONS: "UnsatisfiedConnectionConditions";
7478
- readonly UNSPECIFIED: "Unspecified";
7479
- };
7480
- /**
7481
- * @public
7482
- */
7483
- export type FlowValidationType = (typeof FlowValidationType)[keyof typeof FlowValidationType];
7484
- /**
7485
- * <p>Contains information about validation of the flow.</p>
7486
- * <p>This data type is used in the following API operations:</p>
7487
- * <ul>
7488
- * <li>
7489
- * <p>
7490
- * <a href="https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_GetFlow.html#API_agent_GetFlow_ResponseSyntax">GetFlow response</a>
7491
- * </p>
7492
- * </li>
7493
- * <li>
7494
- * <p>
7495
- * <a href="https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_GetFlowVersion.html#API_agent_GetFlowVersion_ResponseSyntax">GetFlowVersion response</a>
7496
- * </p>
7497
- * </li>
7498
- * </ul>
7499
- * @public
7500
- */
7501
- export interface FlowValidation {
7502
7470
  /**
7503
- * <p>A message describing the validation error.</p>
7471
+ * <p>Details about a flow that's missing a required <code>LoopController</code> node in a DoWhile loop.</p>
7504
7472
  * @public
7505
7473
  */
7506
- message: string | undefined;
7474
+ interface MissingLoopControllerNodeMember {
7475
+ cyclicConnection?: never;
7476
+ duplicateConnections?: never;
7477
+ duplicateConditionExpression?: never;
7478
+ unreachableNode?: never;
7479
+ unknownConnectionSource?: never;
7480
+ unknownConnectionSourceOutput?: never;
7481
+ unknownConnectionTarget?: never;
7482
+ unknownConnectionTargetInput?: never;
7483
+ unknownConnectionCondition?: never;
7484
+ malformedConditionExpression?: never;
7485
+ malformedNodeInputExpression?: never;
7486
+ mismatchedNodeInputType?: never;
7487
+ mismatchedNodeOutputType?: never;
7488
+ incompatibleConnectionDataType?: never;
7489
+ missingConnectionConfiguration?: never;
7490
+ missingDefaultCondition?: never;
7491
+ missingEndingNodes?: never;
7492
+ missingNodeConfiguration?: never;
7493
+ missingNodeInput?: never;
7494
+ missingNodeOutput?: never;
7495
+ missingStartingNodes?: never;
7496
+ multipleNodeInputConnections?: never;
7497
+ unfulfilledNodeInput?: never;
7498
+ unsatisfiedConnectionConditions?: never;
7499
+ unspecified?: never;
7500
+ unknownNodeInput?: never;
7501
+ unknownNodeOutput?: never;
7502
+ missingLoopInputNode?: never;
7503
+ missingLoopControllerNode: MissingLoopControllerNodeFlowValidationDetails;
7504
+ multipleLoopInputNodes?: never;
7505
+ multipleLoopControllerNodes?: never;
7506
+ loopIncompatibleNodeType?: never;
7507
+ invalidLoopBoundary?: never;
7508
+ $unknown?: never;
7509
+ }
7507
7510
  /**
7508
- * <p>The severity of the issue described in the message.</p>
7511
+ * <p>Details about a flow that contains multiple <code>LoopInput</code> nodes in a DoWhile loop.</p>
7509
7512
  * @public
7510
7513
  */
7511
- severity: FlowValidationSeverity | undefined;
7512
- /**
7513
- * <p>Specific details about the validation issue encountered in the flow.</p>
7514
- * @public
7515
- */
7516
- details?: FlowValidationDetails | undefined;
7517
- /**
7518
- * <p>The type of validation issue encountered in the flow.</p>
7519
- * @public
7520
- */
7521
- type?: FlowValidationType | undefined;
7522
- }
7523
- /**
7524
- * @public
7525
- */
7526
- export interface GetFlowResponse {
7527
- /**
7528
- * <p>The name of the flow.</p>
7529
- * @public
7530
- */
7531
- name: string | undefined;
7532
- /**
7533
- * <p>The description of the flow.</p>
7534
- * @public
7535
- */
7536
- description?: string | undefined;
7537
- /**
7538
- * <p>The Amazon Resource Name (ARN) of the service role with permissions to create a flow. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-permissions.html">Create a service row for flows</a> in the Amazon Bedrock User Guide.</p>
7539
- * @public
7540
- */
7541
- executionRoleArn: string | undefined;
7542
- /**
7543
- * <p>The Amazon Resource Name (ARN) of the KMS key that the flow is encrypted with.</p>
7544
- * @public
7545
- */
7546
- customerEncryptionKeyArn?: string | undefined;
7547
- /**
7548
- * <p>The unique identifier of the flow.</p>
7549
- * @public
7550
- */
7551
- id: string | undefined;
7552
- /**
7553
- * <p>The Amazon Resource Name (ARN) of the flow.</p>
7554
- * @public
7555
- */
7556
- arn: string | undefined;
7557
- /**
7558
- * <p>The status of the flow. The following statuses are possible:</p>
7559
- * <ul>
7560
- * <li>
7561
- * <p>NotPrepared – The flow has been created or updated, but hasn't been prepared. If you just created the flow, you can't test it. If you updated the flow, the <code>DRAFT</code> version won't contain the latest changes for testing. Send a <a href="https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_PrepareFlow.html">PrepareFlow</a> request to package the latest changes into the <code>DRAFT</code> version.</p>
7562
- * </li>
7563
- * <li>
7564
- * <p>Preparing – The flow is being prepared so that the <code>DRAFT</code> version contains the latest changes for testing.</p>
7565
- * </li>
7566
- * <li>
7567
- * <p>Prepared – The flow is prepared and the <code>DRAFT</code> version contains the latest changes for testing.</p>
7568
- * </li>
7569
- * <li>
7570
- * <p>Failed – The last API operation that you invoked on the flow failed. Send a <a href="https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_GetFlow.html">GetFlow</a> request and check the error message in the <code>validations</code> field.</p>
7571
- * </li>
7572
- * </ul>
7573
- * @public
7574
- */
7575
- status: FlowStatus | undefined;
7576
- /**
7577
- * <p>The time at which the flow was created.</p>
7578
- * @public
7579
- */
7580
- createdAt: Date | undefined;
7581
- /**
7582
- * <p>The time at which the flow was last updated.</p>
7583
- * @public
7584
- */
7585
- updatedAt: Date | undefined;
7586
- /**
7587
- * <p>The version of the flow for which information was retrieved.</p>
7588
- * @public
7589
- */
7590
- version: string | undefined;
7591
- /**
7592
- * <p>The definition of the nodes and connections between the nodes in the flow.</p>
7593
- * @public
7594
- */
7595
- definition?: FlowDefinition | undefined;
7596
- /**
7597
- * <p>A list of validation error messages related to the last failed operation on the flow.</p>
7598
- * @public
7599
- */
7600
- validations?: FlowValidation[] | undefined;
7601
- }
7602
- /**
7603
- * @public
7604
- */
7605
- export interface ListFlowsRequest {
7606
- /**
7607
- * <p>The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the <code>nextToken</code> field when making another request to return the next batch of results.</p>
7608
- * @public
7609
- */
7610
- maxResults?: number | undefined;
7611
- /**
7612
- * <p>If the total number of results is greater than the <code>maxResults</code> value provided in the request, enter the token returned in the <code>nextToken</code> field in the response in this field to return the next batch of results.</p>
7613
- * @public
7614
- */
7615
- nextToken?: string | undefined;
7616
- }
7617
- /**
7618
- * <p>Contains the definition of a flow.</p>
7619
- * @public
7620
- */
7621
- export interface FlowSummary {
7622
- /**
7623
- * <p>The name of the flow.</p>
7624
- * @public
7625
- */
7626
- name: string | undefined;
7627
- /**
7628
- * <p>A description of the flow.</p>
7629
- * @public
7630
- */
7631
- description?: string | undefined;
7632
- /**
7633
- * <p>The unique identifier of the flow.</p>
7634
- * @public
7635
- */
7636
- id: string | undefined;
7637
- /**
7638
- * <p>The Amazon Resource Name (ARN) of the flow.</p>
7639
- * @public
7640
- */
7641
- arn: string | undefined;
7642
- /**
7643
- * <p>The status of the flow. The following statuses are possible:</p>
7644
- * <ul>
7645
- * <li>
7646
- * <p>NotPrepared – The flow has been created or updated, but hasn't been prepared. If you just created the flow, you can't test it. If you updated the flow, the <code>DRAFT</code> version won't contain the latest changes for testing. Send a <a href="https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_PrepareFlow.html">PrepareFlow</a> request to package the latest changes into the <code>DRAFT</code> version.</p>
7647
- * </li>
7648
- * <li>
7649
- * <p>Preparing – The flow is being prepared so that the <code>DRAFT</code> version contains the latest changes for testing.</p>
7650
- * </li>
7651
- * <li>
7652
- * <p>Prepared – The flow is prepared and the <code>DRAFT</code> version contains the latest changes for testing.</p>
7653
- * </li>
7654
- * <li>
7655
- * <p>Failed – The last API operation that you invoked on the flow failed. Send a <a href="https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_GetFlow.html">GetFlow</a> request and check the error message in the <code>validations</code> field.</p>
7656
- * </li>
7657
- * </ul>
7658
- * @public
7659
- */
7660
- status: FlowStatus | undefined;
7661
- /**
7662
- * <p>The time at which the flow was created.</p>
7663
- * @public
7664
- */
7665
- createdAt: Date | undefined;
7666
- /**
7667
- * <p>The time at which the flow was last updated.</p>
7668
- * @public
7669
- */
7670
- updatedAt: Date | undefined;
7671
- /**
7672
- * <p>The latest version of the flow.</p>
7673
- * @public
7674
- */
7675
- version: string | undefined;
7676
- }
7677
- /**
7678
- * @public
7679
- */
7680
- export interface ListFlowsResponse {
7681
- /**
7682
- * <p>A list, each member of which contains information about a flow.</p>
7683
- * @public
7684
- */
7685
- flowSummaries: FlowSummary[] | undefined;
7686
- /**
7687
- * <p>If the total number of results is greater than the <code>maxResults</code> value provided in the request, use this token when making another request in the <code>nextToken</code> field to return the next batch of results.</p>
7688
- * @public
7689
- */
7690
- nextToken?: string | undefined;
7691
- }
7692
- /**
7693
- * @public
7694
- */
7695
- export interface PrepareFlowRequest {
7696
- /**
7697
- * <p>The unique identifier of the flow.</p>
7698
- * @public
7699
- */
7700
- flowIdentifier: string | undefined;
7701
- }
7702
- /**
7703
- * @public
7704
- */
7705
- export interface PrepareFlowResponse {
7706
- /**
7707
- * <p>The unique identifier of the flow.</p>
7708
- * @public
7709
- */
7710
- id: string | undefined;
7711
- /**
7712
- * <p>The status of the flow. When you submit this request, the status will be <code>NotPrepared</code>. If preparation succeeds, the status becomes <code>Prepared</code>. If it fails, the status becomes <code>FAILED</code>.</p>
7713
- * @public
7714
- */
7715
- status: FlowStatus | undefined;
7716
- }
7717
- /**
7718
- * @public
7719
- */
7720
- export interface UpdateFlowRequest {
7721
- /**
7722
- * <p>A name for the flow.</p>
7723
- * @public
7724
- */
7725
- name: string | undefined;
7726
- /**
7727
- * <p>A description for the flow.</p>
7728
- * @public
7729
- */
7730
- description?: string | undefined;
7731
- /**
7732
- * <p>The Amazon Resource Name (ARN) of the service role with permissions to create and manage a flow. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-permissions.html">Create a service role for flows in Amazon Bedrock</a> in the Amazon Bedrock User Guide.</p>
7733
- * @public
7734
- */
7735
- executionRoleArn: string | undefined;
7736
- /**
7737
- * <p>The Amazon Resource Name (ARN) of the KMS key to encrypt the flow.</p>
7738
- * @public
7739
- */
7740
- customerEncryptionKeyArn?: string | undefined;
7741
- /**
7742
- * <p>A definition of the nodes and the connections between the nodes in the flow.</p>
7743
- * @public
7744
- */
7745
- definition?: FlowDefinition | undefined;
7746
- /**
7747
- * <p>The unique identifier of the flow.</p>
7748
- * @public
7749
- */
7750
- flowIdentifier: string | undefined;
7751
- }
7752
- /**
7753
- * @public
7754
- */
7755
- export interface UpdateFlowResponse {
7756
- /**
7757
- * <p>The name of the flow.</p>
7758
- * @public
7759
- */
7760
- name: string | undefined;
7761
- /**
7762
- * <p>The description of the flow.</p>
7763
- * @public
7764
- */
7765
- description?: string | undefined;
7766
- /**
7767
- * <p>The Amazon Resource Name (ARN) of the service role with permissions to create a flow. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/flows-permissions.html">Create a service role for flows in Amazon Bedrock</a> in the Amazon Bedrock User Guide.</p>
7768
- * @public
7769
- */
7770
- executionRoleArn: string | undefined;
7771
- /**
7772
- * <p>The Amazon Resource Name (ARN) of the KMS key that the flow was encrypted with.</p>
7773
- * @public
7774
- */
7775
- customerEncryptionKeyArn?: string | undefined;
7776
- /**
7777
- * <p>The unique identifier of the flow.</p>
7778
- * @public
7779
- */
7780
- id: string | undefined;
7781
- /**
7782
- * <p>The Amazon Resource Name (ARN) of the flow.</p>
7783
- * @public
7784
- */
7785
- arn: string | undefined;
7786
- /**
7787
- * <p>The status of the flow. When you submit this request, the status will be <code>NotPrepared</code>. If updating fails, the status becomes <code>Failed</code>.</p>
7788
- * @public
7789
- */
7790
- status: FlowStatus | undefined;
7791
- /**
7792
- * <p>The time at which the flow was created.</p>
7793
- * @public
7794
- */
7795
- createdAt: Date | undefined;
7796
- /**
7797
- * <p>The time at which the flow was last updated.</p>
7798
- * @public
7799
- */
7800
- updatedAt: Date | undefined;
7801
- /**
7802
- * <p>The version of the flow. When you update a flow, the version updated is the <code>DRAFT</code> version.</p>
7803
- * @public
7804
- */
7805
- version: string | undefined;
7806
- /**
7807
- * <p>A definition of the nodes and the connections between nodes in the flow.</p>
7808
- * @public
7809
- */
7810
- definition?: FlowDefinition | undefined;
7811
- }
7812
- /**
7813
- * @public
7814
- */
7815
- export interface GetIngestionJobRequest {
7816
- /**
7817
- * <p>The unique identifier of the knowledge base for the data ingestion job you want to get information on.</p>
7818
- * @public
7819
- */
7820
- knowledgeBaseId: string | undefined;
7821
- /**
7822
- * <p>The unique identifier of the data source for the data ingestion job you want to get information on.</p>
7823
- * @public
7824
- */
7825
- dataSourceId: string | undefined;
7826
- /**
7827
- * <p>The unique identifier of the data ingestion job you want to get information on.</p>
7828
- * @public
7829
- */
7830
- ingestionJobId: string | undefined;
7831
- }
7832
- /**
7833
- * <p>Contains the statistics for the data ingestion job.</p>
7834
- * @public
7835
- */
7836
- export interface IngestionJobStatistics {
7837
- /**
7838
- * <p>The total number of source documents that were scanned. Includes new, updated, and unchanged documents.</p>
7839
- * @public
7840
- */
7841
- numberOfDocumentsScanned?: number | undefined;
7842
- /**
7843
- * <p>The total number of metadata files that were scanned. Includes new, updated, and unchanged files.</p>
7844
- * @public
7845
- */
7846
- numberOfMetadataDocumentsScanned?: number | undefined;
7847
- /**
7848
- * <p>The number of new source documents in the data source that were successfully indexed.</p>
7849
- * @public
7850
- */
7851
- numberOfNewDocumentsIndexed?: number | undefined;
7852
- /**
7853
- * <p>The number of modified source documents in the data source that were successfully indexed.</p>
7854
- * @public
7855
- */
7856
- numberOfModifiedDocumentsIndexed?: number | undefined;
7857
- /**
7858
- * <p>The number of metadata files that were updated or deleted.</p>
7859
- * @public
7860
- */
7861
- numberOfMetadataDocumentsModified?: number | undefined;
7862
- /**
7863
- * <p>The number of source documents that were deleted.</p>
7864
- * @public
7865
- */
7866
- numberOfDocumentsDeleted?: number | undefined;
7867
- /**
7868
- * <p>The number of source documents that failed to be ingested.</p>
7869
- * @public
7870
- */
7871
- numberOfDocumentsFailed?: number | undefined;
7872
- }
7873
- /**
7874
- * @public
7875
- * @enum
7876
- */
7877
- export declare const IngestionJobStatus: {
7878
- readonly COMPLETE: "COMPLETE";
7879
- readonly FAILED: "FAILED";
7880
- readonly IN_PROGRESS: "IN_PROGRESS";
7881
- readonly STARTING: "STARTING";
7882
- readonly STOPPED: "STOPPED";
7883
- readonly STOPPING: "STOPPING";
7884
- };
7885
- /**
7886
- * @public
7887
- */
7888
- export type IngestionJobStatus = (typeof IngestionJobStatus)[keyof typeof IngestionJobStatus];
7889
- /**
7890
- * <p>Contains details about a data ingestion job. Data sources are ingested into a knowledge base so that Large Language Models (LLMs) can use your data.</p>
7891
- * <p>This data type is used in the following API operations:</p>
7892
- * <ul>
7893
- * <li>
7894
- * <p>
7895
- * <a href="https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_StartIngestionJob.html#API_agent_StartIngestionJob_ResponseSyntax">StartIngestionJob response</a>
7896
- * </p>
7897
- * </li>
7898
- * <li>
7899
- * <p>
7900
- * <a href="https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_GetIngestionJob.html#API_agent_GetIngestionJob_ResponseSyntax">GetIngestionJob response</a>
7901
- * </p>
7902
- * </li>
7903
- * <li>
7904
- * <p>
7905
- * <a href="https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_ListIngestionJobs.html#API_agent_ListIngestionJobs_ResponseSyntax">ListIngestionJob response</a>
7906
- * </p>
7907
- * </li>
7908
- * </ul>
7909
- * @public
7910
- */
7911
- export interface IngestionJob {
7912
- /**
7913
- * <p>The unique identifier of the knowledge for the data ingestion job.</p>
7914
- * @public
7915
- */
7916
- knowledgeBaseId: string | undefined;
7917
- /**
7918
- * <p>The unique identifier of the data source for the data ingestion job.</p>
7919
- * @public
7920
- */
7921
- dataSourceId: string | undefined;
7922
- /**
7923
- * <p>The unique identifier of the data ingestion job.</p>
7924
- * @public
7925
- */
7926
- ingestionJobId: string | undefined;
7927
- /**
7928
- * <p>The description of the data ingestion job.</p>
7929
- * @public
7930
- */
7931
- description?: string | undefined;
7932
- /**
7933
- * <p>The status of the data ingestion job.</p>
7934
- * @public
7935
- */
7936
- status: IngestionJobStatus | undefined;
7937
- /**
7938
- * <p>Contains statistics about the data ingestion job.</p>
7939
- * @public
7940
- */
7941
- statistics?: IngestionJobStatistics | undefined;
7514
+ interface MultipleLoopInputNodesMember {
7515
+ cyclicConnection?: never;
7516
+ duplicateConnections?: never;
7517
+ duplicateConditionExpression?: never;
7518
+ unreachableNode?: never;
7519
+ unknownConnectionSource?: never;
7520
+ unknownConnectionSourceOutput?: never;
7521
+ unknownConnectionTarget?: never;
7522
+ unknownConnectionTargetInput?: never;
7523
+ unknownConnectionCondition?: never;
7524
+ malformedConditionExpression?: never;
7525
+ malformedNodeInputExpression?: never;
7526
+ mismatchedNodeInputType?: never;
7527
+ mismatchedNodeOutputType?: never;
7528
+ incompatibleConnectionDataType?: never;
7529
+ missingConnectionConfiguration?: never;
7530
+ missingDefaultCondition?: never;
7531
+ missingEndingNodes?: never;
7532
+ missingNodeConfiguration?: never;
7533
+ missingNodeInput?: never;
7534
+ missingNodeOutput?: never;
7535
+ missingStartingNodes?: never;
7536
+ multipleNodeInputConnections?: never;
7537
+ unfulfilledNodeInput?: never;
7538
+ unsatisfiedConnectionConditions?: never;
7539
+ unspecified?: never;
7540
+ unknownNodeInput?: never;
7541
+ unknownNodeOutput?: never;
7542
+ missingLoopInputNode?: never;
7543
+ missingLoopControllerNode?: never;
7544
+ multipleLoopInputNodes: MultipleLoopInputNodesFlowValidationDetails;
7545
+ multipleLoopControllerNodes?: never;
7546
+ loopIncompatibleNodeType?: never;
7547
+ invalidLoopBoundary?: never;
7548
+ $unknown?: never;
7549
+ }
7942
7550
  /**
7943
- * <p>A list of reasons that the data ingestion job failed.</p>
7551
+ * <p>Details about a flow that contains multiple <code>LoopController</code> nodes in a DoWhile loop.</p>
7944
7552
  * @public
7945
7553
  */
7946
- failureReasons?: string[] | undefined;
7554
+ interface MultipleLoopControllerNodesMember {
7555
+ cyclicConnection?: never;
7556
+ duplicateConnections?: never;
7557
+ duplicateConditionExpression?: never;
7558
+ unreachableNode?: never;
7559
+ unknownConnectionSource?: never;
7560
+ unknownConnectionSourceOutput?: never;
7561
+ unknownConnectionTarget?: never;
7562
+ unknownConnectionTargetInput?: never;
7563
+ unknownConnectionCondition?: never;
7564
+ malformedConditionExpression?: never;
7565
+ malformedNodeInputExpression?: never;
7566
+ mismatchedNodeInputType?: never;
7567
+ mismatchedNodeOutputType?: never;
7568
+ incompatibleConnectionDataType?: never;
7569
+ missingConnectionConfiguration?: never;
7570
+ missingDefaultCondition?: never;
7571
+ missingEndingNodes?: never;
7572
+ missingNodeConfiguration?: never;
7573
+ missingNodeInput?: never;
7574
+ missingNodeOutput?: never;
7575
+ missingStartingNodes?: never;
7576
+ multipleNodeInputConnections?: never;
7577
+ unfulfilledNodeInput?: never;
7578
+ unsatisfiedConnectionConditions?: never;
7579
+ unspecified?: never;
7580
+ unknownNodeInput?: never;
7581
+ unknownNodeOutput?: never;
7582
+ missingLoopInputNode?: never;
7583
+ missingLoopControllerNode?: never;
7584
+ multipleLoopInputNodes?: never;
7585
+ multipleLoopControllerNodes: MultipleLoopControllerNodesFlowValidationDetails;
7586
+ loopIncompatibleNodeType?: never;
7587
+ invalidLoopBoundary?: never;
7588
+ $unknown?: never;
7589
+ }
7947
7590
  /**
7948
- * <p>The time the data ingestion job started.</p>
7949
- * <p>If you stop a data ingestion job, the <code>startedAt</code> time is the time the job was started before the job was stopped.</p>
7591
+ * <p>Details about a flow that includes incompatible node types in a DoWhile loop.</p>
7950
7592
  * @public
7951
7593
  */
7952
- startedAt: Date | undefined;
7594
+ interface LoopIncompatibleNodeTypeMember {
7595
+ cyclicConnection?: never;
7596
+ duplicateConnections?: never;
7597
+ duplicateConditionExpression?: never;
7598
+ unreachableNode?: never;
7599
+ unknownConnectionSource?: never;
7600
+ unknownConnectionSourceOutput?: never;
7601
+ unknownConnectionTarget?: never;
7602
+ unknownConnectionTargetInput?: never;
7603
+ unknownConnectionCondition?: never;
7604
+ malformedConditionExpression?: never;
7605
+ malformedNodeInputExpression?: never;
7606
+ mismatchedNodeInputType?: never;
7607
+ mismatchedNodeOutputType?: never;
7608
+ incompatibleConnectionDataType?: never;
7609
+ missingConnectionConfiguration?: never;
7610
+ missingDefaultCondition?: never;
7611
+ missingEndingNodes?: never;
7612
+ missingNodeConfiguration?: never;
7613
+ missingNodeInput?: never;
7614
+ missingNodeOutput?: never;
7615
+ missingStartingNodes?: never;
7616
+ multipleNodeInputConnections?: never;
7617
+ unfulfilledNodeInput?: never;
7618
+ unsatisfiedConnectionConditions?: never;
7619
+ unspecified?: never;
7620
+ unknownNodeInput?: never;
7621
+ unknownNodeOutput?: never;
7622
+ missingLoopInputNode?: never;
7623
+ missingLoopControllerNode?: never;
7624
+ multipleLoopInputNodes?: never;
7625
+ multipleLoopControllerNodes?: never;
7626
+ loopIncompatibleNodeType: LoopIncompatibleNodeTypeFlowValidationDetails;
7627
+ invalidLoopBoundary?: never;
7628
+ $unknown?: never;
7629
+ }
7953
7630
  /**
7954
- * <p>The time the data ingestion job was last updated.</p>
7955
- * <p>If you stop a data ingestion job, the <code>updatedAt</code> time is the time the job was stopped.</p>
7631
+ * <p>Details about a flow that includes connections that violate loop boundary rules.</p>
7956
7632
  * @public
7957
7633
  */
7958
- updatedAt: Date | undefined;
7959
- }
7960
- /**
7961
- * @public
7962
- */
7963
- export interface GetIngestionJobResponse {
7634
+ interface InvalidLoopBoundaryMember {
7635
+ cyclicConnection?: never;
7636
+ duplicateConnections?: never;
7637
+ duplicateConditionExpression?: never;
7638
+ unreachableNode?: never;
7639
+ unknownConnectionSource?: never;
7640
+ unknownConnectionSourceOutput?: never;
7641
+ unknownConnectionTarget?: never;
7642
+ unknownConnectionTargetInput?: never;
7643
+ unknownConnectionCondition?: never;
7644
+ malformedConditionExpression?: never;
7645
+ malformedNodeInputExpression?: never;
7646
+ mismatchedNodeInputType?: never;
7647
+ mismatchedNodeOutputType?: never;
7648
+ incompatibleConnectionDataType?: never;
7649
+ missingConnectionConfiguration?: never;
7650
+ missingDefaultCondition?: never;
7651
+ missingEndingNodes?: never;
7652
+ missingNodeConfiguration?: never;
7653
+ missingNodeInput?: never;
7654
+ missingNodeOutput?: never;
7655
+ missingStartingNodes?: never;
7656
+ multipleNodeInputConnections?: never;
7657
+ unfulfilledNodeInput?: never;
7658
+ unsatisfiedConnectionConditions?: never;
7659
+ unspecified?: never;
7660
+ unknownNodeInput?: never;
7661
+ unknownNodeOutput?: never;
7662
+ missingLoopInputNode?: never;
7663
+ missingLoopControllerNode?: never;
7664
+ multipleLoopInputNodes?: never;
7665
+ multipleLoopControllerNodes?: never;
7666
+ loopIncompatibleNodeType?: never;
7667
+ invalidLoopBoundary: InvalidLoopBoundaryFlowValidationDetails;
7668
+ $unknown?: never;
7669
+ }
7964
7670
  /**
7965
- * <p>Contains details about the data ingestion job.</p>
7966
7671
  * @public
7967
7672
  */
7968
- ingestionJob: IngestionJob | undefined;
7673
+ interface $UnknownMember {
7674
+ cyclicConnection?: never;
7675
+ duplicateConnections?: never;
7676
+ duplicateConditionExpression?: never;
7677
+ unreachableNode?: never;
7678
+ unknownConnectionSource?: never;
7679
+ unknownConnectionSourceOutput?: never;
7680
+ unknownConnectionTarget?: never;
7681
+ unknownConnectionTargetInput?: never;
7682
+ unknownConnectionCondition?: never;
7683
+ malformedConditionExpression?: never;
7684
+ malformedNodeInputExpression?: never;
7685
+ mismatchedNodeInputType?: never;
7686
+ mismatchedNodeOutputType?: never;
7687
+ incompatibleConnectionDataType?: never;
7688
+ missingConnectionConfiguration?: never;
7689
+ missingDefaultCondition?: never;
7690
+ missingEndingNodes?: never;
7691
+ missingNodeConfiguration?: never;
7692
+ missingNodeInput?: never;
7693
+ missingNodeOutput?: never;
7694
+ missingStartingNodes?: never;
7695
+ multipleNodeInputConnections?: never;
7696
+ unfulfilledNodeInput?: never;
7697
+ unsatisfiedConnectionConditions?: never;
7698
+ unspecified?: never;
7699
+ unknownNodeInput?: never;
7700
+ unknownNodeOutput?: never;
7701
+ missingLoopInputNode?: never;
7702
+ missingLoopControllerNode?: never;
7703
+ multipleLoopInputNodes?: never;
7704
+ multipleLoopControllerNodes?: never;
7705
+ loopIncompatibleNodeType?: never;
7706
+ invalidLoopBoundary?: never;
7707
+ $unknown: [string, any];
7708
+ }
7709
+ interface Visitor<T> {
7710
+ cyclicConnection: (value: CyclicConnectionFlowValidationDetails) => T;
7711
+ duplicateConnections: (value: DuplicateConnectionsFlowValidationDetails) => T;
7712
+ duplicateConditionExpression: (value: DuplicateConditionExpressionFlowValidationDetails) => T;
7713
+ unreachableNode: (value: UnreachableNodeFlowValidationDetails) => T;
7714
+ unknownConnectionSource: (value: UnknownConnectionSourceFlowValidationDetails) => T;
7715
+ unknownConnectionSourceOutput: (value: UnknownConnectionSourceOutputFlowValidationDetails) => T;
7716
+ unknownConnectionTarget: (value: UnknownConnectionTargetFlowValidationDetails) => T;
7717
+ unknownConnectionTargetInput: (value: UnknownConnectionTargetInputFlowValidationDetails) => T;
7718
+ unknownConnectionCondition: (value: UnknownConnectionConditionFlowValidationDetails) => T;
7719
+ malformedConditionExpression: (value: MalformedConditionExpressionFlowValidationDetails) => T;
7720
+ malformedNodeInputExpression: (value: MalformedNodeInputExpressionFlowValidationDetails) => T;
7721
+ mismatchedNodeInputType: (value: MismatchedNodeInputTypeFlowValidationDetails) => T;
7722
+ mismatchedNodeOutputType: (value: MismatchedNodeOutputTypeFlowValidationDetails) => T;
7723
+ incompatibleConnectionDataType: (value: IncompatibleConnectionDataTypeFlowValidationDetails) => T;
7724
+ missingConnectionConfiguration: (value: MissingConnectionConfigurationFlowValidationDetails) => T;
7725
+ missingDefaultCondition: (value: MissingDefaultConditionFlowValidationDetails) => T;
7726
+ missingEndingNodes: (value: MissingEndingNodesFlowValidationDetails) => T;
7727
+ missingNodeConfiguration: (value: MissingNodeConfigurationFlowValidationDetails) => T;
7728
+ missingNodeInput: (value: MissingNodeInputFlowValidationDetails) => T;
7729
+ missingNodeOutput: (value: MissingNodeOutputFlowValidationDetails) => T;
7730
+ missingStartingNodes: (value: MissingStartingNodesFlowValidationDetails) => T;
7731
+ multipleNodeInputConnections: (value: MultipleNodeInputConnectionsFlowValidationDetails) => T;
7732
+ unfulfilledNodeInput: (value: UnfulfilledNodeInputFlowValidationDetails) => T;
7733
+ unsatisfiedConnectionConditions: (value: UnsatisfiedConnectionConditionsFlowValidationDetails) => T;
7734
+ unspecified: (value: UnspecifiedFlowValidationDetails) => T;
7735
+ unknownNodeInput: (value: UnknownNodeInputFlowValidationDetails) => T;
7736
+ unknownNodeOutput: (value: UnknownNodeOutputFlowValidationDetails) => T;
7737
+ missingLoopInputNode: (value: MissingLoopInputNodeFlowValidationDetails) => T;
7738
+ missingLoopControllerNode: (value: MissingLoopControllerNodeFlowValidationDetails) => T;
7739
+ multipleLoopInputNodes: (value: MultipleLoopInputNodesFlowValidationDetails) => T;
7740
+ multipleLoopControllerNodes: (value: MultipleLoopControllerNodesFlowValidationDetails) => T;
7741
+ loopIncompatibleNodeType: (value: LoopIncompatibleNodeTypeFlowValidationDetails) => T;
7742
+ invalidLoopBoundary: (value: InvalidLoopBoundaryFlowValidationDetails) => T;
7743
+ _: (name: string, value: any) => T;
7744
+ }
7745
+ const visit: <T>(value: FlowValidationDetails, visitor: Visitor<T>) => T;
7969
7746
  }
7970
7747
  /**
7971
7748
  * @public
7972
7749
  * @enum
7973
7750
  */
7974
- export declare const IngestionJobFilterAttribute: {
7975
- readonly STATUS: "STATUS";
7751
+ export declare const FlowValidationSeverity: {
7752
+ readonly ERROR: "Error";
7753
+ readonly WARNING: "Warning";
7976
7754
  };
7977
7755
  /**
7978
7756
  * @public
7979
7757
  */
7980
- export type IngestionJobFilterAttribute = (typeof IngestionJobFilterAttribute)[keyof typeof IngestionJobFilterAttribute];
7758
+ export type FlowValidationSeverity = (typeof FlowValidationSeverity)[keyof typeof FlowValidationSeverity];
7981
7759
  /**
7982
7760
  * @public
7983
7761
  * @enum
7984
7762
  */
7985
- export declare const IngestionJobFilterOperator: {
7986
- readonly EQ: "EQ";
7763
+ export declare const FlowValidationType: {
7764
+ readonly CYCLIC_CONNECTION: "CyclicConnection";
7765
+ readonly DUPLICATE_CONDITION_EXPRESSION: "DuplicateConditionExpression";
7766
+ readonly DUPLICATE_CONNECTIONS: "DuplicateConnections";
7767
+ readonly INCOMPATIBLE_CONNECTION_DATA_TYPE: "IncompatibleConnectionDataType";
7768
+ readonly INVALID_LOOP_BOUNDARY: "InvalidLoopBoundary";
7769
+ readonly LOOP_INCOMPATIBLE_NODE_TYPE: "LoopIncompatibleNodeType";
7770
+ readonly MALFORMED_CONDITION_EXPRESSION: "MalformedConditionExpression";
7771
+ readonly MALFORMED_NODE_INPUT_EXPRESSION: "MalformedNodeInputExpression";
7772
+ readonly MISMATCHED_NODE_INPUT_TYPE: "MismatchedNodeInputType";
7773
+ readonly MISMATCHED_NODE_OUTPUT_TYPE: "MismatchedNodeOutputType";
7774
+ readonly MISSING_CONNECTION_CONFIGURATION: "MissingConnectionConfiguration";
7775
+ readonly MISSING_DEFAULT_CONDITION: "MissingDefaultCondition";
7776
+ readonly MISSING_ENDING_NODES: "MissingEndingNodes";
7777
+ readonly MISSING_LOOP_CONTROLLER_NODE: "MissingLoopControllerNode";
7778
+ readonly MISSING_LOOP_INPUT_NODE: "MissingLoopInputNode";
7779
+ readonly MISSING_NODE_CONFIGURATION: "MissingNodeConfiguration";
7780
+ readonly MISSING_NODE_INPUT: "MissingNodeInput";
7781
+ readonly MISSING_NODE_OUTPUT: "MissingNodeOutput";
7782
+ readonly MISSING_STARTING_NODES: "MissingStartingNodes";
7783
+ readonly MULTIPLE_LOOP_CONTROLLER_NODES: "MultipleLoopControllerNodes";
7784
+ readonly MULTIPLE_LOOP_INPUT_NODES: "MultipleLoopInputNodes";
7785
+ readonly MULTIPLE_NODE_INPUT_CONNECTIONS: "MultipleNodeInputConnections";
7786
+ readonly UNFULFILLED_NODE_INPUT: "UnfulfilledNodeInput";
7787
+ readonly UNKNOWN_CONNECTION_CONDITION: "UnknownConnectionCondition";
7788
+ readonly UNKNOWN_CONNECTION_SOURCE: "UnknownConnectionSource";
7789
+ readonly UNKNOWN_CONNECTION_SOURCE_OUTPUT: "UnknownConnectionSourceOutput";
7790
+ readonly UNKNOWN_CONNECTION_TARGET: "UnknownConnectionTarget";
7791
+ readonly UNKNOWN_CONNECTION_TARGET_INPUT: "UnknownConnectionTargetInput";
7792
+ readonly UNKNOWN_NODE_INPUT: "UnknownNodeInput";
7793
+ readonly UNKNOWN_NODE_OUTPUT: "UnknownNodeOutput";
7794
+ readonly UNREACHABLE_NODE: "UnreachableNode";
7795
+ readonly UNSATISFIED_CONNECTION_CONDITIONS: "UnsatisfiedConnectionConditions";
7796
+ readonly UNSPECIFIED: "Unspecified";
7987
7797
  };
7988
7798
  /**
7989
7799
  * @public
7990
7800
  */
7991
- export type IngestionJobFilterOperator = (typeof IngestionJobFilterOperator)[keyof typeof IngestionJobFilterOperator];
7801
+ export type FlowValidationType = (typeof FlowValidationType)[keyof typeof FlowValidationType];
7992
7802
  /**
7993
- * <p>The definition of a filter to filter the data.</p>
7803
+ * <p>Contains information about validation of the flow.</p>
7804
+ * <p>This data type is used in the following API operations:</p>
7805
+ * <ul>
7806
+ * <li>
7807
+ * <p>
7808
+ * <a href="https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_GetFlow.html#API_agent_GetFlow_ResponseSyntax">GetFlow response</a>
7809
+ * </p>
7810
+ * </li>
7811
+ * <li>
7812
+ * <p>
7813
+ * <a href="https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_GetFlowVersion.html#API_agent_GetFlowVersion_ResponseSyntax">GetFlowVersion response</a>
7814
+ * </p>
7815
+ * </li>
7816
+ * </ul>
7994
7817
  * @public
7995
7818
  */
7996
- export interface IngestionJobFilter {
7997
- /**
7998
- * <p>The name of field or attribute to apply the filter.</p>
7999
- * @public
8000
- */
8001
- attribute: IngestionJobFilterAttribute | undefined;
7819
+ export interface FlowValidation {
8002
7820
  /**
8003
- * <p>The operation to apply to the field or attribute.</p>
7821
+ * <p>A message describing the validation error.</p>
8004
7822
  * @public
8005
7823
  */
8006
- operator: IngestionJobFilterOperator | undefined;
7824
+ message: string | undefined;
8007
7825
  /**
8008
- * <p>A list of values that belong to the field or attribute.</p>
7826
+ * <p>The severity of the issue described in the message.</p>
8009
7827
  * @public
8010
7828
  */
8011
- values: string[] | undefined;
8012
- }
8013
- /**
8014
- * @public
8015
- * @enum
8016
- */
8017
- export declare const IngestionJobSortByAttribute: {
8018
- readonly STARTED_AT: "STARTED_AT";
8019
- readonly STATUS: "STATUS";
8020
- };
8021
- /**
8022
- * @public
8023
- */
8024
- export type IngestionJobSortByAttribute = (typeof IngestionJobSortByAttribute)[keyof typeof IngestionJobSortByAttribute];
8025
- /**
8026
- * @public
8027
- * @enum
8028
- */
8029
- export declare const SortOrder: {
8030
- readonly ASCENDING: "ASCENDING";
8031
- readonly DESCENDING: "DESCENDING";
8032
- };
8033
- /**
8034
- * @public
8035
- */
8036
- export type SortOrder = (typeof SortOrder)[keyof typeof SortOrder];
8037
- /**
8038
- * <p>The parameters of sorting the data.</p>
8039
- * @public
8040
- */
8041
- export interface IngestionJobSortBy {
7829
+ severity: FlowValidationSeverity | undefined;
8042
7830
  /**
8043
- * <p>The name of field or attribute to apply sorting of data.</p>
7831
+ * <p>Specific details about the validation issue encountered in the flow.</p>
8044
7832
  * @public
8045
7833
  */
8046
- attribute: IngestionJobSortByAttribute | undefined;
7834
+ details?: FlowValidationDetails | undefined;
8047
7835
  /**
8048
- * <p>The order for sorting the data.</p>
7836
+ * <p>The type of validation issue encountered in the flow.</p>
8049
7837
  * @public
8050
7838
  */
8051
- order: SortOrder | undefined;
7839
+ type?: FlowValidationType | undefined;
8052
7840
  }
8053
7841
  /**
8054
7842
  * @public
8055
7843
  */
8056
- export interface ListIngestionJobsRequest {
8057
- /**
8058
- * <p>The unique identifier of the knowledge base for the list of data ingestion jobs.</p>
8059
- * @public
8060
- */
8061
- knowledgeBaseId: string | undefined;
8062
- /**
8063
- * <p>The unique identifier of the data source for the list of data ingestion jobs.</p>
8064
- * @public
8065
- */
8066
- dataSourceId: string | undefined;
8067
- /**
8068
- * <p>Contains information about the filters for filtering the data.</p>
8069
- * @public
8070
- */
8071
- filters?: IngestionJobFilter[] | undefined;
8072
- /**
8073
- * <p>Contains details about how to sort the data.</p>
8074
- * @public
8075
- */
8076
- sortBy?: IngestionJobSortBy | undefined;
7844
+ export interface ListFlowsRequest {
8077
7845
  /**
8078
7846
  * <p>The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the <code>nextToken</code> field when making another request to return the next batch of results.</p>
8079
7847
  * @public
@@ -8086,60 +7854,74 @@ export interface ListIngestionJobsRequest {
8086
7854
  nextToken?: string | undefined;
8087
7855
  }
8088
7856
  /**
8089
- * <p>Contains details about a data ingestion job.</p>
7857
+ * <p>Contains the definition of a flow.</p>
8090
7858
  * @public
8091
7859
  */
8092
- export interface IngestionJobSummary {
7860
+ export interface FlowSummary {
8093
7861
  /**
8094
- * <p>The unique identifier of the knowledge base for the data ingestion job.</p>
7862
+ * <p>The name of the flow.</p>
8095
7863
  * @public
8096
7864
  */
8097
- knowledgeBaseId: string | undefined;
7865
+ name: string | undefined;
8098
7866
  /**
8099
- * <p>The unique identifier of the data source for the data ingestion job.</p>
7867
+ * <p>A description of the flow.</p>
8100
7868
  * @public
8101
7869
  */
8102
- dataSourceId: string | undefined;
7870
+ description?: string | undefined;
8103
7871
  /**
8104
- * <p>The unique identifier of the data ingestion job.</p>
7872
+ * <p>The unique identifier of the flow.</p>
8105
7873
  * @public
8106
7874
  */
8107
- ingestionJobId: string | undefined;
7875
+ id: string | undefined;
8108
7876
  /**
8109
- * <p>The description of the data ingestion job.</p>
7877
+ * <p>The Amazon Resource Name (ARN) of the flow.</p>
8110
7878
  * @public
8111
7879
  */
8112
- description?: string | undefined;
7880
+ arn: string | undefined;
8113
7881
  /**
8114
- * <p>The status of the data ingestion job.</p>
7882
+ * <p>The status of the flow. The following statuses are possible:</p>
7883
+ * <ul>
7884
+ * <li>
7885
+ * <p>NotPrepared – The flow has been created or updated, but hasn't been prepared. If you just created the flow, you can't test it. If you updated the flow, the <code>DRAFT</code> version won't contain the latest changes for testing. Send a <a href="https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_PrepareFlow.html">PrepareFlow</a> request to package the latest changes into the <code>DRAFT</code> version.</p>
7886
+ * </li>
7887
+ * <li>
7888
+ * <p>Preparing – The flow is being prepared so that the <code>DRAFT</code> version contains the latest changes for testing.</p>
7889
+ * </li>
7890
+ * <li>
7891
+ * <p>Prepared – The flow is prepared and the <code>DRAFT</code> version contains the latest changes for testing.</p>
7892
+ * </li>
7893
+ * <li>
7894
+ * <p>Failed – The last API operation that you invoked on the flow failed. Send a <a href="https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_GetFlow.html">GetFlow</a> request and check the error message in the <code>validations</code> field.</p>
7895
+ * </li>
7896
+ * </ul>
8115
7897
  * @public
8116
7898
  */
8117
- status: IngestionJobStatus | undefined;
7899
+ status: FlowStatus | undefined;
8118
7900
  /**
8119
- * <p>The time the data ingestion job started.</p>
7901
+ * <p>The time at which the flow was created.</p>
8120
7902
  * @public
8121
7903
  */
8122
- startedAt: Date | undefined;
7904
+ createdAt: Date | undefined;
8123
7905
  /**
8124
- * <p>The time the data ingestion job was last updated.</p>
7906
+ * <p>The time at which the flow was last updated.</p>
8125
7907
  * @public
8126
7908
  */
8127
7909
  updatedAt: Date | undefined;
8128
7910
  /**
8129
- * <p>Contains statistics for the data ingestion job.</p>
7911
+ * <p>The latest version of the flow.</p>
8130
7912
  * @public
8131
7913
  */
8132
- statistics?: IngestionJobStatistics | undefined;
7914
+ version: string | undefined;
8133
7915
  }
8134
7916
  /**
8135
7917
  * @public
8136
7918
  */
8137
- export interface ListIngestionJobsResponse {
7919
+ export interface ListFlowsResponse {
8138
7920
  /**
8139
- * <p>A list of data ingestion jobs with information about each job.</p>
7921
+ * <p>A list, each member of which contains information about a flow.</p>
8140
7922
  * @public
8141
7923
  */
8142
- ingestionJobSummaries: IngestionJobSummary[] | undefined;
7924
+ flowSummaries: FlowSummary[] | undefined;
8143
7925
  /**
8144
7926
  * <p>If the total number of results is greater than the <code>maxResults</code> value provided in the request, use this token when making another request in the <code>nextToken</code> field to return the next batch of results.</p>
8145
7927
  * @public
@@ -8149,59 +7931,105 @@ export interface ListIngestionJobsResponse {
8149
7931
  /**
8150
7932
  * @public
8151
7933
  */
8152
- export interface StartIngestionJobRequest {
8153
- /**
8154
- * <p>The unique identifier of the knowledge base for the data ingestion job.</p>
8155
- * @public
8156
- */
8157
- knowledgeBaseId: string | undefined;
7934
+ export interface PrepareFlowRequest {
8158
7935
  /**
8159
- * <p>The unique identifier of the data source you want to ingest into your knowledge base.</p>
7936
+ * <p>The unique identifier of the flow.</p>
8160
7937
  * @public
8161
7938
  */
8162
- dataSourceId: string | undefined;
7939
+ flowIdentifier: string | undefined;
7940
+ }
7941
+ /**
7942
+ * @public
7943
+ */
7944
+ export interface PrepareFlowResponse {
8163
7945
  /**
8164
- * <p>A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request,
8165
- * Amazon Bedrock ignores the request, but does not return an error. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html">Ensuring idempotency</a>.</p>
7946
+ * <p>The unique identifier of the flow.</p>
8166
7947
  * @public
8167
7948
  */
8168
- clientToken?: string | undefined;
7949
+ id: string | undefined;
8169
7950
  /**
8170
- * <p>A description of the data ingestion job.</p>
7951
+ * <p>The status of the flow. When you submit this request, the status will be <code>NotPrepared</code>. If preparation succeeds, the status becomes <code>Prepared</code>. If it fails, the status becomes <code>FAILED</code>.</p>
8171
7952
  * @public
8172
7953
  */
8173
- description?: string | undefined;
7954
+ status: FlowStatus | undefined;
8174
7955
  }
8175
7956
  /**
8176
7957
  * @public
8177
7958
  */
8178
- export interface StartIngestionJobResponse {
7959
+ export interface GetIngestionJobRequest {
7960
+ /**
7961
+ * <p>The unique identifier of the knowledge base for the data ingestion job you want to get information on.</p>
7962
+ * @public
7963
+ */
7964
+ knowledgeBaseId: string | undefined;
7965
+ /**
7966
+ * <p>The unique identifier of the data source for the data ingestion job you want to get information on.</p>
7967
+ * @public
7968
+ */
7969
+ dataSourceId: string | undefined;
8179
7970
  /**
8180
- * <p>Contains information about the data ingestion job.</p>
7971
+ * <p>The unique identifier of the data ingestion job you want to get information on.</p>
8181
7972
  * @public
8182
7973
  */
8183
- ingestionJob: IngestionJob | undefined;
7974
+ ingestionJobId: string | undefined;
8184
7975
  }
8185
7976
  /**
7977
+ * <p>Contains the statistics for the data ingestion job.</p>
8186
7978
  * @public
8187
7979
  */
8188
- export interface StopIngestionJobRequest {
7980
+ export interface IngestionJobStatistics {
7981
+ /**
7982
+ * <p>The total number of source documents that were scanned. Includes new, updated, and unchanged documents.</p>
7983
+ * @public
7984
+ */
7985
+ numberOfDocumentsScanned?: number | undefined;
8189
7986
  /**
8190
- * <p>The unique identifier of the knowledge base for the data ingestion job you want to stop.</p>
7987
+ * <p>The total number of metadata files that were scanned. Includes new, updated, and unchanged files.</p>
8191
7988
  * @public
8192
7989
  */
8193
- knowledgeBaseId: string | undefined;
7990
+ numberOfMetadataDocumentsScanned?: number | undefined;
8194
7991
  /**
8195
- * <p>The unique identifier of the data source for the data ingestion job you want to stop.</p>
7992
+ * <p>The number of new source documents in the data source that were successfully indexed.</p>
8196
7993
  * @public
8197
7994
  */
8198
- dataSourceId: string | undefined;
7995
+ numberOfNewDocumentsIndexed?: number | undefined;
8199
7996
  /**
8200
- * <p>The unique identifier of the data ingestion job you want to stop.</p>
7997
+ * <p>The number of modified source documents in the data source that were successfully indexed.</p>
8201
7998
  * @public
8202
7999
  */
8203
- ingestionJobId: string | undefined;
8000
+ numberOfModifiedDocumentsIndexed?: number | undefined;
8001
+ /**
8002
+ * <p>The number of metadata files that were updated or deleted.</p>
8003
+ * @public
8004
+ */
8005
+ numberOfMetadataDocumentsModified?: number | undefined;
8006
+ /**
8007
+ * <p>The number of source documents that were deleted.</p>
8008
+ * @public
8009
+ */
8010
+ numberOfDocumentsDeleted?: number | undefined;
8011
+ /**
8012
+ * <p>The number of source documents that failed to be ingested.</p>
8013
+ * @public
8014
+ */
8015
+ numberOfDocumentsFailed?: number | undefined;
8204
8016
  }
8017
+ /**
8018
+ * @public
8019
+ * @enum
8020
+ */
8021
+ export declare const IngestionJobStatus: {
8022
+ readonly COMPLETE: "COMPLETE";
8023
+ readonly FAILED: "FAILED";
8024
+ readonly IN_PROGRESS: "IN_PROGRESS";
8025
+ readonly STARTING: "STARTING";
8026
+ readonly STOPPED: "STOPPED";
8027
+ readonly STOPPING: "STOPPING";
8028
+ };
8029
+ /**
8030
+ * @public
8031
+ */
8032
+ export type IngestionJobStatus = (typeof IngestionJobStatus)[keyof typeof IngestionJobStatus];
8205
8033
  /**
8206
8034
  * @internal
8207
8035
  */
@@ -8389,100 +8217,92 @@ export declare const InlineCodeFlowNodeConfigurationFilterSensitiveLog: (obj: In
8389
8217
  /**
8390
8218
  * @internal
8391
8219
  */
8392
- export declare const ContentBlockFilterSensitiveLog: (obj: ContentBlock) => any;
8393
- /**
8394
- * @internal
8395
- */
8396
- export declare const MessageFilterSensitiveLog: (obj: Message) => any;
8397
- /**
8398
- * @internal
8399
- */
8400
- export declare const SystemContentBlockFilterSensitiveLog: (obj: SystemContentBlock) => any;
8220
+ export declare const KnowledgeBasePromptTemplateFilterSensitiveLog: (obj: KnowledgeBasePromptTemplate) => any;
8401
8221
  /**
8402
8222
  * @internal
8403
8223
  */
8404
- export declare const ToolChoiceFilterSensitiveLog: (obj: ToolChoice) => any;
8224
+ export declare const KnowledgeBaseOrchestrationConfigurationFilterSensitiveLog: (obj: KnowledgeBaseOrchestrationConfiguration) => any;
8405
8225
  /**
8406
8226
  * @internal
8407
8227
  */
8408
- export declare const ToolConfigurationFilterSensitiveLog: (obj: ToolConfiguration) => any;
8228
+ export declare const RerankingMetadataSelectiveModeConfigurationFilterSensitiveLog: (obj: RerankingMetadataSelectiveModeConfiguration) => any;
8409
8229
  /**
8410
8230
  * @internal
8411
8231
  */
8412
- export declare const ChatPromptTemplateConfigurationFilterSensitiveLog: (obj: ChatPromptTemplateConfiguration) => any;
8232
+ export declare const MetadataConfigurationForRerankingFilterSensitiveLog: (obj: MetadataConfigurationForReranking) => any;
8413
8233
  /**
8414
8234
  * @internal
8415
8235
  */
8416
- export declare const TextPromptTemplateConfigurationFilterSensitiveLog: (obj: TextPromptTemplateConfiguration) => any;
8236
+ export declare const VectorSearchBedrockRerankingConfigurationFilterSensitiveLog: (obj: VectorSearchBedrockRerankingConfiguration) => any;
8417
8237
  /**
8418
8238
  * @internal
8419
8239
  */
8420
- export declare const PromptTemplateConfigurationFilterSensitiveLog: (obj: PromptTemplateConfiguration) => any;
8240
+ export declare const VectorSearchRerankingConfigurationFilterSensitiveLog: (obj: VectorSearchRerankingConfiguration) => any;
8421
8241
  /**
8422
8242
  * @internal
8423
8243
  */
8424
- export declare const PromptFlowNodeInlineConfigurationFilterSensitiveLog: (obj: PromptFlowNodeInlineConfiguration) => any;
8244
+ export declare const KnowledgeBaseFlowNodeConfigurationFilterSensitiveLog: (obj: KnowledgeBaseFlowNodeConfiguration) => any;
8425
8245
  /**
8426
8246
  * @internal
8427
8247
  */
8428
- export declare const PromptFlowNodeSourceConfigurationFilterSensitiveLog: (obj: PromptFlowNodeSourceConfiguration) => any;
8248
+ export declare const LoopControllerFlowNodeConfigurationFilterSensitiveLog: (obj: LoopControllerFlowNodeConfiguration) => any;
8429
8249
  /**
8430
8250
  * @internal
8431
8251
  */
8432
- export declare const PromptFlowNodeConfigurationFilterSensitiveLog: (obj: PromptFlowNodeConfiguration) => any;
8252
+ export declare const ContentBlockFilterSensitiveLog: (obj: ContentBlock) => any;
8433
8253
  /**
8434
8254
  * @internal
8435
8255
  */
8436
- export declare const FlowNodeConfigurationFilterSensitiveLog: (obj: FlowNodeConfiguration) => any;
8256
+ export declare const MessageFilterSensitiveLog: (obj: Message) => any;
8437
8257
  /**
8438
8258
  * @internal
8439
8259
  */
8440
- export declare const FlowNodeInputFilterSensitiveLog: (obj: FlowNodeInput) => any;
8260
+ export declare const SystemContentBlockFilterSensitiveLog: (obj: SystemContentBlock) => any;
8441
8261
  /**
8442
8262
  * @internal
8443
8263
  */
8444
- export declare const FlowNodeFilterSensitiveLog: (obj: FlowNode) => any;
8264
+ export declare const ToolChoiceFilterSensitiveLog: (obj: ToolChoice) => any;
8445
8265
  /**
8446
8266
  * @internal
8447
8267
  */
8448
- export declare const FlowDefinitionFilterSensitiveLog: (obj: FlowDefinition) => any;
8268
+ export declare const ToolConfigurationFilterSensitiveLog: (obj: ToolConfiguration) => any;
8449
8269
  /**
8450
8270
  * @internal
8451
8271
  */
8452
- export declare const CreateFlowRequestFilterSensitiveLog: (obj: CreateFlowRequest) => any;
8272
+ export declare const ChatPromptTemplateConfigurationFilterSensitiveLog: (obj: ChatPromptTemplateConfiguration) => any;
8453
8273
  /**
8454
8274
  * @internal
8455
8275
  */
8456
- export declare const CreateFlowResponseFilterSensitiveLog: (obj: CreateFlowResponse) => any;
8276
+ export declare const TextPromptTemplateConfigurationFilterSensitiveLog: (obj: TextPromptTemplateConfiguration) => any;
8457
8277
  /**
8458
8278
  * @internal
8459
8279
  */
8460
- export declare const CreateFlowVersionResponseFilterSensitiveLog: (obj: CreateFlowVersionResponse) => any;
8280
+ export declare const PromptTemplateConfigurationFilterSensitiveLog: (obj: PromptTemplateConfiguration) => any;
8461
8281
  /**
8462
8282
  * @internal
8463
8283
  */
8464
- export declare const GetFlowVersionResponseFilterSensitiveLog: (obj: GetFlowVersionResponse) => any;
8284
+ export declare const PromptFlowNodeInlineConfigurationFilterSensitiveLog: (obj: PromptFlowNodeInlineConfiguration) => any;
8465
8285
  /**
8466
8286
  * @internal
8467
8287
  */
8468
- export declare const DuplicateConditionExpressionFlowValidationDetailsFilterSensitiveLog: (obj: DuplicateConditionExpressionFlowValidationDetails) => any;
8288
+ export declare const PromptFlowNodeSourceConfigurationFilterSensitiveLog: (obj: PromptFlowNodeSourceConfiguration) => any;
8469
8289
  /**
8470
8290
  * @internal
8471
8291
  */
8472
- export declare const FlowValidationDetailsFilterSensitiveLog: (obj: FlowValidationDetails) => any;
8292
+ export declare const PromptFlowNodeConfigurationFilterSensitiveLog: (obj: PromptFlowNodeConfiguration) => any;
8473
8293
  /**
8474
8294
  * @internal
8475
8295
  */
8476
- export declare const FlowValidationFilterSensitiveLog: (obj: FlowValidation) => any;
8296
+ export declare const FlowNodeInputFilterSensitiveLog: (obj: FlowNodeInput) => any;
8477
8297
  /**
8478
8298
  * @internal
8479
8299
  */
8480
- export declare const GetFlowResponseFilterSensitiveLog: (obj: GetFlowResponse) => any;
8300
+ export declare const DuplicateConditionExpressionFlowValidationDetailsFilterSensitiveLog: (obj: DuplicateConditionExpressionFlowValidationDetails) => any;
8481
8301
  /**
8482
8302
  * @internal
8483
8303
  */
8484
- export declare const UpdateFlowRequestFilterSensitiveLog: (obj: UpdateFlowRequest) => any;
8304
+ export declare const FlowValidationDetailsFilterSensitiveLog: (obj: FlowValidationDetails) => any;
8485
8305
  /**
8486
8306
  * @internal
8487
8307
  */
8488
- export declare const UpdateFlowResponseFilterSensitiveLog: (obj: UpdateFlowResponse) => any;
8308
+ export declare const FlowValidationFilterSensitiveLog: (obj: FlowValidation) => any;