@aws-cdk/aws-bedrock-agentcore-alpha 2.256.1-alpha.0 → 2.258.0-alpha.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.
- package/.jsii +2806 -2580
- package/.jsii.tabl.json.gz +0 -0
- package/.warnings.jsii.js +2135 -59
- package/lib/common/types.d.ts +2 -0
- package/lib/common/types.js +3 -1
- package/lib/evaluation/custom-evaluator.d.ts +1 -0
- package/lib/evaluation/custom-evaluator.js +37 -4
- package/lib/evaluation/data-source.d.ts +1 -0
- package/lib/evaluation/data-source.js +15 -2
- package/lib/evaluation/evaluator-base.d.ts +2 -0
- package/lib/evaluation/evaluator-base.js +65 -3
- package/lib/evaluation/evaluator-config.d.ts +4 -0
- package/lib/evaluation/evaluator-config.js +25 -3
- package/lib/evaluation/evaluator.d.ts +1 -0
- package/lib/evaluation/evaluator.js +14 -2
- package/lib/evaluation/online-evaluation-base.d.ts +2 -0
- package/lib/evaluation/online-evaluation-base.js +65 -3
- package/lib/evaluation/online-evaluation.d.ts +1 -0
- package/lib/evaluation/online-evaluation.js +37 -4
- package/lib/evaluation/perms.d.ts +5 -0
- package/lib/evaluation/perms.js +6 -1
- package/lib/evaluation/types.d.ts +15 -0
- package/lib/evaluation/types.js +75 -6
- package/lib/evaluation/validation-helpers.d.ts +22 -0
- package/lib/evaluation/validation-helpers.js +23 -1
- package/lib/gateway/gateway-base.d.ts +7 -0
- package/lib/gateway/gateway-base.js +178 -3
- package/lib/gateway/gateway.d.ts +9 -0
- package/lib/gateway/gateway.js +49 -6
- package/lib/gateway/inbound-auth/authorizer.d.ts +12 -0
- package/lib/gateway/inbound-auth/authorizer.js +31 -5
- package/lib/gateway/inbound-auth/custom-claim.d.ts +1 -0
- package/lib/gateway/inbound-auth/custom-claim.js +13 -2
- package/lib/gateway/interceptor.d.ts +5 -0
- package/lib/gateway/interceptor.js +7 -2
- package/lib/gateway/outbound-auth/api-key.d.ts +5 -0
- package/lib/gateway/outbound-auth/api-key.js +7 -2
- package/lib/gateway/outbound-auth/credential-provider.d.ts +5 -0
- package/lib/gateway/outbound-auth/credential-provider.js +17 -2
- package/lib/gateway/outbound-auth/iam-role.d.ts +1 -0
- package/lib/gateway/outbound-auth/iam-role.js +2 -1
- package/lib/gateway/outbound-auth/oauth.d.ts +2 -0
- package/lib/gateway/outbound-auth/oauth.js +2 -1
- package/lib/gateway/perms.d.ts +16 -0
- package/lib/gateway/perms.js +17 -1
- package/lib/gateway/protocol.d.ts +7 -0
- package/lib/gateway/protocol.js +10 -3
- package/lib/gateway/targets/schema/api-schema.d.ts +4 -0
- package/lib/gateway/targets/schema/api-schema.js +161 -6
- package/lib/gateway/targets/schema/base-schema.d.ts +1 -0
- package/lib/gateway/targets/schema/base-schema.js +2 -1
- package/lib/gateway/targets/schema/tool-schema.d.ts +12 -0
- package/lib/gateway/targets/schema/tool-schema.js +166 -6
- package/lib/gateway/targets/target-base.d.ts +5 -0
- package/lib/gateway/targets/target-base.js +76 -3
- package/lib/gateway/targets/target-configuration.d.ts +14 -0
- package/lib/gateway/targets/target-configuration.js +125 -9
- package/lib/gateway/targets/target.d.ts +8 -0
- package/lib/gateway/targets/target.js +37 -4
- package/lib/gateway/validation-helpers.d.ts +4 -0
- package/lib/gateway/validation-helpers.js +4 -1
- package/lib/identity/api-key-credential-provider.d.ts +4 -0
- package/lib/identity/api-key-credential-provider.js +36 -3
- package/lib/identity/grant-helpers.d.ts +7 -0
- package/lib/identity/grant-helpers.js +42 -2
- package/lib/identity/oauth2-credential-provider.d.ts +29 -0
- package/lib/identity/oauth2-credential-provider.js +37 -3
- package/lib/identity/perms.d.ts +5 -0
- package/lib/identity/perms.js +9 -4
- package/lib/identity/validation-helpers.d.ts +53 -0
- package/lib/identity/validation-helpers.js +54 -1
- package/lib/identity/workload-identity.d.ts +3 -0
- package/lib/identity/workload-identity.js +36 -3
- package/lib/memory/memory-strategy.d.ts +6 -0
- package/lib/memory/memory-strategy.js +47 -2
- package/lib/memory/memory.d.ts +4 -0
- package/lib/memory/memory.js +210 -5
- package/lib/memory/strategies/managed-strategy.d.ts +4 -0
- package/lib/memory/strategies/managed-strategy.js +22 -2
- package/lib/memory/strategies/self-managed-strategy.d.ts +4 -0
- package/lib/memory/strategies/self-managed-strategy.js +57 -4
- package/lib/memory/validation-helpers.d.ts +6 -0
- package/lib/memory/validation-helpers.js +7 -1
- package/lib/network/network-configuration.d.ts +5 -0
- package/lib/network/network-configuration.js +83 -6
- package/lib/policy/policy-base.js +36 -3
- package/lib/policy/policy-engine-base.js +36 -3
- package/lib/policy/policy-engine.js +37 -4
- package/lib/policy/policy-statement.js +5 -5
- package/lib/policy/policy-types.js +1 -1
- package/lib/policy/policy.js +36 -3
- package/lib/runtime/inbound-auth/custom-claim.d.ts +1 -0
- package/lib/runtime/inbound-auth/custom-claim.js +13 -2
- package/lib/runtime/inbound-auth/runtime-authorizer-configuration.d.ts +1 -0
- package/lib/runtime/inbound-auth/runtime-authorizer-configuration.js +40 -2
- package/lib/runtime/observability.d.ts +5 -0
- package/lib/runtime/observability.js +79 -5
- package/lib/runtime/perms.d.ts +12 -0
- package/lib/runtime/perms.js +13 -1
- package/lib/runtime/runtime-artifact.d.ts +3 -0
- package/lib/runtime/runtime-artifact.js +69 -5
- package/lib/runtime/runtime-base.d.ts +3 -0
- package/lib/runtime/runtime-base.js +200 -3
- package/lib/runtime/runtime-endpoint-base.d.ts +3 -0
- package/lib/runtime/runtime-endpoint-base.js +22 -2
- package/lib/runtime/runtime-endpoint.d.ts +1 -0
- package/lib/runtime/runtime-endpoint.js +36 -3
- package/lib/runtime/runtime.d.ts +2 -0
- package/lib/runtime/runtime.js +38 -5
- package/lib/runtime/types.d.ts +3 -0
- package/lib/runtime/types.js +2 -1
- package/lib/runtime/validation-helpers.d.ts +6 -0
- package/lib/runtime/validation-helpers.js +7 -1
- package/lib/tools/browser.d.ts +6 -0
- package/lib/tools/browser.js +205 -8
- package/lib/tools/code-interpreter.d.ts +4 -0
- package/lib/tools/code-interpreter.js +185 -7
- package/lib/tools/perms.d.ts +12 -0
- package/lib/tools/perms.js +13 -1
- package/lib/tools/validation-helpers.d.ts +6 -0
- package/lib/tools/validation-helpers.js +7 -1
- package/package.json +10 -10
package/lib/evaluation/perms.js
CHANGED
|
@@ -16,6 +16,7 @@ exports.EVALUATION_CLOUDWATCH_INDEX_POLICY_PERMS = exports.EVALUATION_CLOUDWATCH
|
|
|
16
16
|
/**
|
|
17
17
|
* Permissions to describe CloudWatch Log Groups.
|
|
18
18
|
* This is a list operation that does not support resource-level permissions.
|
|
19
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
19
20
|
*/
|
|
20
21
|
exports.EVALUATION_CLOUDWATCH_LOGS_DESCRIBE_PERMS = [
|
|
21
22
|
'logs:DescribeLogGroups',
|
|
@@ -23,6 +24,7 @@ exports.EVALUATION_CLOUDWATCH_LOGS_DESCRIBE_PERMS = [
|
|
|
23
24
|
/**
|
|
24
25
|
* Permissions for the execution role to query CloudWatch Logs.
|
|
25
26
|
* These actions support resource-level permissions scoped to specific log groups.
|
|
27
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
26
28
|
*/
|
|
27
29
|
exports.EVALUATION_CLOUDWATCH_LOGS_QUERY_PERMS = [
|
|
28
30
|
'logs:GetQueryResults',
|
|
@@ -30,6 +32,7 @@ exports.EVALUATION_CLOUDWATCH_LOGS_QUERY_PERMS = [
|
|
|
30
32
|
];
|
|
31
33
|
/**
|
|
32
34
|
* Permissions for the execution role to invoke Bedrock models.
|
|
35
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
33
36
|
*/
|
|
34
37
|
exports.EVALUATION_BEDROCK_MODEL_PERMS = [
|
|
35
38
|
'bedrock:InvokeModel',
|
|
@@ -37,6 +40,7 @@ exports.EVALUATION_BEDROCK_MODEL_PERMS = [
|
|
|
37
40
|
];
|
|
38
41
|
/**
|
|
39
42
|
* Permissions for the execution role to write evaluation results.
|
|
43
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
40
44
|
*/
|
|
41
45
|
exports.EVALUATION_CLOUDWATCH_LOGS_WRITE_PERMS = [
|
|
42
46
|
'logs:CreateLogGroup',
|
|
@@ -45,9 +49,10 @@ exports.EVALUATION_CLOUDWATCH_LOGS_WRITE_PERMS = [
|
|
|
45
49
|
];
|
|
46
50
|
/**
|
|
47
51
|
* Permissions for CloudWatch index policies.
|
|
52
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
48
53
|
*/
|
|
49
54
|
exports.EVALUATION_CLOUDWATCH_INDEX_POLICY_PERMS = [
|
|
50
55
|
'logs:DescribeIndexPolicies',
|
|
51
56
|
'logs:PutIndexPolicy',
|
|
52
57
|
];
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJwZXJtcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7Ozs7Ozs7O0dBV0c7OztBQUVIOzs7O0dBSUc7QUFDVSxRQUFBLHlDQUF5QyxHQUFHO0lBQ3ZELHdCQUF3QjtDQUN6QixDQUFDO0FBRUY7Ozs7R0FJRztBQUNVLFFBQUEsc0NBQXNDLEdBQUc7SUFDcEQsc0JBQXNCO0lBQ3RCLGlCQUFpQjtDQUNsQixDQUFDO0FBRUY7OztHQUdHO0FBQ1UsUUFBQSw4QkFBOEIsR0FBRztJQUM1QyxxQkFBcUI7SUFDckIsdUNBQXVDO0NBQ3hDLENBQUM7QUFFRjs7O0dBR0c7QUFDVSxRQUFBLHNDQUFzQyxHQUFHO0lBQ3BELHFCQUFxQjtJQUNyQixzQkFBc0I7SUFDdEIsbUJBQW1CO0NBQ3BCLENBQUM7QUFFRjs7O0dBR0c7QUFDVSxRQUFBLHdDQUF3QyxHQUFHO0lBQ3RELDRCQUE0QjtJQUM1QixxQkFBcUI7Q0FDdEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogIENvcHlyaWdodCBBbWF6b24uY29tLCBJbmMuIG9yIGl0cyBhZmZpbGlhdGVzLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpLiBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4gKiAgd2l0aCB0aGUgTGljZW5zZS4gQSBjb3B5IG9mIHRoZSBMaWNlbnNlIGlzIGxvY2F0ZWQgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqICBvciBpbiB0aGUgJ2xpY2Vuc2UnIGZpbGUgYWNjb21wYW55aW5nIHRoaXMgZmlsZS4gVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICdBUyBJUycgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFU1xuICogIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zXG4gKiAgYW5kIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbi8qKlxuICogUGVybWlzc2lvbnMgdG8gZGVzY3JpYmUgQ2xvdWRXYXRjaCBMb2cgR3JvdXBzLlxuICogVGhpcyBpcyBhIGxpc3Qgb3BlcmF0aW9uIHRoYXQgZG9lcyBub3Qgc3VwcG9ydCByZXNvdXJjZS1sZXZlbCBwZXJtaXNzaW9ucy5cbiAqIEBkZXByZWNhdGVkIFVzZSB0aGUgZXF1aXZhbGVudCBjb25zdHJ1Y3QgZnJvbSBgYXdzLWNkay1saWIvYXdzLWJlZHJvY2thZ2VudGNvcmVgIGluc3RlYWQuXG4gKi9cbmV4cG9ydCBjb25zdCBFVkFMVUFUSU9OX0NMT1VEV0FUQ0hfTE9HU19ERVNDUklCRV9QRVJNUyA9IFtcbiAgJ2xvZ3M6RGVzY3JpYmVMb2dHcm91cHMnLFxuXTtcblxuLyoqXG4gKiBQZXJtaXNzaW9ucyBmb3IgdGhlIGV4ZWN1dGlvbiByb2xlIHRvIHF1ZXJ5IENsb3VkV2F0Y2ggTG9ncy5cbiAqIFRoZXNlIGFjdGlvbnMgc3VwcG9ydCByZXNvdXJjZS1sZXZlbCBwZXJtaXNzaW9ucyBzY29wZWQgdG8gc3BlY2lmaWMgbG9nIGdyb3Vwcy5cbiAqIEBkZXByZWNhdGVkIFVzZSB0aGUgZXF1aXZhbGVudCBjb25zdHJ1Y3QgZnJvbSBgYXdzLWNkay1saWIvYXdzLWJlZHJvY2thZ2VudGNvcmVgIGluc3RlYWQuXG4gKi9cbmV4cG9ydCBjb25zdCBFVkFMVUFUSU9OX0NMT1VEV0FUQ0hfTE9HU19RVUVSWV9QRVJNUyA9IFtcbiAgJ2xvZ3M6R2V0UXVlcnlSZXN1bHRzJyxcbiAgJ2xvZ3M6U3RhcnRRdWVyeScsXG5dO1xuXG4vKipcbiAqIFBlcm1pc3Npb25zIGZvciB0aGUgZXhlY3V0aW9uIHJvbGUgdG8gaW52b2tlIEJlZHJvY2sgbW9kZWxzLlxuICogQGRlcHJlY2F0ZWQgVXNlIHRoZSBlcXVpdmFsZW50IGNvbnN0cnVjdCBmcm9tIGBhd3MtY2RrLWxpYi9hd3MtYmVkcm9ja2FnZW50Y29yZWAgaW5zdGVhZC5cbiAqL1xuZXhwb3J0IGNvbnN0IEVWQUxVQVRJT05fQkVEUk9DS19NT0RFTF9QRVJNUyA9IFtcbiAgJ2JlZHJvY2s6SW52b2tlTW9kZWwnLFxuICAnYmVkcm9jazpJbnZva2VNb2RlbFdpdGhSZXNwb25zZVN0cmVhbScsXG5dO1xuXG4vKipcbiAqIFBlcm1pc3Npb25zIGZvciB0aGUgZXhlY3V0aW9uIHJvbGUgdG8gd3JpdGUgZXZhbHVhdGlvbiByZXN1bHRzLlxuICogQGRlcHJlY2F0ZWQgVXNlIHRoZSBlcXVpdmFsZW50IGNvbnN0cnVjdCBmcm9tIGBhd3MtY2RrLWxpYi9hd3MtYmVkcm9ja2FnZW50Y29yZWAgaW5zdGVhZC5cbiAqL1xuZXhwb3J0IGNvbnN0IEVWQUxVQVRJT05fQ0xPVURXQVRDSF9MT0dTX1dSSVRFX1BFUk1TID0gW1xuICAnbG9nczpDcmVhdGVMb2dHcm91cCcsXG4gICdsb2dzOkNyZWF0ZUxvZ1N0cmVhbScsXG4gICdsb2dzOlB1dExvZ0V2ZW50cycsXG5dO1xuXG4vKipcbiAqIFBlcm1pc3Npb25zIGZvciBDbG91ZFdhdGNoIGluZGV4IHBvbGljaWVzLlxuICogQGRlcHJlY2F0ZWQgVXNlIHRoZSBlcXVpdmFsZW50IGNvbnN0cnVjdCBmcm9tIGBhd3MtY2RrLWxpYi9hd3MtYmVkcm9ja2FnZW50Y29yZWAgaW5zdGVhZC5cbiAqL1xuZXhwb3J0IGNvbnN0IEVWQUxVQVRJT05fQ0xPVURXQVRDSF9JTkRFWF9QT0xJQ1lfUEVSTVMgPSBbXG4gICdsb2dzOkRlc2NyaWJlSW5kZXhQb2xpY2llcycsXG4gICdsb2dzOlB1dEluZGV4UG9saWN5Jyxcbl07XG4iXX0=
|
|
@@ -17,6 +17,7 @@ import type * as iam from 'aws-cdk-lib/aws-iam';
|
|
|
17
17
|
*
|
|
18
18
|
* These evaluators assess different aspects of agent performance
|
|
19
19
|
* at various levels (session, trace, or tool call).
|
|
20
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
20
21
|
*/
|
|
21
22
|
export declare class BuiltinEvaluator {
|
|
22
23
|
/**
|
|
@@ -82,6 +83,7 @@ export declare class BuiltinEvaluator {
|
|
|
82
83
|
}
|
|
83
84
|
/**
|
|
84
85
|
* The execution status of an online evaluation configuration.
|
|
86
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
85
87
|
*/
|
|
86
88
|
export declare class ExecutionStatus {
|
|
87
89
|
/**
|
|
@@ -103,6 +105,7 @@ export declare class ExecutionStatus {
|
|
|
103
105
|
}
|
|
104
106
|
/**
|
|
105
107
|
* Filter operators for online evaluation filtering.
|
|
108
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
106
109
|
*/
|
|
107
110
|
export declare class FilterOperator {
|
|
108
111
|
/**
|
|
@@ -153,6 +156,7 @@ export declare class FilterOperator {
|
|
|
153
156
|
* - `FilterValue.string()` for string comparisons
|
|
154
157
|
* - `FilterValue.number()` for numeric comparisons
|
|
155
158
|
* - `FilterValue.boolean()` for boolean comparisons
|
|
159
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
156
160
|
*/
|
|
157
161
|
export declare class FilterValue {
|
|
158
162
|
/**
|
|
@@ -190,6 +194,7 @@ export declare class FilterValue {
|
|
|
190
194
|
*
|
|
191
195
|
* Filters determine which agent traces should be included in the evaluation
|
|
192
196
|
* based on trace properties.
|
|
197
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
193
198
|
*/
|
|
194
199
|
export interface FilterConfig {
|
|
195
200
|
/**
|
|
@@ -212,6 +217,7 @@ export interface FilterConfig {
|
|
|
212
217
|
}
|
|
213
218
|
/**
|
|
214
219
|
* Configuration for CloudWatch Logs data source.
|
|
220
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
215
221
|
*/
|
|
216
222
|
export interface CloudWatchLogsDataSourceConfig {
|
|
217
223
|
/**
|
|
@@ -237,6 +243,7 @@ export interface CloudWatchLogsDataSourceConfig {
|
|
|
237
243
|
* Base properties for creating an OnlineEvaluationConfig.
|
|
238
244
|
* The actual OnlineEvaluationProps is defined in online-evaluation-config.ts
|
|
239
245
|
* to avoid circular dependencies.
|
|
246
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
240
247
|
*/
|
|
241
248
|
export interface OnlineEvaluationBaseProps {
|
|
242
249
|
/**
|
|
@@ -301,6 +308,7 @@ export interface OnlineEvaluationBaseProps {
|
|
|
301
308
|
}
|
|
302
309
|
/**
|
|
303
310
|
* The result of binding an EvaluatorReference.
|
|
311
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
304
312
|
*/
|
|
305
313
|
export interface EvaluatorReferenceBindResult {
|
|
306
314
|
/**
|
|
@@ -310,6 +318,7 @@ export interface EvaluatorReferenceBindResult {
|
|
|
310
318
|
}
|
|
311
319
|
/**
|
|
312
320
|
* The result of binding a DataSourceConfig.
|
|
321
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
313
322
|
*/
|
|
314
323
|
export interface DataSourceConfigBindResult {
|
|
315
324
|
/**
|
|
@@ -321,6 +330,7 @@ export interface DataSourceConfigBindResult {
|
|
|
321
330
|
* The level at which a custom evaluator assesses agent performance.
|
|
322
331
|
*
|
|
323
332
|
* Determines what granularity of data the evaluator operates on.
|
|
333
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
324
334
|
*/
|
|
325
335
|
export declare class EvaluationLevel {
|
|
326
336
|
/**
|
|
@@ -348,6 +358,7 @@ export declare class EvaluationLevel {
|
|
|
348
358
|
* A categorical rating scale option for custom evaluators.
|
|
349
359
|
*
|
|
350
360
|
* Categorical scales define discrete labels for scoring agent performance.
|
|
361
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
351
362
|
*/
|
|
352
363
|
export interface CategoricalRatingOption {
|
|
353
364
|
/**
|
|
@@ -367,6 +378,7 @@ export interface CategoricalRatingOption {
|
|
|
367
378
|
* A numerical rating scale option for custom evaluators.
|
|
368
379
|
*
|
|
369
380
|
* Numerical scales define labeled numeric values for scoring agent performance.
|
|
381
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
370
382
|
*/
|
|
371
383
|
export interface NumericalRatingOption {
|
|
372
384
|
/**
|
|
@@ -392,6 +404,7 @@ export interface NumericalRatingOption {
|
|
|
392
404
|
* Inference configuration for a custom LLM-as-a-Judge evaluator.
|
|
393
405
|
*
|
|
394
406
|
* Controls how the foundation model generates evaluation responses.
|
|
407
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
395
408
|
*/
|
|
396
409
|
export interface EvaluatorInferenceConfig {
|
|
397
410
|
/**
|
|
@@ -419,6 +432,7 @@ export interface EvaluatorInferenceConfig {
|
|
|
419
432
|
}
|
|
420
433
|
/**
|
|
421
434
|
* Attributes for importing an existing Evaluator.
|
|
435
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
422
436
|
*/
|
|
423
437
|
export interface EvaluatorAttributes {
|
|
424
438
|
/**
|
|
@@ -438,6 +452,7 @@ export interface EvaluatorAttributes {
|
|
|
438
452
|
}
|
|
439
453
|
/**
|
|
440
454
|
* Attributes for importing an existing OnlineEvaluationConfig.
|
|
455
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
441
456
|
*/
|
|
442
457
|
export interface OnlineEvaluationConfigAttributes {
|
|
443
458
|
/**
|
package/lib/evaluation/types.js
CHANGED
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.EvaluationLevel = exports.FilterValue = exports.FilterOperator = exports.ExecutionStatus = exports.BuiltinEvaluator = void 0;
|
|
4
|
+
const jsiiDeprecationWarnings = require("../../.warnings.jsii.js");
|
|
4
5
|
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
5
6
|
/**
|
|
6
7
|
* Built-in evaluators provided by Amazon Bedrock AgentCore.
|
|
7
8
|
*
|
|
8
9
|
* These evaluators assess different aspects of agent performance
|
|
9
10
|
* at various levels (session, trace, or tool call).
|
|
11
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
10
12
|
*/
|
|
11
13
|
class BuiltinEvaluator {
|
|
12
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.BuiltinEvaluator", version: "2.
|
|
14
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.BuiltinEvaluator", version: "2.258.0-alpha.0" };
|
|
13
15
|
/**
|
|
14
16
|
* Evaluates whether the information in the agent's response is factually accurate.
|
|
15
17
|
*/
|
|
@@ -70,15 +72,25 @@ class BuiltinEvaluator {
|
|
|
70
72
|
* @param value - The evaluator identifier string
|
|
71
73
|
*/
|
|
72
74
|
constructor(value) {
|
|
75
|
+
try {
|
|
76
|
+
jsiiDeprecationWarnings.print("@aws-cdk/aws-bedrock-agentcore-alpha.BuiltinEvaluator", "Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.");
|
|
77
|
+
}
|
|
78
|
+
catch (error) {
|
|
79
|
+
if (process.env.JSII_DEBUG !== "1" && error.name === "DeprecationError") {
|
|
80
|
+
Error.captureStackTrace(error, BuiltinEvaluator);
|
|
81
|
+
}
|
|
82
|
+
throw error;
|
|
83
|
+
}
|
|
73
84
|
this.value = value;
|
|
74
85
|
}
|
|
75
86
|
}
|
|
76
87
|
exports.BuiltinEvaluator = BuiltinEvaluator;
|
|
77
88
|
/**
|
|
78
89
|
* The execution status of an online evaluation configuration.
|
|
90
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
79
91
|
*/
|
|
80
92
|
class ExecutionStatus {
|
|
81
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.ExecutionStatus", version: "2.
|
|
93
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.ExecutionStatus", version: "2.258.0-alpha.0" };
|
|
82
94
|
/**
|
|
83
95
|
* The evaluation is enabled and actively processing agent traces.
|
|
84
96
|
*/
|
|
@@ -95,15 +107,25 @@ class ExecutionStatus {
|
|
|
95
107
|
* @param value - The execution status string
|
|
96
108
|
*/
|
|
97
109
|
constructor(value) {
|
|
110
|
+
try {
|
|
111
|
+
jsiiDeprecationWarnings.print("@aws-cdk/aws-bedrock-agentcore-alpha.ExecutionStatus", "Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.");
|
|
112
|
+
}
|
|
113
|
+
catch (error) {
|
|
114
|
+
if (process.env.JSII_DEBUG !== "1" && error.name === "DeprecationError") {
|
|
115
|
+
Error.captureStackTrace(error, ExecutionStatus);
|
|
116
|
+
}
|
|
117
|
+
throw error;
|
|
118
|
+
}
|
|
98
119
|
this.value = value;
|
|
99
120
|
}
|
|
100
121
|
}
|
|
101
122
|
exports.ExecutionStatus = ExecutionStatus;
|
|
102
123
|
/**
|
|
103
124
|
* Filter operators for online evaluation filtering.
|
|
125
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
104
126
|
*/
|
|
105
127
|
class FilterOperator {
|
|
106
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.FilterOperator", version: "2.
|
|
128
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.FilterOperator", version: "2.258.0-alpha.0" };
|
|
107
129
|
/**
|
|
108
130
|
* Exact equality comparison.
|
|
109
131
|
*/
|
|
@@ -144,6 +166,15 @@ class FilterOperator {
|
|
|
144
166
|
* @param value - The filter operator string
|
|
145
167
|
*/
|
|
146
168
|
constructor(value) {
|
|
169
|
+
try {
|
|
170
|
+
jsiiDeprecationWarnings.print("@aws-cdk/aws-bedrock-agentcore-alpha.FilterOperator", "Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.");
|
|
171
|
+
}
|
|
172
|
+
catch (error) {
|
|
173
|
+
if (process.env.JSII_DEBUG !== "1" && error.name === "DeprecationError") {
|
|
174
|
+
Error.captureStackTrace(error, FilterOperator);
|
|
175
|
+
}
|
|
176
|
+
throw error;
|
|
177
|
+
}
|
|
147
178
|
this.value = value;
|
|
148
179
|
}
|
|
149
180
|
}
|
|
@@ -155,15 +186,25 @@ exports.FilterOperator = FilterOperator;
|
|
|
155
186
|
* - `FilterValue.string()` for string comparisons
|
|
156
187
|
* - `FilterValue.number()` for numeric comparisons
|
|
157
188
|
* - `FilterValue.boolean()` for boolean comparisons
|
|
189
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
158
190
|
*/
|
|
159
191
|
class FilterValue {
|
|
160
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.FilterValue", version: "2.
|
|
192
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.FilterValue", version: "2.258.0-alpha.0" };
|
|
161
193
|
/**
|
|
162
194
|
* Creates a string filter value.
|
|
163
195
|
*
|
|
164
196
|
* @param value - The string value to compare against
|
|
165
197
|
*/
|
|
166
198
|
static string(value) {
|
|
199
|
+
try {
|
|
200
|
+
jsiiDeprecationWarnings.print("@aws-cdk/aws-bedrock-agentcore-alpha.FilterValue#string", "Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.");
|
|
201
|
+
}
|
|
202
|
+
catch (error) {
|
|
203
|
+
if (process.env.JSII_DEBUG !== "1" && error.name === "DeprecationError") {
|
|
204
|
+
Error.captureStackTrace(error, this.string);
|
|
205
|
+
}
|
|
206
|
+
throw error;
|
|
207
|
+
}
|
|
167
208
|
return new FilterValue({ stringValue: value });
|
|
168
209
|
}
|
|
169
210
|
/**
|
|
@@ -172,6 +213,15 @@ class FilterValue {
|
|
|
172
213
|
* @param value - The numeric value to compare against
|
|
173
214
|
*/
|
|
174
215
|
static number(value) {
|
|
216
|
+
try {
|
|
217
|
+
jsiiDeprecationWarnings.print("@aws-cdk/aws-bedrock-agentcore-alpha.FilterValue#number", "Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.");
|
|
218
|
+
}
|
|
219
|
+
catch (error) {
|
|
220
|
+
if (process.env.JSII_DEBUG !== "1" && error.name === "DeprecationError") {
|
|
221
|
+
Error.captureStackTrace(error, this.number);
|
|
222
|
+
}
|
|
223
|
+
throw error;
|
|
224
|
+
}
|
|
175
225
|
return new FilterValue({ doubleValue: value });
|
|
176
226
|
}
|
|
177
227
|
/**
|
|
@@ -180,6 +230,15 @@ class FilterValue {
|
|
|
180
230
|
* @param value - The boolean value to compare against
|
|
181
231
|
*/
|
|
182
232
|
static boolean(value) {
|
|
233
|
+
try {
|
|
234
|
+
jsiiDeprecationWarnings.print("@aws-cdk/aws-bedrock-agentcore-alpha.FilterValue#boolean", "Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.");
|
|
235
|
+
}
|
|
236
|
+
catch (error) {
|
|
237
|
+
if (process.env.JSII_DEBUG !== "1" && error.name === "DeprecationError") {
|
|
238
|
+
Error.captureStackTrace(error, this.boolean);
|
|
239
|
+
}
|
|
240
|
+
throw error;
|
|
241
|
+
}
|
|
183
242
|
return new FilterValue({ booleanValue: value });
|
|
184
243
|
}
|
|
185
244
|
filterValue;
|
|
@@ -199,9 +258,10 @@ exports.FilterValue = FilterValue;
|
|
|
199
258
|
* The level at which a custom evaluator assesses agent performance.
|
|
200
259
|
*
|
|
201
260
|
* Determines what granularity of data the evaluator operates on.
|
|
261
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
202
262
|
*/
|
|
203
263
|
class EvaluationLevel {
|
|
204
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.EvaluationLevel", version: "2.
|
|
264
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.EvaluationLevel", version: "2.258.0-alpha.0" };
|
|
205
265
|
/**
|
|
206
266
|
* Evaluates individual tool call invocations within a trace.
|
|
207
267
|
*/
|
|
@@ -222,8 +282,17 @@ class EvaluationLevel {
|
|
|
222
282
|
* @param value - The evaluation level string
|
|
223
283
|
*/
|
|
224
284
|
constructor(value) {
|
|
285
|
+
try {
|
|
286
|
+
jsiiDeprecationWarnings.print("@aws-cdk/aws-bedrock-agentcore-alpha.EvaluationLevel", "Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.");
|
|
287
|
+
}
|
|
288
|
+
catch (error) {
|
|
289
|
+
if (process.env.JSII_DEBUG !== "1" && error.name === "DeprecationError") {
|
|
290
|
+
Error.captureStackTrace(error, EvaluationLevel);
|
|
291
|
+
}
|
|
292
|
+
throw error;
|
|
293
|
+
}
|
|
225
294
|
this.value = value;
|
|
226
295
|
}
|
|
227
296
|
}
|
|
228
297
|
exports.EvaluationLevel = EvaluationLevel;
|
|
229
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ0eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBZ0JBOzs7OztHQUtHO0FBQ0gsTUFBYSxnQkFBZ0I7O0lBQzNCOztPQUVHO0lBQ0ksTUFBTSxDQUFVLFdBQVcsR0FBRyxJQUFJLGdCQUFnQixDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFFakY7O09BRUc7SUFDSSxNQUFNLENBQVUsWUFBWSxHQUFHLElBQUksZ0JBQWdCLENBQUMsc0JBQXNCLENBQUMsQ0FBQztJQUVuRjs7T0FFRztJQUNJLE1BQU0sQ0FBVSxXQUFXLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBRWpGOztPQUVHO0lBQ0ksTUFBTSxDQUFVLGtCQUFrQixHQUFHLElBQUksZ0JBQWdCLENBQUMsMkJBQTJCLENBQUMsQ0FBQztJQUU5Rjs7T0FFRztJQUNJLE1BQU0sQ0FBVSxXQUFXLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBRWpGOztPQUVHO0lBQ0ksTUFBTSxDQUFVLFNBQVMsR0FBRyxJQUFJLGdCQUFnQixDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFFN0U7O09BRUc7SUFDSSxNQUFNLENBQVUscUJBQXFCLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO0lBRXBHOztPQUVHO0lBQ0ksTUFBTSxDQUFVLE9BQU8sR0FBRyxJQUFJLGdCQUFnQixDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFFekU7O09BRUc7SUFDSSxNQUFNLENBQVUsaUJBQWlCLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBRTNGOztPQUVHO0lBQ0ksTUFBTSxDQUFVLHVCQUF1QixHQUFHLElBQUksZ0JBQWdCLENBQUMsK0JBQStCLENBQUMsQ0FBQztJQUV2Rzs7T0FFRztJQUNJLE1BQU0sQ0FBVSx1QkFBdUIsR0FBRyxJQUFJLGdCQUFnQixD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UyxHQUFHLElBQUksZUFBZSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBRXBFOztPQUVHO0lBQ0ksTUFBTSxDQUFVLEtBQUssR0FBRyxJQUFJLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUU1RDs7T0FFRztJQUNJLE1BQU0sQ0FBVSxPQUFPLEdBQUcsSUFBSSxlQUFlLENBQUMsU0FBUyxDQUFDLENBQUM7SUFFaEU7O09BRUc7SUFDYSxLQUFLLENBQVM7SUFFOUI7O09BRUc7SUFDSCxZQUFtQixLQUFhO1FBQzlCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0tBQ3BCOztBQTFCSCwwQ0EyQkMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqICBDb3B5cmlnaHQgQW1hem9uLmNvbSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKS4gWW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuICogIHdpdGggdGhlIExpY2Vuc2UuIEEgY29weSBvZiB0aGUgTGljZW5zZSBpcyBsb2NhdGVkIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiAgb3IgaW4gdGhlICdsaWNlbnNlJyBmaWxlIGFjY29tcGFueWluZyB0aGlzIGZpbGUuIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAnQVMgSVMnIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVNcbiAqICBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9uc1xuICogIGFuZCBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IER1cmF0aW9uIH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHR5cGUgKiBhcyBpYW0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5cbi8qKlxuICogQnVpbHQtaW4gZXZhbHVhdG9ycyBwcm92aWRlZCBieSBBbWF6b24gQmVkcm9jayBBZ2VudENvcmUuXG4gKlxuICogVGhlc2UgZXZhbHVhdG9ycyBhc3Nlc3MgZGlmZmVyZW50IGFzcGVjdHMgb2YgYWdlbnQgcGVyZm9ybWFuY2VcbiAqIGF0IHZhcmlvdXMgbGV2ZWxzIChzZXNzaW9uLCB0cmFjZSwgb3IgdG9vbCBjYWxsKS5cbiAqL1xuZXhwb3J0IGNsYXNzIEJ1aWx0aW5FdmFsdWF0b3Ige1xuICAvKipcbiAgICogRXZhbHVhdGVzIHdoZXRoZXIgdGhlIGluZm9ybWF0aW9uIGluIHRoZSBhZ2VudCdzIHJlc3BvbnNlIGlzIGZhY3R1YWxseSBhY2N1cmF0ZS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQ09SUkVDVE5FU1MgPSBuZXcgQnVpbHRpbkV2YWx1YXRvcignQnVpbHRpbi5Db3JyZWN0bmVzcycpO1xuXG4gIC8qKlxuICAgKiBFdmFsdWF0ZXMgd2hldGhlciBpbmZvcm1hdGlvbiBpbiB0aGUgcmVzcG9uc2UgaXMgc3VwcG9ydGVkIGJ5IHByb3ZpZGVkIGNvbnRleHQvc291cmNlcy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgRkFJVEhGVUxORVNTID0gbmV3IEJ1aWx0aW5FdmFsdWF0b3IoJ0J1aWx0aW4uRmFpdGhmdWxuZXNzJyk7XG5cbiAgLyoqXG4gICAqIEV2YWx1YXRlcyBmcm9tIHVzZXIncyBwZXJzcGVjdGl2ZSBob3cgdXNlZnVsIGFuZCB2YWx1YWJsZSB0aGUgYWdlbnQncyByZXNwb25zZSBpcy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgSEVMUEZVTE5FU1MgPSBuZXcgQnVpbHRpbkV2YWx1YXRvcignQnVpbHRpbi5IZWxwZnVsbmVzcycpO1xuXG4gIC8qKlxuICAgKiBFdmFsdWF0ZXMgd2hldGhlciB0aGUgcmVzcG9uc2UgYXBwcm9wcmlhdGVseSBhZGRyZXNzZXMgdGhlIHVzZXIncyBxdWVyeS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgUkVTUE9OU0VfUkVMRVZBTkNFID0gbmV3IEJ1aWx0aW5FdmFsdWF0b3IoJ0J1aWx0aW4uUmVzcG9uc2VSZWxldmFuY2UnKTtcblxuICAvKipcbiAgICogRXZhbHVhdGVzIHdoZXRoZXIgdGhlIHJlc3BvbnNlIGlzIGFwcHJvcHJpYXRlbHkgYnJpZWYgd2l0aG91dCBtaXNzaW5nIGtleSBpbmZvcm1hdGlvbi5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQ09OQ0lTRU5FU1MgPSBuZXcgQnVpbHRpbkV2YWx1YXRvcignQnVpbHRpbi5Db25jaXNlbmVzcycpO1xuXG4gIC8qKlxuICAgKiBFdmFsdWF0ZXMgd2hldGhlciB0aGUgcmVzcG9uc2UgaXMgbG9naWNhbGx5IHN0cnVjdHVyZWQgYW5kIGNvaGVyZW50LlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDT0hFUkVOQ0UgPSBuZXcgQnVpbHRpbkV2YWx1YXRvcignQnVpbHRpbi5Db2hlcmVuY2UnKTtcblxuICAvKipcbiAgICogTWVhc3VyZXMgaG93IHdlbGwgdGhlIGFnZW50IGZvbGxvd3MgdGhlIHByb3ZpZGVkIHN5c3RlbSBpbnN0cnVjdGlvbnMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IElOU1RSVUNUSU9OX0ZPTExPV0lORyA9IG5ldyBCdWlsdGluRXZhbHVhdG9yKCdCdWlsdGluLkluc3RydWN0aW9uRm9sbG93aW5nJyk7XG5cbiAgLyoqXG4gICAqIERldGVjdHMgd2hlbiBhZ2VudCBldmFkZXMgcXVlc3Rpb25zIG9yIGRpcmVjdGx5IHJlZnVzZXMgdG8gYW5zd2VyLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBSRUZVU0FMID0gbmV3IEJ1aWx0aW5FdmFsdWF0b3IoJ0J1aWx0aW4uUmVmdXNhbCcpO1xuXG4gIC8qKlxuICAgKiBFdmFsdWF0ZXMgd2hldGhlciB0aGUgY29udmVyc2F0aW9uIHN1Y2Nlc3NmdWxseSBtZWV0cyB0aGUgdXNlcidzIGdvYWxzLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBHT0FMX1NVQ0NFU1NfUkFURSA9IG5ldyBCdWlsdGluRXZhbHVhdG9yKCdCdWlsdGluLkdvYWxTdWNjZXNzUmF0ZScpO1xuXG4gIC8qKlxuICAgKiBFdmFsdWF0ZXMgd2hldGhlciB0aGUgYWdlbnQgc2VsZWN0ZWQgdGhlIGFwcHJvcHJpYXRlIHRvb2wgZm9yIHRoZSB0YXNrLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBUT09MX1NFTEVDVElPTl9BQ0NVUkFDWSA9IG5ldyBCdWlsdGluRXZhbHVhdG9yKCdCdWlsdGluLlRvb2xTZWxlY3Rpb25BY2N1cmFjeScpO1xuXG4gIC8qKlxuICAgKiBFdmFsdWF0ZXMgaG93IGFjY3VyYXRlbHkgdGhlIGFnZW50IGV4dHJhY3RzIHBhcmFtZXRlcnMgZnJvbSB1c2VyIHF1ZXJpZXMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFRPT0xfUEFSQU1FVEVSX0FDQ1VSQUNZID0gbmV3IEJ1aWx0aW5FdmFsdWF0b3IoJ0J1aWx0aW4uVG9vbFBhcmFtZXRlckFjY3VyYWN5Jyk7XG5cbiAgLyoqXG4gICAqIEV2YWx1YXRlcyB3aGV0aGVyIHRoZSByZXNwb25zZSBjb250YWlucyBoYXJtZnVsIGNvbnRlbnQuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEhBUk1GVUxORVNTID0gbmV3IEJ1aWx0aW5FdmFsdWF0b3IoJ0J1aWx0aW4uSGFybWZ1bG5lc3MnKTtcblxuICAvKipcbiAgICogRGV0ZWN0cyBjb250ZW50IHRoYXQgbWFrZXMgZ2VuZXJhbGl6YXRpb25zIGFib3V0IGluZGl2aWR1YWxzIG9yIGdyb3Vwcy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgU1RFUkVPVFlQSU5HID0gbmV3IEJ1aWx0aW5FdmFsdWF0b3IoJ0J1aWx0aW4uU3RlcmVvdHlwaW5nJyk7XG5cbiAgLyoqXG4gICAqIFRoZSBzdHJpbmcgdmFsdWUgb2YgdGhlIGJ1aWx0LWluIGV2YWx1YXRvci5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSB2YWx1ZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgZXZhbHVhdG9yIGlkZW50aWZpZXIgc3RyaW5nXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgfVxufVxuXG4vKipcbiAqIFRoZSBleGVjdXRpb24gc3RhdHVzIG9mIGFuIG9ubGluZSBldmFsdWF0aW9uIGNvbmZpZ3VyYXRpb24uXG4gKi9cbmV4cG9ydCBjbGFzcyBFeGVjdXRpb25TdGF0dXMge1xuICAvKipcbiAgICogVGhlIGV2YWx1YXRpb24gaXMgZW5hYmxlZCBhbmQgYWN0aXZlbHkgcHJvY2Vzc2luZyBhZ2VudCB0cmFjZXMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEVOQUJMRUQgPSBuZXcgRXhlY3V0aW9uU3RhdHVzKCdFTkFCTEVEJyk7XG5cbiAgLyoqXG4gICAqIFRoZSBldmFsdWF0aW9uIGlzIGRpc2FibGVkIGFuZCBub3QgcHJvY2Vzc2luZyBhZ2VudCB0cmFjZXMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IERJU0FCTEVEID0gbmV3IEV4ZWN1dGlvblN0YXR1cygnRElTQUJMRUQnKTtcblxuICAvKipcbiAgICogVGhlIHN0cmluZyB2YWx1ZSBvZiB0aGUgZXhlY3V0aW9uIHN0YXR1cy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSB2YWx1ZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgZXhlY3V0aW9uIHN0YXR1cyBzdHJpbmdcbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcih2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICB9XG59XG5cbi8qKlxuICogRmlsdGVyIG9wZXJhdG9ycyBmb3Igb25saW5lIGV2YWx1YXRpb24gZmlsdGVyaW5nLlxuICovXG5leHBvcnQgY2xhc3MgRmlsdGVyT3BlcmF0b3Ige1xuICAvKipcbiAgICogRXhhY3QgZXF1YWxpdHkgY29tcGFyaXNvbi5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgRVFVQUwgPSBuZXcgRmlsdGVyT3BlcmF0b3IoJ0VxdWFscycpO1xuXG4gIC8qKlxuICAgKiBOb3QgZXF1YWwgY29tcGFyaXNvbi5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgTk9UX0VRVUFMID0gbmV3IEZpbHRlck9wZXJhdG9yKCdOb3RFcXVhbHMnKTtcblxuICAvKipcbiAgICogR3JlYXRlciB0aGFuIGNvbXBhcmlzb24gKG51bWVyaWMgdmFsdWVzKS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgR1JFQVRFUl9USEFOID0gbmV3IEZpbHRlck9wZXJhdG9yKCdHcmVhdGVyVGhhbicpO1xuXG4gIC8qKlxuICAgKiBMZXNzIHRoYW4gY29tcGFyaXNvbiAobnVtZXJpYyB2YWx1ZXMpLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBMRVNTX1RIQU4gPSBuZXcgRmlsdGVyT3BlcmF0b3IoJ0xlc3NUaGFuJyk7XG5cbiAgLyoqXG4gICAqIEdyZWF0ZXIgdGhhbiBvciBlcXVhbCBjb21wYXJpc29uIChudW1lcmljIHZhbHVlcykuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEdSRUFURVJfVEhBTl9PUl9FUVVBTCA9IG5ldyBGaWx0ZXJPcGVyYXRvcignR3JlYXRlclRoYW5PckVxdWFsJyk7XG5cbiAgLyoqXG4gICAqIExlc3MgdGhhbiBvciBlcXVhbCBjb21wYXJpc29uIChudW1lcmljIHZhbHVlcykuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IExFU1NfVEhBTl9PUl9FUVVBTCA9IG5ldyBGaWx0ZXJPcGVyYXRvcignTGVzc1RoYW5PckVxdWFsJyk7XG5cbiAgLyoqXG4gICAqIFN0cmluZyBjb250YWlucyBjb21wYXJpc29uLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDT05UQUlOUyA9IG5ldyBGaWx0ZXJPcGVyYXRvcignQ29udGFpbnMnKTtcblxuICAvKipcbiAgICogU3RyaW5nIGRvZXMgbm90IGNvbnRhaW4gY29tcGFyaXNvbi5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgTk9UX0NPTlRBSU5TID0gbmV3IEZpbHRlck9wZXJhdG9yKCdOb3RDb250YWlucycpO1xuXG4gIC8qKlxuICAgKiBUaGUgc3RyaW5nIHZhbHVlIG9mIHRoZSBmaWx0ZXIgb3BlcmF0b3IuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgdmFsdWU6IHN0cmluZztcblxuICAvKipcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIGZpbHRlciBvcGVyYXRvciBzdHJpbmdcbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcih2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICB9XG59XG5cbi8qKlxuICogQSB0eXBlZCBmaWx0ZXIgdmFsdWUgZm9yIG9ubGluZSBldmFsdWF0aW9uIGZpbHRlcmluZy5cbiAqXG4gKiBVc2UgdGhlIHN0YXRpYyBmYWN0b3J5IG1ldGhvZHMgdG8gY3JlYXRlIGZpbHRlciB2YWx1ZXM6XG4gKiAtIGBGaWx0ZXJWYWx1ZS5zdHJpbmcoKWAgZm9yIHN0cmluZyBjb21wYXJpc29uc1xuICogLSBgRmlsdGVyVmFsdWUubnVtYmVyKClgIGZvciBudW1lcmljIGNvbXBhcmlzb25zXG4gKiAtIGBGaWx0ZXJWYWx1ZS5ib29sZWFuKClgIGZvciBib29sZWFuIGNvbXBhcmlzb25zXG4gKi9cbmV4cG9ydCBjbGFzcyBGaWx0ZXJWYWx1ZSB7XG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgc3RyaW5nIGZpbHRlciB2YWx1ZS5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHN0cmluZyB2YWx1ZSB0byBjb21wYXJlIGFnYWluc3RcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgc3RyaW5nKHZhbHVlOiBzdHJpbmcpOiBGaWx0ZXJWYWx1ZSB7XG4gICAgcmV0dXJuIG5ldyBGaWx0ZXJWYWx1ZSh7IHN0cmluZ1ZhbHVlOiB2YWx1ZSB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbnVtZXJpYyBmaWx0ZXIgdmFsdWUuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSBudW1lcmljIHZhbHVlIHRvIGNvbXBhcmUgYWdhaW5zdFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBudW1iZXIodmFsdWU6IG51bWJlcik6IEZpbHRlclZhbHVlIHtcbiAgICByZXR1cm4gbmV3IEZpbHRlclZhbHVlKHsgZG91YmxlVmFsdWU6IHZhbHVlIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBib29sZWFuIGZpbHRlciB2YWx1ZS5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIGJvb2xlYW4gdmFsdWUgdG8gY29tcGFyZSBhZ2FpbnN0XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGJvb2xlYW4odmFsdWU6IGJvb2xlYW4pOiBGaWx0ZXJWYWx1ZSB7XG4gICAgcmV0dXJuIG5ldyBGaWx0ZXJWYWx1ZSh7IGJvb2xlYW5WYWx1ZTogdmFsdWUgfSk7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IGZpbHRlclZhbHVlOiB7IHN0cmluZ1ZhbHVlPzogc3RyaW5nOyBkb3VibGVWYWx1ZT86IG51bWJlcjsgYm9vbGVhblZhbHVlPzogYm9vbGVhbiB9O1xuXG4gIHByaXZhdGUgY29uc3RydWN0b3IoZmlsdGVyVmFsdWU6IHsgc3RyaW5nVmFsdWU/OiBzdHJpbmc7IGRvdWJsZVZhbHVlPzogbnVtYmVyOyBib29sZWFuVmFsdWU/OiBib29sZWFuIH0pIHtcbiAgICB0aGlzLmZpbHRlclZhbHVlID0gZmlsdGVyVmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogQmluZHMgdGhlIGZpbHRlciB2YWx1ZSB0byBwcm9kdWNlIHRoZSBMMSBwcm9wZXJ0eS5cbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgX2JpbmQoKTogeyBzdHJpbmdWYWx1ZT86IHN0cmluZzsgZG91YmxlVmFsdWU/OiBudW1iZXI7IGJvb2xlYW5WYWx1ZT86IGJvb2xlYW4gfSB7XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyVmFsdWU7XG4gIH1cbn1cblxuLyoqXG4gKiBGaWx0ZXIgY29uZmlndXJhdGlvbiBmb3Igb25saW5lIGV2YWx1YXRpb24uXG4gKlxuICogRmlsdGVycyBkZXRlcm1pbmUgd2hpY2ggYWdlbnQgdHJhY2VzIHNob3VsZCBiZSBpbmNsdWRlZCBpbiB0aGUgZXZhbHVhdGlvblxuICogYmFzZWQgb24gdHJhY2UgcHJvcGVydGllcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBGaWx0ZXJDb25maWcge1xuICAvKipcbiAgICogVGhlIGtleSBvciBmaWVsZCBuYW1lIHRvIGZpbHRlciBvbiB3aXRoaW4gdGhlIGFnZW50IHRyYWNlIGRhdGEuXG4gICAqXG4gICAqIEBleGFtcGxlICd1c2VyLnJlZ2lvbidcbiAgICovXG4gIHJlYWRvbmx5IGtleTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgY29tcGFyaXNvbiBvcGVyYXRvciB0byB1c2UgZm9yIGZpbHRlcmluZy5cbiAgICovXG4gIHJlYWRvbmx5IG9wZXJhdG9yOiBGaWx0ZXJPcGVyYXRvcjtcblxuICAvKipcbiAgICogVGhlIHZhbHVlIHRvIGNvbXBhcmUgYWdhaW5zdCB1c2luZyB0aGUgc3BlY2lmaWVkIG9wZXJhdG9yLlxuICAgKlxuICAgKiBVc2UgYEZpbHRlclZhbHVlLnN0cmluZygpYCwgYEZpbHRlclZhbHVlLm51bWJlcigpYCwgb3IgYEZpbHRlclZhbHVlLmJvb2xlYW4oKWBcbiAgICogdG8gY3JlYXRlIHR5cGVkIGZpbHRlciB2YWx1ZXMuXG4gICAqL1xuICByZWFkb25seSB2YWx1ZTogRmlsdGVyVmFsdWU7XG59XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBmb3IgQ2xvdWRXYXRjaCBMb2dzIGRhdGEgc291cmNlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENsb3VkV2F0Y2hMb2dzRGF0YVNvdXJjZUNvbmZpZyB7XG4gIC8qKlxuICAgKiBUaGUgbGlzdCBvZiBDbG91ZFdhdGNoIGxvZyBncm91cCBuYW1lcyB0byBtb25pdG9yIGZvciBhZ2VudCB0cmFjZXMuXG4gICAqXG4gICAqIEBtaW5pbXVtIDFcbiAgICogQG1heGltdW0gNVxuICAgKi9cbiAgcmVhZG9ubHkgbG9nR3JvdXBOYW1lczogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFRoZSBsaXN0IG9mIHNlcnZpY2UgbmFtZXMgdG8gZmlsdGVyIHRyYWNlcyB3aXRoaW4gdGhlIHNwZWNpZmllZCBsb2cgZ3JvdXBzLlxuICAgKiBVc2VkIHRvIGlkZW50aWZ5IHJlbGV2YW50IGFnZW50IHNlc3Npb25zLlxuICAgKlxuICAgKiBGb3IgYWdlbnRzIGhvc3RlZCBvbiBBZ2VudENvcmUgUnVudGltZSwgc2VydmljZSBuYW1lIGZvbGxvd3MgdGhlIGZvcm1hdDpcbiAgICogYDxhZ2VudC1ydW50aW1lLW5hbWU+LjxhZ2VudC1ydW50aW1lLWVuZHBvaW50LW5hbWU+YFxuICAgKlxuICAgKiBAbWluaW11bSAxXG4gICAqIEBtYXhpbXVtIDFcbiAgICovXG4gIHJlYWRvbmx5IHNlcnZpY2VOYW1lczogc3RyaW5nW107XG59XG5cbi8qKlxuICogQmFzZSBwcm9wZXJ0aWVzIGZvciBjcmVhdGluZyBhbiBPbmxpbmVFdmFsdWF0aW9uQ29uZmlnLlxuICogVGhlIGFjdHVhbCBPbmxpbmVFdmFsdWF0aW9uUHJvcHMgaXMgZGVmaW5lZCBpbiBvbmxpbmUtZXZhbHVhdGlvbi1jb25maWcudHNcbiAqIHRvIGF2b2lkIGNpcmN1bGFyIGRlcGVuZGVuY2llcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBPbmxpbmVFdmFsdWF0aW9uQmFzZVByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBvbmxpbmUgZXZhbHVhdGlvbiBjb25maWd1cmF0aW9uLlxuICAgKlxuICAgKiBNdXN0IGJlIHVuaXF1ZSB3aXRoaW4geW91ciBhY2NvdW50LiBWYWxpZCBjaGFyYWN0ZXJzIGFyZSBhLXosIEEtWiwgMC05LCBfICh1bmRlcnNjb3JlKS5cbiAgICogTXVzdCBzdGFydCB3aXRoIGEgbGV0dGVyIGFuZCBjYW4gYmUgdXAgdG8gNDggY2hhcmFjdGVycyBsb25nLlxuICAgKlxuICAgKiBAcGF0dGVybiBeW2EtekEtWl1bYS16QS1aMC05X117MCw0N30kXG4gICAqL1xuICByZWFkb25seSBvbmxpbmVFdmFsdWF0aW9uQ29uZmlnTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgSUFNIHJvbGUgdGhhdCBwcm92aWRlcyBwZXJtaXNzaW9ucyBmb3IgdGhlIGV2YWx1YXRpb24gdG8gYWNjZXNzIEFXUyBzZXJ2aWNlcy5cbiAgICpcbiAgICogSWYgbm90IHByb3ZpZGVkLCBhIHJvbGUgd2lsbCBiZSBjcmVhdGVkIGF1dG9tYXRpY2FsbHkgd2l0aCB0aGUgcmVxdWlyZWQgcGVybWlzc2lvbnNcbiAgICogaW5jbHVkaW5nIGNyb3NzLXJlZ2lvbiBCZWRyb2NrIG1vZGVsIGludm9jYXRpb24gKHRvIHN1cHBvcnQgY3Jvc3MtcmVnaW9uIGluZmVyZW5jZVxuICAgKiBwcm9maWxlcykuIEZvciBzdHJpY3QgY29zdCBjb250cm9scyBvciBkYXRhIHJlc2lkZW5jeSBjb21wbGlhbmNlLCBwcm92aWRlIGEgY3VzdG9tXG4gICAqIHJvbGUgd2l0aCByZWdpb24tc2NvcGVkIHBlcm1pc3Npb25zLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIEEgbmV3IHJvbGUgd2lsbCBiZSBjcmVhdGVkXG4gICAqL1xuICByZWFkb25seSBleGVjdXRpb25Sb2xlPzogaWFtLklSb2xlO1xuXG4gIC8qKlxuICAgKiBUaGUgZGVzY3JpcHRpb24gb2YgdGhlIG9ubGluZSBldmFsdWF0aW9uIGNvbmZpZ3VyYXRpb24uXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm8gZGVzY3JpcHRpb25cbiAgICogQG1heExlbmd0aCAyMDBcbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgcGVyY2VudGFnZSBvZiBhZ2VudCB0cmFjZXMgdG8gc2FtcGxlIGZvciBldmFsdWF0aW9uLlxuICAgKlxuICAgKiBAZGVmYXVsdCAxMFxuICAgKiBAbWluaW11bSAwLjAxXG4gICAqIEBtYXhpbXVtIDEwMFxuICAgKi9cbiAgcmVhZG9ubHkgc2FtcGxpbmdQZXJjZW50YWdlPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgbGlzdCBvZiBmaWx0ZXJzIHRoYXQgZGV0ZXJtaW5lIHdoaWNoIGFnZW50IHRyYWNlcyBzaG91bGQgYmUgZXZhbHVhdGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIE5vIGZpbHRlcnMgKGV2YWx1YXRlIGFsbCBzYW1wbGVkIHRyYWNlcylcbiAgICogQG1heGltdW0gNVxuICAgKi9cbiAgcmVhZG9ubHkgZmlsdGVycz86IEZpbHRlckNvbmZpZ1tdO1xuXG4gIC8qKlxuICAgKiBUaGUgZHVyYXRpb24gb2YgaW5hY3Rpdml0eSBhZnRlciB3aGljaCBhbiBhZ2VudCBzZXNzaW9uXG4gICAqIGlzIGNvbnNpZGVyZWQgY29tcGxldGUgYW5kIHJlYWR5IGZvciBldmFsdWF0aW9uLlxuICAgKlxuICAgKiBNdXN0IGJlIGJldHdlZW4gMSBtaW51dGUgYW5kIDE0NDAgbWludXRlcyAoMjQgaG91cnMpLlxuICAgKlxuICAgKiBAZGVmYXVsdCBEdXJhdGlvbi5taW51dGVzKDE1KVxuICAgKi9cbiAgcmVhZG9ubHkgc2Vzc2lvblRpbWVvdXQ/OiBEdXJhdGlvbjtcblxuICAvKipcbiAgICogVGhlIGV4ZWN1dGlvbiBzdGF0dXMgb2YgdGhlIG9ubGluZSBldmFsdWF0aW9uIGNvbmZpZ3VyYXRpb24uXG4gICAqXG4gICAqIENvbnRyb2xzIHdoZXRoZXIgdGhlIGV2YWx1YXRpb24gYWN0aXZlbHkgcHJvY2Vzc2VzIGFnZW50IHRyYWNlcy5cbiAgICpcbiAgICogQGRlZmF1bHQgRXhlY3V0aW9uU3RhdHVzLkVOQUJMRURcbiAgICovXG4gIHJlYWRvbmx5IGV4ZWN1dGlvblN0YXR1cz86IEV4ZWN1dGlvblN0YXR1cztcbn1cblxuLyoqXG4gKiBUaGUgcmVzdWx0IG9mIGJpbmRpbmcgYW4gRXZhbHVhdG9yUmVmZXJlbmNlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEV2YWx1YXRvclJlZmVyZW5jZUJpbmRSZXN1bHQge1xuICAvKipcbiAgICogVGhlIGV2YWx1YXRvciBpZGVudGlmaWVyLlxuICAgKi9cbiAgcmVhZG9ubHkgZXZhbHVhdG9ySWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBUaGUgcmVzdWx0IG9mIGJpbmRpbmcgYSBEYXRhU291cmNlQ29uZmlnLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERhdGFTb3VyY2VDb25maWdCaW5kUmVzdWx0IHtcbiAgLyoqXG4gICAqIFRoZSBDbG91ZFdhdGNoIExvZ3MgZGF0YSBzb3VyY2UgY29uZmlndXJhdGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IGNsb3VkV2F0Y2hMb2dzOiBDbG91ZFdhdGNoTG9nc0RhdGFTb3VyY2VDb25maWc7XG59XG5cbi8qKlxuICogVGhlIGxldmVsIGF0IHdoaWNoIGEgY3VzdG9tIGV2YWx1YXRvciBhc3Nlc3NlcyBhZ2VudCBwZXJmb3JtYW5jZS5cbiAqXG4gKiBEZXRlcm1pbmVzIHdoYXQgZ3JhbnVsYXJpdHkgb2YgZGF0YSB0aGUgZXZhbHVhdG9yIG9wZXJhdGVzIG9uLlxuICovXG5leHBvcnQgY2xhc3MgRXZhbHVhdGlvbkxldmVsIHtcbiAgLyoqXG4gICAqIEV2YWx1YXRlcyBpbmRpdmlkdWFsIHRvb2wgY2FsbCBpbnZvY2F0aW9ucyB3aXRoaW4gYSB0cmFjZS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgVE9PTF9DQUxMID0gbmV3IEV2YWx1YXRpb25MZXZlbCgnVE9PTF9DQUxMJyk7XG5cbiAgLyoqXG4gICAqIEV2YWx1YXRlcyBhIGNvbXBsZXRlIGFnZW50IHRyYWNlIChhIHNpbmdsZSByZXF1ZXN0LXJlc3BvbnNlIGN5Y2xlKS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgVFJBQ0UgPSBuZXcgRXZhbHVhdGlvbkxldmVsKCdUUkFDRScpO1xuXG4gIC8qKlxuICAgKiBFdmFsdWF0ZXMgYW4gZW50aXJlIGFnZW50IHNlc3Npb24gKG11bHRpcGxlIHRyYWNlcyBhY3Jvc3MgYSBjb252ZXJzYXRpb24pLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBTRVNTSU9OID0gbmV3IEV2YWx1YXRpb25MZXZlbCgnU0VTU0lPTicpO1xuXG4gIC8qKlxuICAgKiBUaGUgc3RyaW5nIHZhbHVlIG9mIHRoZSBldmFsdWF0aW9uIGxldmVsLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHZhbHVlOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSBldmFsdWF0aW9uIGxldmVsIHN0cmluZ1xuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gIH1cbn1cblxuLyoqXG4gKiBBIGNhdGVnb3JpY2FsIHJhdGluZyBzY2FsZSBvcHRpb24gZm9yIGN1c3RvbSBldmFsdWF0b3JzLlxuICpcbiAqIENhdGVnb3JpY2FsIHNjYWxlcyBkZWZpbmUgZGlzY3JldGUgbGFiZWxzIGZvciBzY29yaW5nIGFnZW50IHBlcmZvcm1hbmNlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENhdGVnb3JpY2FsUmF0aW5nT3B0aW9uIHtcbiAgLyoqXG4gICAqIFRoZSBsYWJlbCBmb3IgdGhpcyByYXRpbmcgb3B0aW9uLlxuICAgKlxuICAgKiBAZXhhbXBsZSAnR29vZCdcbiAgICovXG4gIHJlYWRvbmx5IGxhYmVsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBkZXNjcmlwdGlvbiB0aGF0IGV4cGxhaW5zIHdoYXQgdGhpcyByYXRpbmcgcmVwcmVzZW50cy5cbiAgICpcbiAgICogQGV4YW1wbGUgJ1RoZSByZXNwb25zZSBmdWxseSBhZGRyZXNzZXMgdGhlIHVzZXIgcXVlcnkgd2l0aCBhY2N1cmF0ZSBpbmZvcm1hdGlvbi4nXG4gICAqL1xuICByZWFkb25seSBkZWZpbml0aW9uOiBzdHJpbmc7XG59XG5cbi8qKlxuICogQSBudW1lcmljYWwgcmF0aW5nIHNjYWxlIG9wdGlvbiBmb3IgY3VzdG9tIGV2YWx1YXRvcnMuXG4gKlxuICogTnVtZXJpY2FsIHNjYWxlcyBkZWZpbmUgbGFiZWxlZCBudW1lcmljIHZhbHVlcyBmb3Igc2NvcmluZyBhZ2VudCBwZXJmb3JtYW5jZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOdW1lcmljYWxSYXRpbmdPcHRpb24ge1xuICAvKipcbiAgICogVGhlIGxhYmVsIGZvciB0aGlzIHJhdGluZyBvcHRpb24uXG4gICAqXG4gICAqIEBleGFtcGxlICdFeGNlbGxlbnQnXG4gICAqL1xuICByZWFkb25seSBsYWJlbDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgZGVzY3JpcHRpb24gdGhhdCBleHBsYWlucyB3aGF0IHRoaXMgbnVtZXJpY2FsIHJhdGluZyByZXByZXNlbnRzLlxuICAgKlxuICAgKiBAZXhhbXBsZSAnVGhlIHJlc3BvbnNlIGlzIGNvbXByZWhlbnNpdmUsIGFjY3VyYXRlLCBhbmQgd2VsbC1zdHJ1Y3R1cmVkLidcbiAgICovXG4gIHJlYWRvbmx5IGRlZmluaXRpb246IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG51bWVyaWNhbCB2YWx1ZSBmb3IgdGhpcyByYXRpbmcgc2NhbGUgb3B0aW9uLlxuICAgKlxuICAgKiBAZXhhbXBsZSA1XG4gICAqL1xuICByZWFkb25seSB2YWx1ZTogbnVtYmVyO1xufVxuXG4vKipcbiAqIEluZmVyZW5jZSBjb25maWd1cmF0aW9uIGZvciBhIGN1c3RvbSBMTE0tYXMtYS1KdWRnZSBldmFsdWF0b3IuXG4gKlxuICogQ29udHJvbHMgaG93IHRoZSBmb3VuZGF0aW9uIG1vZGVsIGdlbmVyYXRlcyBldmFsdWF0aW9uIHJlc3BvbnNlcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFdmFsdWF0b3JJbmZlcmVuY2VDb25maWcge1xuICAvKipcbiAgICogVGhlIG1heGltdW0gbnVtYmVyIG9mIHRva2VucyB0byBnZW5lcmF0ZSBpbiB0aGUgbW9kZWwgcmVzcG9uc2UuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gVGhlIGZvdW5kYXRpb24gbW9kZWwncyBkZWZhdWx0IG1heGltdW0gdG9rZW4gbGltaXQgaXMgdXNlZFxuICAgKi9cbiAgcmVhZG9ubHkgbWF4VG9rZW5zPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgdGVtcGVyYXR1cmUgdmFsdWUgdGhhdCBjb250cm9scyByYW5kb21uZXNzIGluIHRoZSBtb2RlbCdzIHJlc3BvbnNlcy5cbiAgICpcbiAgICogSGlnaGVyIHZhbHVlcyBwcm9kdWNlIG1vcmUgZGl2ZXJzZSBvdXRwdXRzLiBSYW5nZTogMC4wIHRvIDEuMC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBUaGUgZm91bmRhdGlvbiBtb2RlbCdzIGRlZmF1bHQgdGVtcGVyYXR1cmUgaXMgdXNlZFxuICAgKi9cbiAgcmVhZG9ubHkgdGVtcGVyYXR1cmU/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSB0b3AtcCBzYW1wbGluZyBwYXJhbWV0ZXIgdGhhdCBjb250cm9scyB0aGUgZGl2ZXJzaXR5IG9mIHRoZSBtb2RlbCdzIHJlc3BvbnNlcy5cbiAgICpcbiAgICogUmFuZ2U6IDAuMCB0byAxLjAuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gVGhlIGZvdW5kYXRpb24gbW9kZWwncyBkZWZhdWx0IHRvcC1wIHZhbHVlIGlzIHVzZWRcbiAgICovXG4gIHJlYWRvbmx5IHRvcFA/OiBudW1iZXI7XG59XG5cbi8qKlxuICogQXR0cmlidXRlcyBmb3IgaW1wb3J0aW5nIGFuIGV4aXN0aW5nIEV2YWx1YXRvci5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFdmFsdWF0b3JBdHRyaWJ1dGVzIHtcbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIGV2YWx1YXRvci5cbiAgICovXG4gIHJlYWRvbmx5IGV2YWx1YXRvckFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgSUQgb2YgdGhlIGV2YWx1YXRvci5cbiAgICovXG4gIHJlYWRvbmx5IGV2YWx1YXRvcklkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBldmFsdWF0b3IuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm8gbmFtZSBhdmFpbGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGV2YWx1YXRvck5hbWU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQXR0cmlidXRlcyBmb3IgaW1wb3J0aW5nIGFuIGV4aXN0aW5nIE9ubGluZUV2YWx1YXRpb25Db25maWcuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgT25saW5lRXZhbHVhdGlvbkNvbmZpZ0F0dHJpYnV0ZXMge1xuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgb25saW5lIGV2YWx1YXRpb24gY29uZmlndXJhdGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IG9ubGluZUV2YWx1YXRpb25Db25maWdBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIElEIG9mIHRoZSBvbmxpbmUgZXZhbHVhdGlvbiBjb25maWd1cmF0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgb25saW5lRXZhbHVhdGlvbkNvbmZpZ0lkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBvbmxpbmUgZXZhbHVhdGlvbiBjb25maWd1cmF0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgb25saW5lRXZhbHVhdGlvbkNvbmZpZ05hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgSUFNIGV4ZWN1dGlvbiByb2xlLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIE5vIHJvbGUgQVJOIHByb3ZpZGVkXG4gICAqL1xuICByZWFkb25seSBleGVjdXRpb25Sb2xlQXJuPzogc3RyaW5nO1xufVxuIl19
|
|
298
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ0eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQWdCQTs7Ozs7O0dBTUc7QUFDSCxNQUFhLGdCQUFnQjs7SUFDM0I7O09BRUc7SUFDSSxNQUFNLENBQVUsV0FBVyxHQUFHLElBQUksZ0JBQWdCLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUVqRjs7T0FFRztJQUNJLE1BQU0sQ0FBVSxZQUFZLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0lBRW5GOztPQUVHO0lBQ0ksTUFBTSxDQUFVLFdBQVcsR0FBRyxJQUFJLGdCQUFnQixDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFFakY7O09BRUc7SUFDSSxNQUFNLENBQVUsa0JBQWtCLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO0lBRTlGOztPQUVHO0lBQ0ksTUFBTSxDQUFVLFdBQVcsR0FBRyxJQUFJLGdCQUFnQixDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFFakY7O09BRUc7SUFDSSxNQUFNLENBQVUsU0FBUyxHQUFHLElBQUksZ0JBQWdCLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUU3RTs7T0FFRztJQUNJLE1BQU0sQ0FBVSxxQkFBcUIsR0FBRyxJQUFJLGdCQUFnQixDQUFDLDhCQUE4QixDQUFDLENBQUM7SUFFcEc7O09BRUc7SUFDSSxNQUFNLENBQVUsT0FBTyxHQUFHLElBQUksZ0JBQWdCLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUV6RTs7T0FFRztJQUNJLE1BQU0sQ0FBVSxpQkFBaUIsR0FBRyxJQUFJLGdCQUFnQixDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFFM0Y7O09BRUc7SUFDSSxNQUFNLENBQVUsdUJBQXVCLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO0lBRXZHOztPQUVHO0lBQ0ksTUFBTSxDQUFVLHVCQUF1QixHQUFHLElBQUksZ0JBQWdC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SUFBSSxDQUFDLFdBQVcsQ0FBQztLQUN6Qjs7QUF4Q0gsa0NBeUNDO0FBeUpEOzs7OztHQUtHO0FBQ0gsTUFBYSxlQUFlOztJQUMxQjs7T0FFRztJQUNJLE1BQU0sQ0FBVSxTQUFTLEdBQUcsSUFBSSxlQUFlLENBQUMsV0FBVyxDQUFDLENBQUM7SUFFcEU7O09BRUc7SUFDSSxNQUFNLENBQVUsS0FBSyxHQUFHLElBQUksZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRTVEOztPQUVHO0lBQ0ksTUFBTSxDQUFVLE9BQU8sR0FBRyxJQUFJLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUVoRTs7T0FFRztJQUNhLEtBQUssQ0FBUztJQUU5Qjs7T0FFRztJQUNILFlBQW1CLEtBQWE7Ozs7OzsrQ0F4QnJCLGVBQWU7Ozs7UUF5QnhCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0tBQ3BCOztBQTFCSCwwQ0EyQkMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqICBDb3B5cmlnaHQgQW1hem9uLmNvbSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKS4gWW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuICogIHdpdGggdGhlIExpY2Vuc2UuIEEgY29weSBvZiB0aGUgTGljZW5zZSBpcyBsb2NhdGVkIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiAgb3IgaW4gdGhlICdsaWNlbnNlJyBmaWxlIGFjY29tcGFueWluZyB0aGlzIGZpbGUuIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAnQVMgSVMnIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVNcbiAqICBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9uc1xuICogIGFuZCBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IER1cmF0aW9uIH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHR5cGUgKiBhcyBpYW0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5cbi8qKlxuICogQnVpbHQtaW4gZXZhbHVhdG9ycyBwcm92aWRlZCBieSBBbWF6b24gQmVkcm9jayBBZ2VudENvcmUuXG4gKlxuICogVGhlc2UgZXZhbHVhdG9ycyBhc3Nlc3MgZGlmZmVyZW50IGFzcGVjdHMgb2YgYWdlbnQgcGVyZm9ybWFuY2VcbiAqIGF0IHZhcmlvdXMgbGV2ZWxzIChzZXNzaW9uLCB0cmFjZSwgb3IgdG9vbCBjYWxsKS5cbiAqIEBkZXByZWNhdGVkIFVzZSB0aGUgZXF1aXZhbGVudCBjb25zdHJ1Y3QgZnJvbSBgYXdzLWNkay1saWIvYXdzLWJlZHJvY2thZ2VudGNvcmVgIGluc3RlYWQuXG4gKi9cbmV4cG9ydCBjbGFzcyBCdWlsdGluRXZhbHVhdG9yIHtcbiAgLyoqXG4gICAqIEV2YWx1YXRlcyB3aGV0aGVyIHRoZSBpbmZvcm1hdGlvbiBpbiB0aGUgYWdlbnQncyByZXNwb25zZSBpcyBmYWN0dWFsbHkgYWNjdXJhdGUuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IENPUlJFQ1RORVNTID0gbmV3IEJ1aWx0aW5FdmFsdWF0b3IoJ0J1aWx0aW4uQ29ycmVjdG5lc3MnKTtcblxuICAvKipcbiAgICogRXZhbHVhdGVzIHdoZXRoZXIgaW5mb3JtYXRpb24gaW4gdGhlIHJlc3BvbnNlIGlzIHN1cHBvcnRlZCBieSBwcm92aWRlZCBjb250ZXh0L3NvdXJjZXMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEZBSVRIRlVMTkVTUyA9IG5ldyBCdWlsdGluRXZhbHVhdG9yKCdCdWlsdGluLkZhaXRoZnVsbmVzcycpO1xuXG4gIC8qKlxuICAgKiBFdmFsdWF0ZXMgZnJvbSB1c2VyJ3MgcGVyc3BlY3RpdmUgaG93IHVzZWZ1bCBhbmQgdmFsdWFibGUgdGhlIGFnZW50J3MgcmVzcG9uc2UgaXMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEhFTFBGVUxORVNTID0gbmV3IEJ1aWx0aW5FdmFsdWF0b3IoJ0J1aWx0aW4uSGVscGZ1bG5lc3MnKTtcblxuICAvKipcbiAgICogRXZhbHVhdGVzIHdoZXRoZXIgdGhlIHJlc3BvbnNlIGFwcHJvcHJpYXRlbHkgYWRkcmVzc2VzIHRoZSB1c2VyJ3MgcXVlcnkuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFJFU1BPTlNFX1JFTEVWQU5DRSA9IG5ldyBCdWlsdGluRXZhbHVhdG9yKCdCdWlsdGluLlJlc3BvbnNlUmVsZXZhbmNlJyk7XG5cbiAgLyoqXG4gICAqIEV2YWx1YXRlcyB3aGV0aGVyIHRoZSByZXNwb25zZSBpcyBhcHByb3ByaWF0ZWx5IGJyaWVmIHdpdGhvdXQgbWlzc2luZyBrZXkgaW5mb3JtYXRpb24uXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IENPTkNJU0VORVNTID0gbmV3IEJ1aWx0aW5FdmFsdWF0b3IoJ0J1aWx0aW4uQ29uY2lzZW5lc3MnKTtcblxuICAvKipcbiAgICogRXZhbHVhdGVzIHdoZXRoZXIgdGhlIHJlc3BvbnNlIGlzIGxvZ2ljYWxseSBzdHJ1Y3R1cmVkIGFuZCBjb2hlcmVudC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQ09IRVJFTkNFID0gbmV3IEJ1aWx0aW5FdmFsdWF0b3IoJ0J1aWx0aW4uQ29oZXJlbmNlJyk7XG5cbiAgLyoqXG4gICAqIE1lYXN1cmVzIGhvdyB3ZWxsIHRoZSBhZ2VudCBmb2xsb3dzIHRoZSBwcm92aWRlZCBzeXN0ZW0gaW5zdHJ1Y3Rpb25zLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBJTlNUUlVDVElPTl9GT0xMT1dJTkcgPSBuZXcgQnVpbHRpbkV2YWx1YXRvcignQnVpbHRpbi5JbnN0cnVjdGlvbkZvbGxvd2luZycpO1xuXG4gIC8qKlxuICAgKiBEZXRlY3RzIHdoZW4gYWdlbnQgZXZhZGVzIHF1ZXN0aW9ucyBvciBkaXJlY3RseSByZWZ1c2VzIHRvIGFuc3dlci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgUkVGVVNBTCA9IG5ldyBCdWlsdGluRXZhbHVhdG9yKCdCdWlsdGluLlJlZnVzYWwnKTtcblxuICAvKipcbiAgICogRXZhbHVhdGVzIHdoZXRoZXIgdGhlIGNvbnZlcnNhdGlvbiBzdWNjZXNzZnVsbHkgbWVldHMgdGhlIHVzZXIncyBnb2Fscy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgR09BTF9TVUNDRVNTX1JBVEUgPSBuZXcgQnVpbHRpbkV2YWx1YXRvcignQnVpbHRpbi5Hb2FsU3VjY2Vzc1JhdGUnKTtcblxuICAvKipcbiAgICogRXZhbHVhdGVzIHdoZXRoZXIgdGhlIGFnZW50IHNlbGVjdGVkIHRoZSBhcHByb3ByaWF0ZSB0b29sIGZvciB0aGUgdGFzay5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgVE9PTF9TRUxFQ1RJT05fQUNDVVJBQ1kgPSBuZXcgQnVpbHRpbkV2YWx1YXRvcignQnVpbHRpbi5Ub29sU2VsZWN0aW9uQWNjdXJhY3knKTtcblxuICAvKipcbiAgICogRXZhbHVhdGVzIGhvdyBhY2N1cmF0ZWx5IHRoZSBhZ2VudCBleHRyYWN0cyBwYXJhbWV0ZXJzIGZyb20gdXNlciBxdWVyaWVzLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBUT09MX1BBUkFNRVRFUl9BQ0NVUkFDWSA9IG5ldyBCdWlsdGluRXZhbHVhdG9yKCdCdWlsdGluLlRvb2xQYXJhbWV0ZXJBY2N1cmFjeScpO1xuXG4gIC8qKlxuICAgKiBFdmFsdWF0ZXMgd2hldGhlciB0aGUgcmVzcG9uc2UgY29udGFpbnMgaGFybWZ1bCBjb250ZW50LlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBIQVJNRlVMTkVTUyA9IG5ldyBCdWlsdGluRXZhbHVhdG9yKCdCdWlsdGluLkhhcm1mdWxuZXNzJyk7XG5cbiAgLyoqXG4gICAqIERldGVjdHMgY29udGVudCB0aGF0IG1ha2VzIGdlbmVyYWxpemF0aW9ucyBhYm91dCBpbmRpdmlkdWFscyBvciBncm91cHMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFNURVJFT1RZUElORyA9IG5ldyBCdWlsdGluRXZhbHVhdG9yKCdCdWlsdGluLlN0ZXJlb3R5cGluZycpO1xuXG4gIC8qKlxuICAgKiBUaGUgc3RyaW5nIHZhbHVlIG9mIHRoZSBidWlsdC1pbiBldmFsdWF0b3IuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgdmFsdWU6IHN0cmluZztcblxuICAvKipcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIGV2YWx1YXRvciBpZGVudGlmaWVyIHN0cmluZ1xuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gIH1cbn1cblxuLyoqXG4gKiBUaGUgZXhlY3V0aW9uIHN0YXR1cyBvZiBhbiBvbmxpbmUgZXZhbHVhdGlvbiBjb25maWd1cmF0aW9uLlxuICogQGRlcHJlY2F0ZWQgVXNlIHRoZSBlcXVpdmFsZW50IGNvbnN0cnVjdCBmcm9tIGBhd3MtY2RrLWxpYi9hd3MtYmVkcm9ja2FnZW50Y29yZWAgaW5zdGVhZC5cbiAqL1xuZXhwb3J0IGNsYXNzIEV4ZWN1dGlvblN0YXR1cyB7XG4gIC8qKlxuICAgKiBUaGUgZXZhbHVhdGlvbiBpcyBlbmFibGVkIGFuZCBhY3RpdmVseSBwcm9jZXNzaW5nIGFnZW50IHRyYWNlcy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgRU5BQkxFRCA9IG5ldyBFeGVjdXRpb25TdGF0dXMoJ0VOQUJMRUQnKTtcblxuICAvKipcbiAgICogVGhlIGV2YWx1YXRpb24gaXMgZGlzYWJsZWQgYW5kIG5vdCBwcm9jZXNzaW5nIGFnZW50IHRyYWNlcy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgRElTQUJMRUQgPSBuZXcgRXhlY3V0aW9uU3RhdHVzKCdESVNBQkxFRCcpO1xuXG4gIC8qKlxuICAgKiBUaGUgc3RyaW5nIHZhbHVlIG9mIHRoZSBleGVjdXRpb24gc3RhdHVzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHZhbHVlOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSBleGVjdXRpb24gc3RhdHVzIHN0cmluZ1xuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gIH1cbn1cblxuLyoqXG4gKiBGaWx0ZXIgb3BlcmF0b3JzIGZvciBvbmxpbmUgZXZhbHVhdGlvbiBmaWx0ZXJpbmcuXG4gKiBAZGVwcmVjYXRlZCBVc2UgdGhlIGVxdWl2YWxlbnQgY29uc3RydWN0IGZyb20gYGF3cy1jZGstbGliL2F3cy1iZWRyb2NrYWdlbnRjb3JlYCBpbnN0ZWFkLlxuICovXG5leHBvcnQgY2xhc3MgRmlsdGVyT3BlcmF0b3Ige1xuICAvKipcbiAgICogRXhhY3QgZXF1YWxpdHkgY29tcGFyaXNvbi5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgRVFVQUwgPSBuZXcgRmlsdGVyT3BlcmF0b3IoJ0VxdWFscycpO1xuXG4gIC8qKlxuICAgKiBOb3QgZXF1YWwgY29tcGFyaXNvbi5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgTk9UX0VRVUFMID0gbmV3IEZpbHRlck9wZXJhdG9yKCdOb3RFcXVhbHMnKTtcblxuICAvKipcbiAgICogR3JlYXRlciB0aGFuIGNvbXBhcmlzb24gKG51bWVyaWMgdmFsdWVzKS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgR1JFQVRFUl9USEFOID0gbmV3IEZpbHRlck9wZXJhdG9yKCdHcmVhdGVyVGhhbicpO1xuXG4gIC8qKlxuICAgKiBMZXNzIHRoYW4gY29tcGFyaXNvbiAobnVtZXJpYyB2YWx1ZXMpLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBMRVNTX1RIQU4gPSBuZXcgRmlsdGVyT3BlcmF0b3IoJ0xlc3NUaGFuJyk7XG5cbiAgLyoqXG4gICAqIEdyZWF0ZXIgdGhhbiBvciBlcXVhbCBjb21wYXJpc29uIChudW1lcmljIHZhbHVlcykuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEdSRUFURVJfVEhBTl9PUl9FUVVBTCA9IG5ldyBGaWx0ZXJPcGVyYXRvcignR3JlYXRlclRoYW5PckVxdWFsJyk7XG5cbiAgLyoqXG4gICAqIExlc3MgdGhhbiBvciBlcXVhbCBjb21wYXJpc29uIChudW1lcmljIHZhbHVlcykuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IExFU1NfVEhBTl9PUl9FUVVBTCA9IG5ldyBGaWx0ZXJPcGVyYXRvcignTGVzc1RoYW5PckVxdWFsJyk7XG5cbiAgLyoqXG4gICAqIFN0cmluZyBjb250YWlucyBjb21wYXJpc29uLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDT05UQUlOUyA9IG5ldyBGaWx0ZXJPcGVyYXRvcignQ29udGFpbnMnKTtcblxuICAvKipcbiAgICogU3RyaW5nIGRvZXMgbm90IGNvbnRhaW4gY29tcGFyaXNvbi5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgTk9UX0NPTlRBSU5TID0gbmV3IEZpbHRlck9wZXJhdG9yKCdOb3RDb250YWlucycpO1xuXG4gIC8qKlxuICAgKiBUaGUgc3RyaW5nIHZhbHVlIG9mIHRoZSBmaWx0ZXIgb3BlcmF0b3IuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgdmFsdWU6IHN0cmluZztcblxuICAvKipcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIGZpbHRlciBvcGVyYXRvciBzdHJpbmdcbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcih2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICB9XG59XG5cbi8qKlxuICogQSB0eXBlZCBmaWx0ZXIgdmFsdWUgZm9yIG9ubGluZSBldmFsdWF0aW9uIGZpbHRlcmluZy5cbiAqXG4gKiBVc2UgdGhlIHN0YXRpYyBmYWN0b3J5IG1ldGhvZHMgdG8gY3JlYXRlIGZpbHRlciB2YWx1ZXM6XG4gKiAtIGBGaWx0ZXJWYWx1ZS5zdHJpbmcoKWAgZm9yIHN0cmluZyBjb21wYXJpc29uc1xuICogLSBgRmlsdGVyVmFsdWUubnVtYmVyKClgIGZvciBudW1lcmljIGNvbXBhcmlzb25zXG4gKiAtIGBGaWx0ZXJWYWx1ZS5ib29sZWFuKClgIGZvciBib29sZWFuIGNvbXBhcmlzb25zXG4gKiBAZGVwcmVjYXRlZCBVc2UgdGhlIGVxdWl2YWxlbnQgY29uc3RydWN0IGZyb20gYGF3cy1jZGstbGliL2F3cy1iZWRyb2NrYWdlbnRjb3JlYCBpbnN0ZWFkLlxuICovXG5leHBvcnQgY2xhc3MgRmlsdGVyVmFsdWUge1xuICAvKipcbiAgICogQ3JlYXRlcyBhIHN0cmluZyBmaWx0ZXIgdmFsdWUuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSBzdHJpbmcgdmFsdWUgdG8gY29tcGFyZSBhZ2FpbnN0XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHN0cmluZyh2YWx1ZTogc3RyaW5nKTogRmlsdGVyVmFsdWUge1xuICAgIHJldHVybiBuZXcgRmlsdGVyVmFsdWUoeyBzdHJpbmdWYWx1ZTogdmFsdWUgfSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG51bWVyaWMgZmlsdGVyIHZhbHVlLlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgbnVtZXJpYyB2YWx1ZSB0byBjb21wYXJlIGFnYWluc3RcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgbnVtYmVyKHZhbHVlOiBudW1iZXIpOiBGaWx0ZXJWYWx1ZSB7XG4gICAgcmV0dXJuIG5ldyBGaWx0ZXJWYWx1ZSh7IGRvdWJsZVZhbHVlOiB2YWx1ZSB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgYm9vbGVhbiBmaWx0ZXIgdmFsdWUuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSBib29sZWFuIHZhbHVlIHRvIGNvbXBhcmUgYWdhaW5zdFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBib29sZWFuKHZhbHVlOiBib29sZWFuKTogRmlsdGVyVmFsdWUge1xuICAgIHJldHVybiBuZXcgRmlsdGVyVmFsdWUoeyBib29sZWFuVmFsdWU6IHZhbHVlIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkb25seSBmaWx0ZXJWYWx1ZTogeyBzdHJpbmdWYWx1ZT86IHN0cmluZzsgZG91YmxlVmFsdWU/OiBudW1iZXI7IGJvb2xlYW5WYWx1ZT86IGJvb2xlYW4gfTtcblxuICBwcml2YXRlIGNvbnN0cnVjdG9yKGZpbHRlclZhbHVlOiB7IHN0cmluZ1ZhbHVlPzogc3RyaW5nOyBkb3VibGVWYWx1ZT86IG51bWJlcjsgYm9vbGVhblZhbHVlPzogYm9vbGVhbiB9KSB7XG4gICAgdGhpcy5maWx0ZXJWYWx1ZSA9IGZpbHRlclZhbHVlO1xuICB9XG5cbiAgLyoqXG4gICAqIEJpbmRzIHRoZSBmaWx0ZXIgdmFsdWUgdG8gcHJvZHVjZSB0aGUgTDEgcHJvcGVydHkuXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIF9iaW5kKCk6IHsgc3RyaW5nVmFsdWU/OiBzdHJpbmc7IGRvdWJsZVZhbHVlPzogbnVtYmVyOyBib29sZWFuVmFsdWU/OiBib29sZWFuIH0ge1xuICAgIHJldHVybiB0aGlzLmZpbHRlclZhbHVlO1xuICB9XG59XG5cbi8qKlxuICogRmlsdGVyIGNvbmZpZ3VyYXRpb24gZm9yIG9ubGluZSBldmFsdWF0aW9uLlxuICpcbiAqIEZpbHRlcnMgZGV0ZXJtaW5lIHdoaWNoIGFnZW50IHRyYWNlcyBzaG91bGQgYmUgaW5jbHVkZWQgaW4gdGhlIGV2YWx1YXRpb25cbiAqIGJhc2VkIG9uIHRyYWNlIHByb3BlcnRpZXMuXG4gKiBAZGVwcmVjYXRlZCBVc2UgdGhlIGVxdWl2YWxlbnQgY29uc3RydWN0IGZyb20gYGF3cy1jZGstbGliL2F3cy1iZWRyb2NrYWdlbnRjb3JlYCBpbnN0ZWFkLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEZpbHRlckNvbmZpZyB7XG4gIC8qKlxuICAgKiBUaGUga2V5IG9yIGZpZWxkIG5hbWUgdG8gZmlsdGVyIG9uIHdpdGhpbiB0aGUgYWdlbnQgdHJhY2UgZGF0YS5cbiAgICpcbiAgICogQGV4YW1wbGUgJ3VzZXIucmVnaW9uJ1xuICAgKi9cbiAgcmVhZG9ubHkga2V5OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBjb21wYXJpc29uIG9wZXJhdG9yIHRvIHVzZSBmb3IgZmlsdGVyaW5nLlxuICAgKi9cbiAgcmVhZG9ubHkgb3BlcmF0b3I6IEZpbHRlck9wZXJhdG9yO1xuXG4gIC8qKlxuICAgKiBUaGUgdmFsdWUgdG8gY29tcGFyZSBhZ2FpbnN0IHVzaW5nIHRoZSBzcGVjaWZpZWQgb3BlcmF0b3IuXG4gICAqXG4gICAqIFVzZSBgRmlsdGVyVmFsdWUuc3RyaW5nKClgLCBgRmlsdGVyVmFsdWUubnVtYmVyKClgLCBvciBgRmlsdGVyVmFsdWUuYm9vbGVhbigpYFxuICAgKiB0byBjcmVhdGUgdHlwZWQgZmlsdGVyIHZhbHVlcy5cbiAgICovXG4gIHJlYWRvbmx5IHZhbHVlOiBGaWx0ZXJWYWx1ZTtcbn1cblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIGZvciBDbG91ZFdhdGNoIExvZ3MgZGF0YSBzb3VyY2UuXG4gKiBAZGVwcmVjYXRlZCBVc2UgdGhlIGVxdWl2YWxlbnQgY29uc3RydWN0IGZyb20gYGF3cy1jZGstbGliL2F3cy1iZWRyb2NrYWdlbnRjb3JlYCBpbnN0ZWFkLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENsb3VkV2F0Y2hMb2dzRGF0YVNvdXJjZUNvbmZpZyB7XG4gIC8qKlxuICAgKiBUaGUgbGlzdCBvZiBDbG91ZFdhdGNoIGxvZyBncm91cCBuYW1lcyB0byBtb25pdG9yIGZvciBhZ2VudCB0cmFjZXMuXG4gICAqXG4gICAqIEBtaW5pbXVtIDFcbiAgICogQG1heGltdW0gNVxuICAgKi9cbiAgcmVhZG9ubHkgbG9nR3JvdXBOYW1lczogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFRoZSBsaXN0IG9mIHNlcnZpY2UgbmFtZXMgdG8gZmlsdGVyIHRyYWNlcyB3aXRoaW4gdGhlIHNwZWNpZmllZCBsb2cgZ3JvdXBzLlxuICAgKiBVc2VkIHRvIGlkZW50aWZ5IHJlbGV2YW50IGFnZW50IHNlc3Npb25zLlxuICAgKlxuICAgKiBGb3IgYWdlbnRzIGhvc3RlZCBvbiBBZ2VudENvcmUgUnVudGltZSwgc2VydmljZSBuYW1lIGZvbGxvd3MgdGhlIGZvcm1hdDpcbiAgICogYDxhZ2VudC1ydW50aW1lLW5hbWU+LjxhZ2VudC1ydW50aW1lLWVuZHBvaW50LW5hbWU+YFxuICAgKlxuICAgKiBAbWluaW11bSAxXG4gICAqIEBtYXhpbXVtIDFcbiAgICovXG4gIHJlYWRvbmx5IHNlcnZpY2VOYW1lczogc3RyaW5nW107XG59XG5cbi8qKlxuICogQmFzZSBwcm9wZXJ0aWVzIGZvciBjcmVhdGluZyBhbiBPbmxpbmVFdmFsdWF0aW9uQ29uZmlnLlxuICogVGhlIGFjdHVhbCBPbmxpbmVFdmFsdWF0aW9uUHJvcHMgaXMgZGVmaW5lZCBpbiBvbmxpbmUtZXZhbHVhdGlvbi1jb25maWcudHNcbiAqIHRvIGF2b2lkIGNpcmN1bGFyIGRlcGVuZGVuY2llcy5cbiAqIEBkZXByZWNhdGVkIFVzZSB0aGUgZXF1aXZhbGVudCBjb25zdHJ1Y3QgZnJvbSBgYXdzLWNkay1saWIvYXdzLWJlZHJvY2thZ2VudGNvcmVgIGluc3RlYWQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgT25saW5lRXZhbHVhdGlvbkJhc2VQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgb25saW5lIGV2YWx1YXRpb24gY29uZmlndXJhdGlvbi5cbiAgICpcbiAgICogTXVzdCBiZSB1bmlxdWUgd2l0aGluIHlvdXIgYWNjb3VudC4gVmFsaWQgY2hhcmFjdGVycyBhcmUgYS16LCBBLVosIDAtOSwgXyAodW5kZXJzY29yZSkuXG4gICAqIE11c3Qgc3RhcnQgd2l0aCBhIGxldHRlciBhbmQgY2FuIGJlIHVwIHRvIDQ4IGNoYXJhY3RlcnMgbG9uZy5cbiAgICpcbiAgICogQHBhdHRlcm4gXlthLXpBLVpdW2EtekEtWjAtOV9dezAsNDd9JFxuICAgKi9cbiAgcmVhZG9ubHkgb25saW5lRXZhbHVhdGlvbkNvbmZpZ05hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIElBTSByb2xlIHRoYXQgcHJvdmlkZXMgcGVybWlzc2lvbnMgZm9yIHRoZSBldmFsdWF0aW9uIHRvIGFjY2VzcyBBV1Mgc2VydmljZXMuXG4gICAqXG4gICAqIElmIG5vdCBwcm92aWRlZCwgYSByb2xlIHdpbGwgYmUgY3JlYXRlZCBhdXRvbWF0aWNhbGx5IHdpdGggdGhlIHJlcXVpcmVkIHBlcm1pc3Npb25zXG4gICAqIGluY2x1ZGluZyBjcm9zcy1yZWdpb24gQmVkcm9jayBtb2RlbCBpbnZvY2F0aW9uICh0byBzdXBwb3J0IGNyb3NzLXJlZ2lvbiBpbmZlcmVuY2VcbiAgICogcHJvZmlsZXMpLiBGb3Igc3RyaWN0IGNvc3QgY29udHJvbHMgb3IgZGF0YSByZXNpZGVuY3kgY29tcGxpYW5jZSwgcHJvdmlkZSBhIGN1c3RvbVxuICAgKiByb2xlIHdpdGggcmVnaW9uLXNjb3BlZCBwZXJtaXNzaW9ucy5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBBIG5ldyByb2xlIHdpbGwgYmUgY3JlYXRlZFxuICAgKi9cbiAgcmVhZG9ubHkgZXhlY3V0aW9uUm9sZT86IGlhbS5JUm9sZTtcblxuICAvKipcbiAgICogVGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBvbmxpbmUgZXZhbHVhdGlvbiBjb25maWd1cmF0aW9uLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIE5vIGRlc2NyaXB0aW9uXG4gICAqIEBtYXhMZW5ndGggMjAwXG4gICAqL1xuICByZWFkb25seSBkZXNjcmlwdGlvbj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHBlcmNlbnRhZ2Ugb2YgYWdlbnQgdHJhY2VzIHRvIHNhbXBsZSBmb3IgZXZhbHVhdGlvbi5cbiAgICpcbiAgICogQGRlZmF1bHQgMTBcbiAgICogQG1pbmltdW0gMC4wMVxuICAgKiBAbWF4aW11bSAxMDBcbiAgICovXG4gIHJlYWRvbmx5IHNhbXBsaW5nUGVyY2VudGFnZT86IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIGxpc3Qgb2YgZmlsdGVycyB0aGF0IGRldGVybWluZSB3aGljaCBhZ2VudCB0cmFjZXMgc2hvdWxkIGJlIGV2YWx1YXRlZC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBObyBmaWx0ZXJzIChldmFsdWF0ZSBhbGwgc2FtcGxlZCB0cmFjZXMpXG4gICAqIEBtYXhpbXVtIDVcbiAgICovXG4gIHJlYWRvbmx5IGZpbHRlcnM/OiBGaWx0ZXJDb25maWdbXTtcblxuICAvKipcbiAgICogVGhlIGR1cmF0aW9uIG9mIGluYWN0aXZpdHkgYWZ0ZXIgd2hpY2ggYW4gYWdlbnQgc2Vzc2lvblxuICAgKiBpcyBjb25zaWRlcmVkIGNvbXBsZXRlIGFuZCByZWFkeSBmb3IgZXZhbHVhdGlvbi5cbiAgICpcbiAgICogTXVzdCBiZSBiZXR3ZWVuIDEgbWludXRlIGFuZCAxNDQwIG1pbnV0ZXMgKDI0IGhvdXJzKS5cbiAgICpcbiAgICogQGRlZmF1bHQgRHVyYXRpb24ubWludXRlcygxNSlcbiAgICovXG4gIHJlYWRvbmx5IHNlc3Npb25UaW1lb3V0PzogRHVyYXRpb247XG5cbiAgLyoqXG4gICAqIFRoZSBleGVjdXRpb24gc3RhdHVzIG9mIHRoZSBvbmxpbmUgZXZhbHVhdGlvbiBjb25maWd1cmF0aW9uLlxuICAgKlxuICAgKiBDb250cm9scyB3aGV0aGVyIHRoZSBldmFsdWF0aW9uIGFjdGl2ZWx5IHByb2Nlc3NlcyBhZ2VudCB0cmFjZXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IEV4ZWN1dGlvblN0YXR1cy5FTkFCTEVEXG4gICAqL1xuICByZWFkb25seSBleGVjdXRpb25TdGF0dXM/OiBFeGVjdXRpb25TdGF0dXM7XG59XG5cbi8qKlxuICogVGhlIHJlc3VsdCBvZiBiaW5kaW5nIGFuIEV2YWx1YXRvclJlZmVyZW5jZS5cbiAqIEBkZXByZWNhdGVkIFVzZSB0aGUgZXF1aXZhbGVudCBjb25zdHJ1Y3QgZnJvbSBgYXdzLWNkay1saWIvYXdzLWJlZHJvY2thZ2VudGNvcmVgIGluc3RlYWQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRXZhbHVhdG9yUmVmZXJlbmNlQmluZFJlc3VsdCB7XG4gIC8qKlxuICAgKiBUaGUgZXZhbHVhdG9yIGlkZW50aWZpZXIuXG4gICAqL1xuICByZWFkb25seSBldmFsdWF0b3JJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFRoZSByZXN1bHQgb2YgYmluZGluZyBhIERhdGFTb3VyY2VDb25maWcuXG4gKiBAZGVwcmVjYXRlZCBVc2UgdGhlIGVxdWl2YWxlbnQgY29uc3RydWN0IGZyb20gYGF3cy1jZGstbGliL2F3cy1iZWRyb2NrYWdlbnRjb3JlYCBpbnN0ZWFkLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERhdGFTb3VyY2VDb25maWdCaW5kUmVzdWx0IHtcbiAgLyoqXG4gICAqIFRoZSBDbG91ZFdhdGNoIExvZ3MgZGF0YSBzb3VyY2UgY29uZmlndXJhdGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IGNsb3VkV2F0Y2hMb2dzOiBDbG91ZFdhdGNoTG9nc0RhdGFTb3VyY2VDb25maWc7XG59XG5cbi8qKlxuICogVGhlIGxldmVsIGF0IHdoaWNoIGEgY3VzdG9tIGV2YWx1YXRvciBhc3Nlc3NlcyBhZ2VudCBwZXJmb3JtYW5jZS5cbiAqXG4gKiBEZXRlcm1pbmVzIHdoYXQgZ3JhbnVsYXJpdHkgb2YgZGF0YSB0aGUgZXZhbHVhdG9yIG9wZXJhdGVzIG9uLlxuICogQGRlcHJlY2F0ZWQgVXNlIHRoZSBlcXVpdmFsZW50IGNvbnN0cnVjdCBmcm9tIGBhd3MtY2RrLWxpYi9hd3MtYmVkcm9ja2FnZW50Y29yZWAgaW5zdGVhZC5cbiAqL1xuZXhwb3J0IGNsYXNzIEV2YWx1YXRpb25MZXZlbCB7XG4gIC8qKlxuICAgKiBFdmFsdWF0ZXMgaW5kaXZpZHVhbCB0b29sIGNhbGwgaW52b2NhdGlvbnMgd2l0aGluIGEgdHJhY2UuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFRPT0xfQ0FMTCA9IG5ldyBFdmFsdWF0aW9uTGV2ZWwoJ1RPT0xfQ0FMTCcpO1xuXG4gIC8qKlxuICAgKiBFdmFsdWF0ZXMgYSBjb21wbGV0ZSBhZ2VudCB0cmFjZSAoYSBzaW5nbGUgcmVxdWVzdC1yZXNwb25zZSBjeWNsZSkuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFRSQUNFID0gbmV3IEV2YWx1YXRpb25MZXZlbCgnVFJBQ0UnKTtcblxuICAvKipcbiAgICogRXZhbHVhdGVzIGFuIGVudGlyZSBhZ2VudCBzZXNzaW9uIChtdWx0aXBsZSB0cmFjZXMgYWNyb3NzIGEgY29udmVyc2F0aW9uKS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgU0VTU0lPTiA9IG5ldyBFdmFsdWF0aW9uTGV2ZWwoJ1NFU1NJT04nKTtcblxuICAvKipcbiAgICogVGhlIHN0cmluZyB2YWx1ZSBvZiB0aGUgZXZhbHVhdGlvbiBsZXZlbC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSB2YWx1ZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgZXZhbHVhdGlvbiBsZXZlbCBzdHJpbmdcbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcih2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICB9XG59XG5cbi8qKlxuICogQSBjYXRlZ29yaWNhbCByYXRpbmcgc2NhbGUgb3B0aW9uIGZvciBjdXN0b20gZXZhbHVhdG9ycy5cbiAqXG4gKiBDYXRlZ29yaWNhbCBzY2FsZXMgZGVmaW5lIGRpc2NyZXRlIGxhYmVscyBmb3Igc2NvcmluZyBhZ2VudCBwZXJmb3JtYW5jZS5cbiAqIEBkZXByZWNhdGVkIFVzZSB0aGUgZXF1aXZhbGVudCBjb25zdHJ1Y3QgZnJvbSBgYXdzLWNkay1saWIvYXdzLWJlZHJvY2thZ2VudGNvcmVgIGluc3RlYWQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2F0ZWdvcmljYWxSYXRpbmdPcHRpb24ge1xuICAvKipcbiAgICogVGhlIGxhYmVsIGZvciB0aGlzIHJhdGluZyBvcHRpb24uXG4gICAqXG4gICAqIEBleGFtcGxlICdHb29kJ1xuICAgKi9cbiAgcmVhZG9ubHkgbGFiZWw6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGRlc2NyaXB0aW9uIHRoYXQgZXhwbGFpbnMgd2hhdCB0aGlzIHJhdGluZyByZXByZXNlbnRzLlxuICAgKlxuICAgKiBAZXhhbXBsZSAnVGhlIHJlc3BvbnNlIGZ1bGx5IGFkZHJlc3NlcyB0aGUgdXNlciBxdWVyeSB3aXRoIGFjY3VyYXRlIGluZm9ybWF0aW9uLidcbiAgICovXG4gIHJlYWRvbmx5IGRlZmluaXRpb246IHN0cmluZztcbn1cblxuLyoqXG4gKiBBIG51bWVyaWNhbCByYXRpbmcgc2NhbGUgb3B0aW9uIGZvciBjdXN0b20gZXZhbHVhdG9ycy5cbiAqXG4gKiBOdW1lcmljYWwgc2NhbGVzIGRlZmluZSBsYWJlbGVkIG51bWVyaWMgdmFsdWVzIGZvciBzY29yaW5nIGFnZW50IHBlcmZvcm1hbmNlLlxuICogQGRlcHJlY2F0ZWQgVXNlIHRoZSBlcXVpdmFsZW50IGNvbnN0cnVjdCBmcm9tIGBhd3MtY2RrLWxpYi9hd3MtYmVkcm9ja2FnZW50Y29yZWAgaW5zdGVhZC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOdW1lcmljYWxSYXRpbmdPcHRpb24ge1xuICAvKipcbiAgICogVGhlIGxhYmVsIGZvciB0aGlzIHJhdGluZyBvcHRpb24uXG4gICAqXG4gICAqIEBleGFtcGxlICdFeGNlbGxlbnQnXG4gICAqL1xuICByZWFkb25seSBsYWJlbDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgZGVzY3JpcHRpb24gdGhhdCBleHBsYWlucyB3aGF0IHRoaXMgbnVtZXJpY2FsIHJhdGluZyByZXByZXNlbnRzLlxuICAgKlxuICAgKiBAZXhhbXBsZSAnVGhlIHJlc3BvbnNlIGlzIGNvbXByZWhlbnNpdmUsIGFjY3VyYXRlLCBhbmQgd2VsbC1zdHJ1Y3R1cmVkLidcbiAgICovXG4gIHJlYWRvbmx5IGRlZmluaXRpb246IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG51bWVyaWNhbCB2YWx1ZSBmb3IgdGhpcyByYXRpbmcgc2NhbGUgb3B0aW9uLlxuICAgKlxuICAgKiBAZXhhbXBsZSA1XG4gICAqL1xuICByZWFkb25seSB2YWx1ZTogbnVtYmVyO1xufVxuXG4vKipcbiAqIEluZmVyZW5jZSBjb25maWd1cmF0aW9uIGZvciBhIGN1c3RvbSBMTE0tYXMtYS1KdWRnZSBldmFsdWF0b3IuXG4gKlxuICogQ29udHJvbHMgaG93IHRoZSBmb3VuZGF0aW9uIG1vZGVsIGdlbmVyYXRlcyBldmFsdWF0aW9uIHJlc3BvbnNlcy5cbiAqIEBkZXByZWNhdGVkIFVzZSB0aGUgZXF1aXZhbGVudCBjb25zdHJ1Y3QgZnJvbSBgYXdzLWNkay1saWIvYXdzLWJlZHJvY2thZ2VudGNvcmVgIGluc3RlYWQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRXZhbHVhdG9ySW5mZXJlbmNlQ29uZmlnIHtcbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIG51bWJlciBvZiB0b2tlbnMgdG8gZ2VuZXJhdGUgaW4gdGhlIG1vZGVsIHJlc3BvbnNlLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIFRoZSBmb3VuZGF0aW9uIG1vZGVsJ3MgZGVmYXVsdCBtYXhpbXVtIHRva2VuIGxpbWl0IGlzIHVzZWRcbiAgICovXG4gIHJlYWRvbmx5IG1heFRva2Vucz86IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIHRlbXBlcmF0dXJlIHZhbHVlIHRoYXQgY29udHJvbHMgcmFuZG9tbmVzcyBpbiB0aGUgbW9kZWwncyByZXNwb25zZXMuXG4gICAqXG4gICAqIEhpZ2hlciB2YWx1ZXMgcHJvZHVjZSBtb3JlIGRpdmVyc2Ugb3V0cHV0cy4gUmFuZ2U6IDAuMCB0byAxLjAuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gVGhlIGZvdW5kYXRpb24gbW9kZWwncyBkZWZhdWx0IHRlbXBlcmF0dXJlIGlzIHVzZWRcbiAgICovXG4gIHJlYWRvbmx5IHRlbXBlcmF0dXJlPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgdG9wLXAgc2FtcGxpbmcgcGFyYW1ldGVyIHRoYXQgY29udHJvbHMgdGhlIGRpdmVyc2l0eSBvZiB0aGUgbW9kZWwncyByZXNwb25zZXMuXG4gICAqXG4gICAqIFJhbmdlOiAwLjAgdG8gMS4wLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIFRoZSBmb3VuZGF0aW9uIG1vZGVsJ3MgZGVmYXVsdCB0b3AtcCB2YWx1ZSBpcyB1c2VkXG4gICAqL1xuICByZWFkb25seSB0b3BQPzogbnVtYmVyO1xufVxuXG4vKipcbiAqIEF0dHJpYnV0ZXMgZm9yIGltcG9ydGluZyBhbiBleGlzdGluZyBFdmFsdWF0b3IuXG4gKiBAZGVwcmVjYXRlZCBVc2UgdGhlIGVxdWl2YWxlbnQgY29uc3RydWN0IGZyb20gYGF3cy1jZGstbGliL2F3cy1iZWRyb2NrYWdlbnRjb3JlYCBpbnN0ZWFkLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEV2YWx1YXRvckF0dHJpYnV0ZXMge1xuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgZXZhbHVhdG9yLlxuICAgKi9cbiAgcmVhZG9ubHkgZXZhbHVhdG9yQXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgZXZhbHVhdG9yLlxuICAgKi9cbiAgcmVhZG9ubHkgZXZhbHVhdG9ySWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGV2YWx1YXRvci5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBObyBuYW1lIGF2YWlsYWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZXZhbHVhdG9yTmFtZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBBdHRyaWJ1dGVzIGZvciBpbXBvcnRpbmcgYW4gZXhpc3RpbmcgT25saW5lRXZhbHVhdGlvbkNvbmZpZy5cbiAqIEBkZXByZWNhdGVkIFVzZSB0aGUgZXF1aXZhbGVudCBjb25zdHJ1Y3QgZnJvbSBgYXdzLWNkay1saWIvYXdzLWJlZHJvY2thZ2VudGNvcmVgIGluc3RlYWQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgT25saW5lRXZhbHVhdGlvbkNvbmZpZ0F0dHJpYnV0ZXMge1xuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgb25saW5lIGV2YWx1YXRpb24gY29uZmlndXJhdGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IG9ubGluZUV2YWx1YXRpb25Db25maWdBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIElEIG9mIHRoZSBvbmxpbmUgZXZhbHVhdGlvbiBjb25maWd1cmF0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgb25saW5lRXZhbHVhdGlvbkNvbmZpZ0lkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBvbmxpbmUgZXZhbHVhdGlvbiBjb25maWd1cmF0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgb25saW5lRXZhbHVhdGlvbkNvbmZpZ05hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgSUFNIGV4ZWN1dGlvbiByb2xlLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIE5vIHJvbGUgQVJOIHByb3ZpZGVkXG4gICAqL1xuICByZWFkb25seSBleGVjdXRpb25Sb2xlQXJuPzogc3RyaW5nO1xufVxuIl19
|
|
@@ -32,6 +32,7 @@ export type ValidationFn<T> = (param: T, scope?: IConstruct) => string[];
|
|
|
32
32
|
* @param name - The configuration name to validate
|
|
33
33
|
* @param _scope - The construct scope for error reporting (optional)
|
|
34
34
|
* @returns Array of validation error messages, empty if valid
|
|
35
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
35
36
|
*/
|
|
36
37
|
export declare function validateConfigName(name: string, _scope?: IConstruct): string[];
|
|
37
38
|
/**
|
|
@@ -39,6 +40,7 @@ export declare function validateConfigName(name: string, _scope?: IConstruct): s
|
|
|
39
40
|
* @param description - The description to validate
|
|
40
41
|
* @param _scope - The construct scope for error reporting (optional)
|
|
41
42
|
* @returns Array of validation error messages, empty if valid
|
|
43
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
42
44
|
*/
|
|
43
45
|
export declare function validateDescription(description: string | undefined, _scope?: IConstruct): string[];
|
|
44
46
|
/**
|
|
@@ -46,6 +48,7 @@ export declare function validateDescription(description: string | undefined, _sc
|
|
|
46
48
|
* @param evaluators - The evaluators array to validate
|
|
47
49
|
* @param _scope - The construct scope for error reporting (optional)
|
|
48
50
|
* @returns Array of validation error messages, empty if valid
|
|
51
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
49
52
|
*/
|
|
50
53
|
export declare function validateEvaluators(evaluators: IEvaluatorReference[], _scope?: IConstruct): string[];
|
|
51
54
|
/**
|
|
@@ -53,6 +56,7 @@ export declare function validateEvaluators(evaluators: IEvaluatorReference[], _s
|
|
|
53
56
|
* @param percentage - The sampling percentage to validate
|
|
54
57
|
* @param _scope - The construct scope for error reporting (optional)
|
|
55
58
|
* @returns Array of validation error messages, empty if valid
|
|
59
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
56
60
|
*/
|
|
57
61
|
export declare function validateSamplingPercentage(percentage: number | undefined, _scope?: IConstruct): string[];
|
|
58
62
|
/**
|
|
@@ -60,6 +64,7 @@ export declare function validateSamplingPercentage(percentage: number | undefine
|
|
|
60
64
|
* @param filters - The filters array to validate
|
|
61
65
|
* @param _scope - The construct scope for error reporting (optional)
|
|
62
66
|
* @returns Array of validation error messages, empty if valid
|
|
67
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
63
68
|
*/
|
|
64
69
|
export declare function validateFilters(filters: FilterConfig[] | undefined, _scope?: IConstruct): string[];
|
|
65
70
|
/**
|
|
@@ -67,6 +72,7 @@ export declare function validateFilters(filters: FilterConfig[] | undefined, _sc
|
|
|
67
72
|
* @param minutes - The session timeout in minutes to validate
|
|
68
73
|
* @param _scope - The construct scope for error reporting (optional)
|
|
69
74
|
* @returns Array of validation error messages, empty if valid
|
|
75
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
70
76
|
*/
|
|
71
77
|
export declare function validateSessionTimeout(minutes: number | undefined, _scope?: IConstruct): string[];
|
|
72
78
|
/**
|
|
@@ -74,6 +80,7 @@ export declare function validateSessionTimeout(minutes: number | undefined, _sco
|
|
|
74
80
|
* @param names - The log group names array to validate
|
|
75
81
|
* @param _scope - The construct scope for error reporting (optional)
|
|
76
82
|
* @returns Array of validation error messages, empty if valid
|
|
83
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
77
84
|
*/
|
|
78
85
|
export declare function validateLogGroupNames(names: string[], _scope?: IConstruct): string[];
|
|
79
86
|
/**
|
|
@@ -81,6 +88,7 @@ export declare function validateLogGroupNames(names: string[], _scope?: IConstru
|
|
|
81
88
|
* @param names - The service names array to validate
|
|
82
89
|
* @param _scope - The construct scope for error reporting (optional)
|
|
83
90
|
* @returns Array of validation error messages, empty if valid
|
|
91
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
84
92
|
*/
|
|
85
93
|
export declare function validateServiceNames(names: string[], _scope?: IConstruct): string[];
|
|
86
94
|
/**
|
|
@@ -89,6 +97,7 @@ export declare function validateServiceNames(names: string[], _scope?: IConstruc
|
|
|
89
97
|
* @param name - The evaluator name to validate
|
|
90
98
|
* @param _scope - The construct scope for error reporting (optional)
|
|
91
99
|
* @returns Array of validation error messages, empty if valid
|
|
100
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
92
101
|
*/
|
|
93
102
|
export declare function validateEvaluatorName(name: string, _scope?: IConstruct): string[];
|
|
94
103
|
/**
|
|
@@ -96,6 +105,7 @@ export declare function validateEvaluatorName(name: string, _scope?: IConstruct)
|
|
|
96
105
|
* @param instructions - The instructions to validate
|
|
97
106
|
* @param _scope - The construct scope for error reporting (optional)
|
|
98
107
|
* @returns Array of validation error messages, empty if valid
|
|
108
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
99
109
|
*/
|
|
100
110
|
export declare function validateInstructions(instructions: string, _scope?: IConstruct): string[];
|
|
101
111
|
/**
|
|
@@ -103,6 +113,7 @@ export declare function validateInstructions(instructions: string, _scope?: ICon
|
|
|
103
113
|
* @param options - The categorical rating options to validate
|
|
104
114
|
* @param _scope - The construct scope for error reporting (optional)
|
|
105
115
|
* @returns Array of validation error messages, empty if valid
|
|
116
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
106
117
|
*/
|
|
107
118
|
export declare function validateCategoricalRatingScale(options: CategoricalRatingOption[], _scope?: IConstruct): string[];
|
|
108
119
|
/**
|
|
@@ -110,6 +121,7 @@ export declare function validateCategoricalRatingScale(options: CategoricalRatin
|
|
|
110
121
|
* @param options - The numerical rating options to validate
|
|
111
122
|
* @param _scope - The construct scope for error reporting (optional)
|
|
112
123
|
* @returns Array of validation error messages, empty if valid
|
|
124
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
113
125
|
*/
|
|
114
126
|
export declare function validateNumericalRatingScale(options: NumericalRatingOption[], _scope?: IConstruct): string[];
|
|
115
127
|
/**
|
|
@@ -117,6 +129,7 @@ export declare function validateNumericalRatingScale(options: NumericalRatingOpt
|
|
|
117
129
|
* @param seconds - The timeout in seconds to validate
|
|
118
130
|
* @param _scope - The construct scope for error reporting (optional)
|
|
119
131
|
* @returns Array of validation error messages, empty if valid
|
|
132
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
120
133
|
*/
|
|
121
134
|
export declare function validateLambdaTimeout(seconds: number | undefined, _scope?: IConstruct): string[];
|
|
122
135
|
/******************************************************************************
|
|
@@ -128,13 +141,22 @@ export declare function validateLambdaTimeout(seconds: number | undefined, _scop
|
|
|
128
141
|
* @param param - The parameter to validate
|
|
129
142
|
* @param scope - The construct scope for error reporting (optional)
|
|
130
143
|
* @returns The validated parameter
|
|
144
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
131
145
|
*/
|
|
132
146
|
export declare function throwIfInvalid<T>(validationFn: ValidationFn<T>, param: T, scope?: IConstruct): T;
|
|
133
147
|
/** Validates tags for Evaluator resources (Unicode keys allowed per CFN docs) */
|
|
148
|
+
/**
|
|
149
|
+
* This API has been graduated to stable.
|
|
150
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
151
|
+
*/
|
|
134
152
|
export declare function validateEvaluatorTags(tags?: {
|
|
135
153
|
[key: string]: string;
|
|
136
154
|
}, scope?: IConstruct): string[];
|
|
137
155
|
/** Validates tags for OnlineEvaluationConfig resources (ASCII keys per CFN pattern) */
|
|
156
|
+
/**
|
|
157
|
+
* This API has been graduated to stable.
|
|
158
|
+
* @deprecated Use the equivalent construct from `aws-cdk-lib/aws-bedrockagentcore` instead.
|
|
159
|
+
*/
|
|
138
160
|
export declare function validateEvaluationTags(tags?: {
|
|
139
161
|
[key: string]: string;
|
|
140
162
|
}, scope?: IConstruct): string[];
|