@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.
Files changed (122) hide show
  1. package/.jsii +2806 -2580
  2. package/.jsii.tabl.json.gz +0 -0
  3. package/.warnings.jsii.js +2135 -59
  4. package/lib/common/types.d.ts +2 -0
  5. package/lib/common/types.js +3 -1
  6. package/lib/evaluation/custom-evaluator.d.ts +1 -0
  7. package/lib/evaluation/custom-evaluator.js +37 -4
  8. package/lib/evaluation/data-source.d.ts +1 -0
  9. package/lib/evaluation/data-source.js +15 -2
  10. package/lib/evaluation/evaluator-base.d.ts +2 -0
  11. package/lib/evaluation/evaluator-base.js +65 -3
  12. package/lib/evaluation/evaluator-config.d.ts +4 -0
  13. package/lib/evaluation/evaluator-config.js +25 -3
  14. package/lib/evaluation/evaluator.d.ts +1 -0
  15. package/lib/evaluation/evaluator.js +14 -2
  16. package/lib/evaluation/online-evaluation-base.d.ts +2 -0
  17. package/lib/evaluation/online-evaluation-base.js +65 -3
  18. package/lib/evaluation/online-evaluation.d.ts +1 -0
  19. package/lib/evaluation/online-evaluation.js +37 -4
  20. package/lib/evaluation/perms.d.ts +5 -0
  21. package/lib/evaluation/perms.js +6 -1
  22. package/lib/evaluation/types.d.ts +15 -0
  23. package/lib/evaluation/types.js +75 -6
  24. package/lib/evaluation/validation-helpers.d.ts +22 -0
  25. package/lib/evaluation/validation-helpers.js +23 -1
  26. package/lib/gateway/gateway-base.d.ts +7 -0
  27. package/lib/gateway/gateway-base.js +178 -3
  28. package/lib/gateway/gateway.d.ts +9 -0
  29. package/lib/gateway/gateway.js +49 -6
  30. package/lib/gateway/inbound-auth/authorizer.d.ts +12 -0
  31. package/lib/gateway/inbound-auth/authorizer.js +31 -5
  32. package/lib/gateway/inbound-auth/custom-claim.d.ts +1 -0
  33. package/lib/gateway/inbound-auth/custom-claim.js +13 -2
  34. package/lib/gateway/interceptor.d.ts +5 -0
  35. package/lib/gateway/interceptor.js +7 -2
  36. package/lib/gateway/outbound-auth/api-key.d.ts +5 -0
  37. package/lib/gateway/outbound-auth/api-key.js +7 -2
  38. package/lib/gateway/outbound-auth/credential-provider.d.ts +5 -0
  39. package/lib/gateway/outbound-auth/credential-provider.js +17 -2
  40. package/lib/gateway/outbound-auth/iam-role.d.ts +1 -0
  41. package/lib/gateway/outbound-auth/iam-role.js +2 -1
  42. package/lib/gateway/outbound-auth/oauth.d.ts +2 -0
  43. package/lib/gateway/outbound-auth/oauth.js +2 -1
  44. package/lib/gateway/perms.d.ts +16 -0
  45. package/lib/gateway/perms.js +17 -1
  46. package/lib/gateway/protocol.d.ts +7 -0
  47. package/lib/gateway/protocol.js +10 -3
  48. package/lib/gateway/targets/schema/api-schema.d.ts +4 -0
  49. package/lib/gateway/targets/schema/api-schema.js +161 -6
  50. package/lib/gateway/targets/schema/base-schema.d.ts +1 -0
  51. package/lib/gateway/targets/schema/base-schema.js +2 -1
  52. package/lib/gateway/targets/schema/tool-schema.d.ts +12 -0
  53. package/lib/gateway/targets/schema/tool-schema.js +166 -6
  54. package/lib/gateway/targets/target-base.d.ts +5 -0
  55. package/lib/gateway/targets/target-base.js +76 -3
  56. package/lib/gateway/targets/target-configuration.d.ts +14 -0
  57. package/lib/gateway/targets/target-configuration.js +125 -9
  58. package/lib/gateway/targets/target.d.ts +8 -0
  59. package/lib/gateway/targets/target.js +37 -4
  60. package/lib/gateway/validation-helpers.d.ts +4 -0
  61. package/lib/gateway/validation-helpers.js +4 -1
  62. package/lib/identity/api-key-credential-provider.d.ts +4 -0
  63. package/lib/identity/api-key-credential-provider.js +36 -3
  64. package/lib/identity/grant-helpers.d.ts +7 -0
  65. package/lib/identity/grant-helpers.js +42 -2
  66. package/lib/identity/oauth2-credential-provider.d.ts +29 -0
  67. package/lib/identity/oauth2-credential-provider.js +37 -3
  68. package/lib/identity/perms.d.ts +5 -0
  69. package/lib/identity/perms.js +9 -4
  70. package/lib/identity/validation-helpers.d.ts +53 -0
  71. package/lib/identity/validation-helpers.js +54 -1
  72. package/lib/identity/workload-identity.d.ts +3 -0
  73. package/lib/identity/workload-identity.js +36 -3
  74. package/lib/memory/memory-strategy.d.ts +6 -0
  75. package/lib/memory/memory-strategy.js +47 -2
  76. package/lib/memory/memory.d.ts +4 -0
  77. package/lib/memory/memory.js +210 -5
  78. package/lib/memory/strategies/managed-strategy.d.ts +4 -0
  79. package/lib/memory/strategies/managed-strategy.js +22 -2
  80. package/lib/memory/strategies/self-managed-strategy.d.ts +4 -0
  81. package/lib/memory/strategies/self-managed-strategy.js +57 -4
  82. package/lib/memory/validation-helpers.d.ts +6 -0
  83. package/lib/memory/validation-helpers.js +7 -1
  84. package/lib/network/network-configuration.d.ts +5 -0
  85. package/lib/network/network-configuration.js +83 -6
  86. package/lib/policy/policy-base.js +36 -3
  87. package/lib/policy/policy-engine-base.js +36 -3
  88. package/lib/policy/policy-engine.js +37 -4
  89. package/lib/policy/policy-statement.js +5 -5
  90. package/lib/policy/policy-types.js +1 -1
  91. package/lib/policy/policy.js +36 -3
  92. package/lib/runtime/inbound-auth/custom-claim.d.ts +1 -0
  93. package/lib/runtime/inbound-auth/custom-claim.js +13 -2
  94. package/lib/runtime/inbound-auth/runtime-authorizer-configuration.d.ts +1 -0
  95. package/lib/runtime/inbound-auth/runtime-authorizer-configuration.js +40 -2
  96. package/lib/runtime/observability.d.ts +5 -0
  97. package/lib/runtime/observability.js +79 -5
  98. package/lib/runtime/perms.d.ts +12 -0
  99. package/lib/runtime/perms.js +13 -1
  100. package/lib/runtime/runtime-artifact.d.ts +3 -0
  101. package/lib/runtime/runtime-artifact.js +69 -5
  102. package/lib/runtime/runtime-base.d.ts +3 -0
  103. package/lib/runtime/runtime-base.js +200 -3
  104. package/lib/runtime/runtime-endpoint-base.d.ts +3 -0
  105. package/lib/runtime/runtime-endpoint-base.js +22 -2
  106. package/lib/runtime/runtime-endpoint.d.ts +1 -0
  107. package/lib/runtime/runtime-endpoint.js +36 -3
  108. package/lib/runtime/runtime.d.ts +2 -0
  109. package/lib/runtime/runtime.js +38 -5
  110. package/lib/runtime/types.d.ts +3 -0
  111. package/lib/runtime/types.js +2 -1
  112. package/lib/runtime/validation-helpers.d.ts +6 -0
  113. package/lib/runtime/validation-helpers.js +7 -1
  114. package/lib/tools/browser.d.ts +6 -0
  115. package/lib/tools/browser.js +205 -8
  116. package/lib/tools/code-interpreter.d.ts +4 -0
  117. package/lib/tools/code-interpreter.js +185 -7
  118. package/lib/tools/perms.d.ts +12 -0
  119. package/lib/tools/perms.js +13 -1
  120. package/lib/tools/validation-helpers.d.ts +6 -0
  121. package/lib/tools/validation-helpers.js +7 -1
  122. package/package.json +10 -10
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJwZXJtcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7Ozs7Ozs7O0dBV0c7OztBQUVIOzs7R0FHRztBQUNVLFFBQUEseUNBQXlDLEdBQUc7SUFDdkQsd0JBQXdCO0NBQ3pCLENBQUM7QUFFRjs7O0dBR0c7QUFDVSxRQUFBLHNDQUFzQyxHQUFHO0lBQ3BELHNCQUFzQjtJQUN0QixpQkFBaUI7Q0FDbEIsQ0FBQztBQUVGOztHQUVHO0FBQ1UsUUFBQSw4QkFBOEIsR0FBRztJQUM1QyxxQkFBcUI7SUFDckIsdUNBQXVDO0NBQ3hDLENBQUM7QUFFRjs7R0FFRztBQUNVLFFBQUEsc0NBQXNDLEdBQUc7SUFDcEQscUJBQXFCO0lBQ3JCLHNCQUFzQjtJQUN0QixtQkFBbUI7Q0FDcEIsQ0FBQztBQUVGOztHQUVHO0FBQ1UsUUFBQSx3Q0FBd0MsR0FBRztJQUN0RCw0QkFBNEI7SUFDNUIscUJBQXFCO0NBQ3RCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqICBDb3B5cmlnaHQgQW1hem9uLmNvbSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKS4gWW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuICogIHdpdGggdGhlIExpY2Vuc2UuIEEgY29weSBvZiB0aGUgTGljZW5zZSBpcyBsb2NhdGVkIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiAgb3IgaW4gdGhlICdsaWNlbnNlJyBmaWxlIGFjY29tcGFueWluZyB0aGlzIGZpbGUuIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAnQVMgSVMnIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVNcbiAqICBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9uc1xuICogIGFuZCBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG4vKipcbiAqIFBlcm1pc3Npb25zIHRvIGRlc2NyaWJlIENsb3VkV2F0Y2ggTG9nIEdyb3Vwcy5cbiAqIFRoaXMgaXMgYSBsaXN0IG9wZXJhdGlvbiB0aGF0IGRvZXMgbm90IHN1cHBvcnQgcmVzb3VyY2UtbGV2ZWwgcGVybWlzc2lvbnMuXG4gKi9cbmV4cG9ydCBjb25zdCBFVkFMVUFUSU9OX0NMT1VEV0FUQ0hfTE9HU19ERVNDUklCRV9QRVJNUyA9IFtcbiAgJ2xvZ3M6RGVzY3JpYmVMb2dHcm91cHMnLFxuXTtcblxuLyoqXG4gKiBQZXJtaXNzaW9ucyBmb3IgdGhlIGV4ZWN1dGlvbiByb2xlIHRvIHF1ZXJ5IENsb3VkV2F0Y2ggTG9ncy5cbiAqIFRoZXNlIGFjdGlvbnMgc3VwcG9ydCByZXNvdXJjZS1sZXZlbCBwZXJtaXNzaW9ucyBzY29wZWQgdG8gc3BlY2lmaWMgbG9nIGdyb3Vwcy5cbiAqL1xuZXhwb3J0IGNvbnN0IEVWQUxVQVRJT05fQ0xPVURXQVRDSF9MT0dTX1FVRVJZX1BFUk1TID0gW1xuICAnbG9nczpHZXRRdWVyeVJlc3VsdHMnLFxuICAnbG9nczpTdGFydFF1ZXJ5Jyxcbl07XG5cbi8qKlxuICogUGVybWlzc2lvbnMgZm9yIHRoZSBleGVjdXRpb24gcm9sZSB0byBpbnZva2UgQmVkcm9jayBtb2RlbHMuXG4gKi9cbmV4cG9ydCBjb25zdCBFVkFMVUFUSU9OX0JFRFJPQ0tfTU9ERUxfUEVSTVMgPSBbXG4gICdiZWRyb2NrOkludm9rZU1vZGVsJyxcbiAgJ2JlZHJvY2s6SW52b2tlTW9kZWxXaXRoUmVzcG9uc2VTdHJlYW0nLFxuXTtcblxuLyoqXG4gKiBQZXJtaXNzaW9ucyBmb3IgdGhlIGV4ZWN1dGlvbiByb2xlIHRvIHdyaXRlIGV2YWx1YXRpb24gcmVzdWx0cy5cbiAqL1xuZXhwb3J0IGNvbnN0IEVWQUxVQVRJT05fQ0xPVURXQVRDSF9MT0dTX1dSSVRFX1BFUk1TID0gW1xuICAnbG9nczpDcmVhdGVMb2dHcm91cCcsXG4gICdsb2dzOkNyZWF0ZUxvZ1N0cmVhbScsXG4gICdsb2dzOlB1dExvZ0V2ZW50cycsXG5dO1xuXG4vKipcbiAqIFBlcm1pc3Npb25zIGZvciBDbG91ZFdhdGNoIGluZGV4IHBvbGljaWVzLlxuICovXG5leHBvcnQgY29uc3QgRVZBTFVBVElPTl9DTE9VRFdBVENIX0lOREVYX1BPTElDWV9QRVJNUyA9IFtcbiAgJ2xvZ3M6RGVzY3JpYmVJbmRleFBvbGljaWVzJyxcbiAgJ2xvZ3M6UHV0SW5kZXhQb2xpY3knLFxuXTtcbiJdfQ==
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
  /**
@@ -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.256.1-alpha.0" };
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.256.1-alpha.0" };
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.256.1-alpha.0" };
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.256.1-alpha.0" };
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.256.1-alpha.0" };
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[];