@cdktf/provider-aws
Version:
Prebuilt aws Provider for Terraform CDK (cdktf)
1,087 lines • 155 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ServicecatalogProvisionedProduct = exports.ServicecatalogProvisionedProductTimeoutsOutputReference = exports.servicecatalogProvisionedProductTimeoutsToHclTerraform = exports.servicecatalogProvisionedProductTimeoutsToTerraform = exports.ServicecatalogProvisionedProductStackSetProvisioningPreferencesOutputReference = exports.servicecatalogProvisionedProductStackSetProvisioningPreferencesToHclTerraform = exports.servicecatalogProvisionedProductStackSetProvisioningPreferencesToTerraform = exports.ServicecatalogProvisionedProductProvisioningParametersList = exports.ServicecatalogProvisionedProductProvisioningParametersOutputReference = exports.servicecatalogProvisionedProductProvisioningParametersToHclTerraform = exports.servicecatalogProvisionedProductProvisioningParametersToTerraform = exports.ServicecatalogProvisionedProductOutputsList = exports.ServicecatalogProvisionedProductOutputsOutputReference = exports.servicecatalogProvisionedProductOutputsToHclTerraform = exports.servicecatalogProvisionedProductOutputsToTerraform = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function servicecatalogProvisionedProductOutputsToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {};
}
exports.servicecatalogProvisionedProductOutputsToTerraform = servicecatalogProvisionedProductOutputsToTerraform;
function servicecatalogProvisionedProductOutputsToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {};
return attrs;
}
exports.servicecatalogProvisionedProductOutputsToHclTerraform = servicecatalogProvisionedProductOutputsToHclTerraform;
class ServicecatalogProvisionedProductOutputsOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
}
}
// description - computed: true, optional: false, required: false
get description() {
return this.getStringAttribute('description');
}
// key - computed: true, optional: false, required: false
get key() {
return this.getStringAttribute('key');
}
// value - computed: true, optional: false, required: false
get value() {
return this.getStringAttribute('value');
}
}
exports.ServicecatalogProvisionedProductOutputsOutputReference = ServicecatalogProvisionedProductOutputsOutputReference;
_a = JSII_RTTI_SYMBOL_1;
ServicecatalogProvisionedProductOutputsOutputReference[_a] = { fqn: "@cdktf/provider-aws.servicecatalogProvisionedProduct.ServicecatalogProvisionedProductOutputsOutputReference", version: "19.50.0" };
class ServicecatalogProvisionedProductOutputsList extends cdktf.ComplexList {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new ServicecatalogProvisionedProductOutputsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.ServicecatalogProvisionedProductOutputsList = ServicecatalogProvisionedProductOutputsList;
_b = JSII_RTTI_SYMBOL_1;
ServicecatalogProvisionedProductOutputsList[_b] = { fqn: "@cdktf/provider-aws.servicecatalogProvisionedProduct.ServicecatalogProvisionedProductOutputsList", version: "19.50.0" };
function servicecatalogProvisionedProductProvisioningParametersToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
key: cdktf.stringToTerraform(struct.key),
use_previous_value: cdktf.booleanToTerraform(struct.usePreviousValue),
value: cdktf.stringToTerraform(struct.value),
};
}
exports.servicecatalogProvisionedProductProvisioningParametersToTerraform = servicecatalogProvisionedProductProvisioningParametersToTerraform;
function servicecatalogProvisionedProductProvisioningParametersToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
key: {
value: cdktf.stringToHclTerraform(struct.key),
isBlock: false,
type: "simple",
storageClassType: "string",
},
use_previous_value: {
value: cdktf.booleanToHclTerraform(struct.usePreviousValue),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
value: {
value: cdktf.stringToHclTerraform(struct.value),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.servicecatalogProvisionedProductProvisioningParametersToHclTerraform = servicecatalogProvisionedProductProvisioningParametersToHclTerraform;
class ServicecatalogProvisionedProductProvisioningParametersOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._key !== undefined) {
hasAnyValues = true;
internalValueResult.key = this._key;
}
if (this._usePreviousValue !== undefined) {
hasAnyValues = true;
internalValueResult.usePreviousValue = this._usePreviousValue;
}
if (this._value !== undefined) {
hasAnyValues = true;
internalValueResult.value = this._value;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._key = undefined;
this._usePreviousValue = undefined;
this._value = undefined;
}
else if (cdktf.Tokenization.isResolvable(value)) {
this.isEmptyObject = false;
this.resolvableValue = value;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this.resolvableValue = undefined;
this._key = value.key;
this._usePreviousValue = value.usePreviousValue;
this._value = value.value;
}
}
get key() {
return this.getStringAttribute('key');
}
set key(value) {
this._key = value;
}
// Temporarily expose input value. Use with caution.
get keyInput() {
return this._key;
}
get usePreviousValue() {
return this.getBooleanAttribute('use_previous_value');
}
set usePreviousValue(value) {
this._usePreviousValue = value;
}
resetUsePreviousValue() {
this._usePreviousValue = undefined;
}
// Temporarily expose input value. Use with caution.
get usePreviousValueInput() {
return this._usePreviousValue;
}
get value() {
return this.getStringAttribute('value');
}
set value(value) {
this._value = value;
}
resetValue() {
this._value = undefined;
}
// Temporarily expose input value. Use with caution.
get valueInput() {
return this._value;
}
}
exports.ServicecatalogProvisionedProductProvisioningParametersOutputReference = ServicecatalogProvisionedProductProvisioningParametersOutputReference;
_c = JSII_RTTI_SYMBOL_1;
ServicecatalogProvisionedProductProvisioningParametersOutputReference[_c] = { fqn: "@cdktf/provider-aws.servicecatalogProvisionedProduct.ServicecatalogProvisionedProductProvisioningParametersOutputReference", version: "19.50.0" };
class ServicecatalogProvisionedProductProvisioningParametersList extends cdktf.ComplexList {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new ServicecatalogProvisionedProductProvisioningParametersOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.ServicecatalogProvisionedProductProvisioningParametersList = ServicecatalogProvisionedProductProvisioningParametersList;
_d = JSII_RTTI_SYMBOL_1;
ServicecatalogProvisionedProductProvisioningParametersList[_d] = { fqn: "@cdktf/provider-aws.servicecatalogProvisionedProduct.ServicecatalogProvisionedProductProvisioningParametersList", version: "19.50.0" };
function servicecatalogProvisionedProductStackSetProvisioningPreferencesToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
accounts: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.accounts),
failure_tolerance_count: cdktf.numberToTerraform(struct.failureToleranceCount),
failure_tolerance_percentage: cdktf.numberToTerraform(struct.failureTolerancePercentage),
max_concurrency_count: cdktf.numberToTerraform(struct.maxConcurrencyCount),
max_concurrency_percentage: cdktf.numberToTerraform(struct.maxConcurrencyPercentage),
regions: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.regions),
};
}
exports.servicecatalogProvisionedProductStackSetProvisioningPreferencesToTerraform = servicecatalogProvisionedProductStackSetProvisioningPreferencesToTerraform;
function servicecatalogProvisionedProductStackSetProvisioningPreferencesToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
accounts: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.accounts),
isBlock: false,
type: "list",
storageClassType: "stringList",
},
failure_tolerance_count: {
value: cdktf.numberToHclTerraform(struct.failureToleranceCount),
isBlock: false,
type: "simple",
storageClassType: "number",
},
failure_tolerance_percentage: {
value: cdktf.numberToHclTerraform(struct.failureTolerancePercentage),
isBlock: false,
type: "simple",
storageClassType: "number",
},
max_concurrency_count: {
value: cdktf.numberToHclTerraform(struct.maxConcurrencyCount),
isBlock: false,
type: "simple",
storageClassType: "number",
},
max_concurrency_percentage: {
value: cdktf.numberToHclTerraform(struct.maxConcurrencyPercentage),
isBlock: false,
type: "simple",
storageClassType: "number",
},
regions: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.regions),
isBlock: false,
type: "list",
storageClassType: "stringList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.servicecatalogProvisionedProductStackSetProvisioningPreferencesToHclTerraform = servicecatalogProvisionedProductStackSetProvisioningPreferencesToHclTerraform;
class ServicecatalogProvisionedProductStackSetProvisioningPreferencesOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._accounts !== undefined) {
hasAnyValues = true;
internalValueResult.accounts = this._accounts;
}
if (this._failureToleranceCount !== undefined) {
hasAnyValues = true;
internalValueResult.failureToleranceCount = this._failureToleranceCount;
}
if (this._failureTolerancePercentage !== undefined) {
hasAnyValues = true;
internalValueResult.failureTolerancePercentage = this._failureTolerancePercentage;
}
if (this._maxConcurrencyCount !== undefined) {
hasAnyValues = true;
internalValueResult.maxConcurrencyCount = this._maxConcurrencyCount;
}
if (this._maxConcurrencyPercentage !== undefined) {
hasAnyValues = true;
internalValueResult.maxConcurrencyPercentage = this._maxConcurrencyPercentage;
}
if (this._regions !== undefined) {
hasAnyValues = true;
internalValueResult.regions = this._regions;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._accounts = undefined;
this._failureToleranceCount = undefined;
this._failureTolerancePercentage = undefined;
this._maxConcurrencyCount = undefined;
this._maxConcurrencyPercentage = undefined;
this._regions = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._accounts = value.accounts;
this._failureToleranceCount = value.failureToleranceCount;
this._failureTolerancePercentage = value.failureTolerancePercentage;
this._maxConcurrencyCount = value.maxConcurrencyCount;
this._maxConcurrencyPercentage = value.maxConcurrencyPercentage;
this._regions = value.regions;
}
}
get accounts() {
return this.getListAttribute('accounts');
}
set accounts(value) {
this._accounts = value;
}
resetAccounts() {
this._accounts = undefined;
}
// Temporarily expose input value. Use with caution.
get accountsInput() {
return this._accounts;
}
get failureToleranceCount() {
return this.getNumberAttribute('failure_tolerance_count');
}
set failureToleranceCount(value) {
this._failureToleranceCount = value;
}
resetFailureToleranceCount() {
this._failureToleranceCount = undefined;
}
// Temporarily expose input value. Use with caution.
get failureToleranceCountInput() {
return this._failureToleranceCount;
}
get failureTolerancePercentage() {
return this.getNumberAttribute('failure_tolerance_percentage');
}
set failureTolerancePercentage(value) {
this._failureTolerancePercentage = value;
}
resetFailureTolerancePercentage() {
this._failureTolerancePercentage = undefined;
}
// Temporarily expose input value. Use with caution.
get failureTolerancePercentageInput() {
return this._failureTolerancePercentage;
}
get maxConcurrencyCount() {
return this.getNumberAttribute('max_concurrency_count');
}
set maxConcurrencyCount(value) {
this._maxConcurrencyCount = value;
}
resetMaxConcurrencyCount() {
this._maxConcurrencyCount = undefined;
}
// Temporarily expose input value. Use with caution.
get maxConcurrencyCountInput() {
return this._maxConcurrencyCount;
}
get maxConcurrencyPercentage() {
return this.getNumberAttribute('max_concurrency_percentage');
}
set maxConcurrencyPercentage(value) {
this._maxConcurrencyPercentage = value;
}
resetMaxConcurrencyPercentage() {
this._maxConcurrencyPercentage = undefined;
}
// Temporarily expose input value. Use with caution.
get maxConcurrencyPercentageInput() {
return this._maxConcurrencyPercentage;
}
get regions() {
return this.getListAttribute('regions');
}
set regions(value) {
this._regions = value;
}
resetRegions() {
this._regions = undefined;
}
// Temporarily expose input value. Use with caution.
get regionsInput() {
return this._regions;
}
}
exports.ServicecatalogProvisionedProductStackSetProvisioningPreferencesOutputReference = ServicecatalogProvisionedProductStackSetProvisioningPreferencesOutputReference;
_e = JSII_RTTI_SYMBOL_1;
ServicecatalogProvisionedProductStackSetProvisioningPreferencesOutputReference[_e] = { fqn: "@cdktf/provider-aws.servicecatalogProvisionedProduct.ServicecatalogProvisionedProductStackSetProvisioningPreferencesOutputReference", version: "19.50.0" };
function servicecatalogProvisionedProductTimeoutsToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
create: cdktf.stringToTerraform(struct.create),
delete: cdktf.stringToTerraform(struct.delete),
read: cdktf.stringToTerraform(struct.read),
update: cdktf.stringToTerraform(struct.update),
};
}
exports.servicecatalogProvisionedProductTimeoutsToTerraform = servicecatalogProvisionedProductTimeoutsToTerraform;
function servicecatalogProvisionedProductTimeoutsToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
create: {
value: cdktf.stringToHclTerraform(struct.create),
isBlock: false,
type: "simple",
storageClassType: "string",
},
delete: {
value: cdktf.stringToHclTerraform(struct.delete),
isBlock: false,
type: "simple",
storageClassType: "string",
},
read: {
value: cdktf.stringToHclTerraform(struct.read),
isBlock: false,
type: "simple",
storageClassType: "string",
},
update: {
value: cdktf.stringToHclTerraform(struct.update),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.servicecatalogProvisionedProductTimeoutsToHclTerraform = servicecatalogProvisionedProductTimeoutsToHclTerraform;
class ServicecatalogProvisionedProductTimeoutsOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false);
this.isEmptyObject = false;
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._create !== undefined) {
hasAnyValues = true;
internalValueResult.create = this._create;
}
if (this._delete !== undefined) {
hasAnyValues = true;
internalValueResult.delete = this._delete;
}
if (this._read !== undefined) {
hasAnyValues = true;
internalValueResult.read = this._read;
}
if (this._update !== undefined) {
hasAnyValues = true;
internalValueResult.update = this._update;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._create = undefined;
this._delete = undefined;
this._read = undefined;
this._update = undefined;
}
else if (cdktf.Tokenization.isResolvable(value)) {
this.isEmptyObject = false;
this.resolvableValue = value;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this.resolvableValue = undefined;
this._create = value.create;
this._delete = value.delete;
this._read = value.read;
this._update = value.update;
}
}
get create() {
return this.getStringAttribute('create');
}
set create(value) {
this._create = value;
}
resetCreate() {
this._create = undefined;
}
// Temporarily expose input value. Use with caution.
get createInput() {
return this._create;
}
get delete() {
return this.getStringAttribute('delete');
}
set delete(value) {
this._delete = value;
}
resetDelete() {
this._delete = undefined;
}
// Temporarily expose input value. Use with caution.
get deleteInput() {
return this._delete;
}
get read() {
return this.getStringAttribute('read');
}
set read(value) {
this._read = value;
}
resetRead() {
this._read = undefined;
}
// Temporarily expose input value. Use with caution.
get readInput() {
return this._read;
}
get update() {
return this.getStringAttribute('update');
}
set update(value) {
this._update = value;
}
resetUpdate() {
this._update = undefined;
}
// Temporarily expose input value. Use with caution.
get updateInput() {
return this._update;
}
}
exports.ServicecatalogProvisionedProductTimeoutsOutputReference = ServicecatalogProvisionedProductTimeoutsOutputReference;
_f = JSII_RTTI_SYMBOL_1;
ServicecatalogProvisionedProductTimeoutsOutputReference[_f] = { fqn: "@cdktf/provider-aws.servicecatalogProvisionedProduct.ServicecatalogProvisionedProductTimeoutsOutputReference", version: "19.50.0" };
/**
* Represents a {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/servicecatalog_provisioned_product aws_servicecatalog_provisioned_product}
*/
class ServicecatalogProvisionedProduct extends cdktf.TerraformResource {
// ==============
// STATIC Methods
// ==============
/**
* Generates CDKTF code for importing a ServicecatalogProvisionedProduct resource upon running "cdktf plan <stack-name>"
* @param scope The scope in which to define this construct
* @param importToId The construct id used in the generated config for the ServicecatalogProvisionedProduct to import
* @param importFromId The id of the existing ServicecatalogProvisionedProduct that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/servicecatalog_provisioned_product#import import section} in the documentation of this resource for the id to use
* @param provider? Optional instance of the provider where the ServicecatalogProvisionedProduct to import is found
*/
static generateConfigForImport(scope, importToId, importFromId, provider) {
return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "aws_servicecatalog_provisioned_product", importId: importFromId, provider });
}
// ===========
// INITIALIZER
// ===========
/**
* Create a new {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/servicecatalog_provisioned_product aws_servicecatalog_provisioned_product} Resource
*
* @param scope The scope in which to define this construct
* @param id The scoped construct ID. Must be unique amongst siblings in the same scope
* @param options ServicecatalogProvisionedProductConfig
*/
constructor(scope, id, config) {
super(scope, id, {
terraformResourceType: 'aws_servicecatalog_provisioned_product',
terraformGeneratorMetadata: {
providerName: 'aws',
providerVersion: '5.84.0',
providerVersionConstraint: '~> 5.0'
},
provider: config.provider,
dependsOn: config.dependsOn,
count: config.count,
lifecycle: config.lifecycle,
provisioners: config.provisioners,
connection: config.connection,
forEach: config.forEach
});
// outputs - computed: true, optional: false, required: false
this._outputs = new ServicecatalogProvisionedProductOutputsList(this, "outputs", true);
// provisioning_parameters - computed: false, optional: true, required: false
this._provisioningParameters = new ServicecatalogProvisionedProductProvisioningParametersList(this, "provisioning_parameters", false);
// stack_set_provisioning_preferences - computed: false, optional: true, required: false
this._stackSetProvisioningPreferences = new ServicecatalogProvisionedProductStackSetProvisioningPreferencesOutputReference(this, "stack_set_provisioning_preferences");
// timeouts - computed: false, optional: true, required: false
this._timeouts = new ServicecatalogProvisionedProductTimeoutsOutputReference(this, "timeouts");
this._acceptLanguage = config.acceptLanguage;
this._id = config.id;
this._ignoreErrors = config.ignoreErrors;
this._name = config.name;
this._notificationArns = config.notificationArns;
this._pathId = config.pathId;
this._pathName = config.pathName;
this._productId = config.productId;
this._productName = config.productName;
this._provisioningArtifactId = config.provisioningArtifactId;
this._provisioningArtifactName = config.provisioningArtifactName;
this._retainPhysicalResources = config.retainPhysicalResources;
this._tags = config.tags;
this._tagsAll = config.tagsAll;
this._provisioningParameters.internalValue = config.provisioningParameters;
this._stackSetProvisioningPreferences.internalValue = config.stackSetProvisioningPreferences;
this._timeouts.internalValue = config.timeouts;
}
get acceptLanguage() {
return this.getStringAttribute('accept_language');
}
set acceptLanguage(value) {
this._acceptLanguage = value;
}
resetAcceptLanguage() {
this._acceptLanguage = undefined;
}
// Temporarily expose input value. Use with caution.
get acceptLanguageInput() {
return this._acceptLanguage;
}
// arn - computed: true, optional: false, required: false
get arn() {
return this.getStringAttribute('arn');
}
// cloudwatch_dashboard_names - computed: true, optional: false, required: false
get cloudwatchDashboardNames() {
return cdktf.Fn.tolist(this.getListAttribute('cloudwatch_dashboard_names'));
}
// created_time - computed: true, optional: false, required: false
get createdTime() {
return this.getStringAttribute('created_time');
}
get id() {
return this.getStringAttribute('id');
}
set id(value) {
this._id = value;
}
resetId() {
this._id = undefined;
}
// Temporarily expose input value. Use with caution.
get idInput() {
return this._id;
}
get ignoreErrors() {
return this.getBooleanAttribute('ignore_errors');
}
set ignoreErrors(value) {
this._ignoreErrors = value;
}
resetIgnoreErrors() {
this._ignoreErrors = undefined;
}
// Temporarily expose input value. Use with caution.
get ignoreErrorsInput() {
return this._ignoreErrors;
}
// last_provisioning_record_id - computed: true, optional: false, required: false
get lastProvisioningRecordId() {
return this.getStringAttribute('last_provisioning_record_id');
}
// last_record_id - computed: true, optional: false, required: false
get lastRecordId() {
return this.getStringAttribute('last_record_id');
}
// last_successful_provisioning_record_id - computed: true, optional: false, required: false
get lastSuccessfulProvisioningRecordId() {
return this.getStringAttribute('last_successful_provisioning_record_id');
}
// launch_role_arn - computed: true, optional: false, required: false
get launchRoleArn() {
return this.getStringAttribute('launch_role_arn');
}
get name() {
return this.getStringAttribute('name');
}
set name(value) {
this._name = value;
}
// Temporarily expose input value. Use with caution.
get nameInput() {
return this._name;
}
get notificationArns() {
return this.getListAttribute('notification_arns');
}
set notificationArns(value) {
this._notificationArns = value;
}
resetNotificationArns() {
this._notificationArns = undefined;
}
// Temporarily expose input value. Use with caution.
get notificationArnsInput() {
return this._notificationArns;
}
get outputs() {
return this._outputs;
}
get pathId() {
return this.getStringAttribute('path_id');
}
set pathId(value) {
this._pathId = value;
}
resetPathId() {
this._pathId = undefined;
}
// Temporarily expose input value. Use with caution.
get pathIdInput() {
return this._pathId;
}
get pathName() {
return this.getStringAttribute('path_name');
}
set pathName(value) {
this._pathName = value;
}
resetPathName() {
this._pathName = undefined;
}
// Temporarily expose input value. Use with caution.
get pathNameInput() {
return this._pathName;
}
get productId() {
return this.getStringAttribute('product_id');
}
set productId(value) {
this._productId = value;
}
resetProductId() {
this._productId = undefined;
}
// Temporarily expose input value. Use with caution.
get productIdInput() {
return this._productId;
}
get productName() {
return this.getStringAttribute('product_name');
}
set productName(value) {
this._productName = value;
}
resetProductName() {
this._productName = undefined;
}
// Temporarily expose input value. Use with caution.
get productNameInput() {
return this._productName;
}
get provisioningArtifactId() {
return this.getStringAttribute('provisioning_artifact_id');
}
set provisioningArtifactId(value) {
this._provisioningArtifactId = value;
}
resetProvisioningArtifactId() {
this._provisioningArtifactId = undefined;
}
// Temporarily expose input value. Use with caution.
get provisioningArtifactIdInput() {
return this._provisioningArtifactId;
}
get provisioningArtifactName() {
return this.getStringAttribute('provisioning_artifact_name');
}
set provisioningArtifactName(value) {
this._provisioningArtifactName = value;
}
resetProvisioningArtifactName() {
this._provisioningArtifactName = undefined;
}
// Temporarily expose input value. Use with caution.
get provisioningArtifactNameInput() {
return this._provisioningArtifactName;
}
get retainPhysicalResources() {
return this.getBooleanAttribute('retain_physical_resources');
}
set retainPhysicalResources(value) {
this._retainPhysicalResources = value;
}
resetRetainPhysicalResources() {
this._retainPhysicalResources = undefined;
}
// Temporarily expose input value. Use with caution.
get retainPhysicalResourcesInput() {
return this._retainPhysicalResources;
}
// status - computed: true, optional: false, required: false
get status() {
return this.getStringAttribute('status');
}
// status_message - computed: true, optional: false, required: false
get statusMessage() {
return this.getStringAttribute('status_message');
}
get tags() {
return this.getStringMapAttribute('tags');
}
set tags(value) {
this._tags = value;
}
resetTags() {
this._tags = undefined;
}
// Temporarily expose input value. Use with caution.
get tagsInput() {
return this._tags;
}
get tagsAll() {
return this.getStringMapAttribute('tags_all');
}
set tagsAll(value) {
this._tagsAll = value;
}
resetTagsAll() {
this._tagsAll = undefined;
}
// Temporarily expose input value. Use with caution.
get tagsAllInput() {
return this._tagsAll;
}
// type - computed: true, optional: false, required: false
get type() {
return this.getStringAttribute('type');
}
get provisioningParameters() {
return this._provisioningParameters;
}
putProvisioningParameters(value) {
this._provisioningParameters.internalValue = value;
}
resetProvisioningParameters() {
this._provisioningParameters.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get provisioningParametersInput() {
return this._provisioningParameters.internalValue;
}
get stackSetProvisioningPreferences() {
return this._stackSetProvisioningPreferences;
}
putStackSetProvisioningPreferences(value) {
this._stackSetProvisioningPreferences.internalValue = value;
}
resetStackSetProvisioningPreferences() {
this._stackSetProvisioningPreferences.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get stackSetProvisioningPreferencesInput() {
return this._stackSetProvisioningPreferences.internalValue;
}
get timeouts() {
return this._timeouts;
}
putTimeouts(value) {
this._timeouts.internalValue = value;
}
resetTimeouts() {
this._timeouts.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get timeoutsInput() {
return this._timeouts.internalValue;
}
// =========
// SYNTHESIS
// =========
synthesizeAttributes() {
return {
accept_language: cdktf.stringToTerraform(this._acceptLanguage),
id: cdktf.stringToTerraform(this._id),
ignore_errors: cdktf.booleanToTerraform(this._ignoreErrors),
name: cdktf.stringToTerraform(this._name),
notification_arns: cdktf.listMapper(cdktf.stringToTerraform, false)(this._notificationArns),
path_id: cdktf.stringToTerraform(this._pathId),
path_name: cdktf.stringToTerraform(this._pathName),
product_id: cdktf.stringToTerraform(this._productId),
product_name: cdktf.stringToTerraform(this._productName),
provisioning_artifact_id: cdktf.stringToTerraform(this._provisioningArtifactId),
provisioning_artifact_name: cdktf.stringToTerraform(this._provisioningArtifactName),
retain_physical_resources: cdktf.booleanToTerraform(this._retainPhysicalResources),
tags: cdktf.hashMapper(cdktf.stringToTerraform)(this._tags),
tags_all: cdktf.hashMapper(cdktf.stringToTerraform)(this._tagsAll),
provisioning_parameters: cdktf.listMapper(servicecatalogProvisionedProductProvisioningParametersToTerraform, true)(this._provisioningParameters.internalValue),
stack_set_provisioning_preferences: servicecatalogProvisionedProductStackSetProvisioningPreferencesToTerraform(this._stackSetProvisioningPreferences.internalValue),
timeouts: servicecatalogProvisionedProductTimeoutsToTerraform(this._timeouts.internalValue),
};
}
synthesizeHclAttributes() {
const attrs = {
accept_language: {
value: cdktf.stringToHclTerraform(this._acceptLanguage),
isBlock: false,
type: "simple",
storageClassType: "string",
},
id: {
value: cdktf.stringToHclTerraform(this._id),
isBlock: false,
type: "simple",
storageClassType: "string",
},
ignore_errors: {
value: cdktf.booleanToHclTerraform(this._ignoreErrors),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
name: {
value: cdktf.stringToHclTerraform(this._name),
isBlock: false,
type: "simple",
storageClassType: "string",
},
notification_arns: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(this._notificationArns),
isBlock: false,
type: "list",
storageClassType: "stringList",
},
path_id: {
value: cdktf.stringToHclTerraform(this._pathId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
path_name: {
value: cdktf.stringToHclTerraform(this._pathName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
product_id: {
value: cdktf.stringToHclTerraform(this._productId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
product_name: {
value: cdktf.stringToHclTerraform(this._productName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
provisioning_artifact_id: {
value: cdktf.stringToHclTerraform(this._provisioningArtifactId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
provisioning_artifact_name: {
value: cdktf.stringToHclTerraform(this._provisioningArtifactName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
retain_physical_resources: {
value: cdktf.booleanToHclTerraform(this._retainPhysicalResources),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
tags: {
value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(this._tags),
isBlock: false,
type: "map",
storageClassType: "stringMap",
},
tags_all: {
value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(this._tagsAll),
isBlock: false,
type: "map",
storageClassType: "stringMap",
},
provisioning_parameters: {
value: cdktf.listMapperHcl(servicecatalogProvisionedProductProvisioningParametersToHclTerraform, true)(this._provisioningParameters.internalValue),
isBlock: true,
type: "list",
storageClassType: "ServicecatalogProvisionedProductProvisioningParametersList",
},
stack_set_provisioning_preferences: {
value: servicecatalogProvisionedProductStackSetProvisioningPreferencesToHclTerraform(this._stackSetProvisioningPreferences.internalValue),
isBlock: true,
type: "list",
storageClassType: "ServicecatalogProvisionedProductStackSetProvisioningPreferencesList",
},
timeouts: {
value: servicecatalogProvisionedProductTimeoutsToHclTerraform(this._timeouts.internalValue),
isBlock: true,
type: "struct",
storageClassType: "ServicecatalogProvisionedProductTimeouts",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
}
exports.ServicecatalogProvisionedProduct = ServicecatalogProvisionedProduct;
_g = JSII_RTTI_SYMBOL_1;
ServicecatalogProvisionedProduct[_g] = { fqn: "@cdktf/provider-aws.servicecatalogProvisionedProduct.ServicecatalogProvisionedProduct", version: "19.50.0" };
// =================
// STATIC PROPERTIES
// =================
ServicecatalogProvisionedProduct.tfResourceType = "aws_servicecatalog_provisioned_product";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2VydmljZWNhdGFsb2ctcHJvdmlzaW9uZWQtcHJvZHVjdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQVNBLCtCQUErQjtBQXNGL0IsU0FBZ0Isa0RBQWtELENBQUMsTUFBZ0Q7SUFDakgsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUFDLE9BQU8sTUFBTSxDQUFDO0lBQUMsQ0FBQztJQUM1RixJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsb0hBQW9ILENBQUMsQ0FBQztJQUN4SSxDQUFDO0lBQ0QsT0FBTyxFQUNOLENBQUE7QUFDSCxDQUFDO0FBUEQsZ0hBT0M7QUFHRCxTQUFnQixxREFBcUQsQ0FBQyxNQUFnRDtJQUNwSCxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQUMsT0FBTyxNQUFNLENBQUM7SUFBQyxDQUFDO0lBQzVGLElBQUksS0FBSyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxvSEFBb0gsQ0FBQyxDQUFDO0lBQ3hJLENBQUM7SUFDRCxNQUFNLEtBQUssR0FBRyxFQUNiLENBQUM7SUFDRixPQUFPLEtBQUssQ0FBQztBQUNmLENBQUM7QUFSRCxzSEFRQztBQUVELE1BQWEsc0RBQXVELFNBQVEsS0FBSyxDQUFDLGFBQWE7SUFHN0Y7Ozs7O01BS0U7SUFDRixZQUFtQixpQkFBNkMsRUFBRSxrQkFBMEIsRUFBRSxrQkFBMEIsRUFBRSxzQkFBK0I7UUFDdkosS0FBSyxDQUFDLGlCQUFpQixFQUFFLGtCQUFrQixFQUFFLHNCQUFzQixFQUFFLGtCQUFrQixDQUFDLENBQUM7UUFUbkYsa0JBQWEsR0FBRyxLQUFLLENBQUM7SUFVOUIsQ0FBQztJQUVELElBQVcsYUFBYTtRQUN0QixJQUFJLFlBQVksR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDO1FBQ3RDLE1BQU0sbUJBQW1CLEdBQVEsRUFBRSxDQUFDO1FBQ3BDLE9BQU8sWUFBWSxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ3hELENBQUM7SUFFRCxJQUFXLGFBQWEsQ0FBQyxLQUEwRDtRQUNqRixJQUFJLEtBQUssS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN4QixJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQztRQUM3QixDQUFDO2FBQ0ksQ0FBQztZQUNKLElBQUksQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDO1FBQ3ZELENBQUM7SUFDSCxDQUFDO0lBRUQsaUVBQWlFO0lBQ2pFLElBQVcsV0FBVztRQUNwQixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQseURBQXlEO0lBQ3pELElBQVcsR0FBRztRQUNaLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRCwyREFBMkQ7SUFDM0QsSUFBVyxLQUFLO1FBQ2QsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDMUMsQ0FBQzs7QUF6Q0gsd0hBMENDOzs7QUFFRCxNQUFhLDJDQUE0QyxTQUFRLEtBQUssQ0FBQyxXQUFXO0lBRWhGOzs7O01BSUU7SUFDRixZQUFzQixpQkFBNkMsRUFBWSxrQkFBMEIsRUFBWSxRQUFpQjtRQUNwSSxLQUFLLENBQUMsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsUUFBUSxDQUFDLENBQUE7UUFEbEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUE0QjtRQUFZLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBUTtRQUFZLGFBQVEsR0FBUixRQUFRLENBQVM7SUFFdEksQ0FBQztJQUVEOztNQUVFO0lBQ0ssR0FBRyxDQUFDLEtBQWE7UUFDdEIsT0FBTyxJQUFJLHNEQUFzRCxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMzSSxDQUFDOztBQWhCSCxrR0FpQkM7OztBQWdCRCxTQUFnQixpRUFBaUUsQ0FBQyxNQUFtRjtJQUNuSyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQUMsT0FBTyxNQUFNLENBQUM7SUFBQyxDQUFDO0lBQzVGLElBQUksS0FBSyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxvSEFBb0gsQ0FBQyxDQUFDO0lBQ3hJLENBQUM7SUFDRCxPQUFPO1FBQ0wsR0FBRyxFQUFFLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxNQUFPLENBQUMsR0FBRyxDQUFDO1FBQ3pDLGtCQUFrQixFQUFFLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxNQUFPLENBQUMsZ0JBQWdCLENBQUM7UUFDdEUsS0FBSyxFQUFFLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxNQUFPLENBQUMsS0FBSyxDQUFDO0tBQzlDLENBQUE7QUFDSCxDQUFDO0FBVkQsOElBVUM7QUFHRCxTQUFnQixvRUFBb0UsQ0FBQyxNQUFtRjtJQUN0SyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQUMsT0FBTyxNQUFNLENBQUM7SUFBQyxDQUFDO0lBQzVGLElBQUksS0FBSyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxvSEFBb0gsQ0FBQyxDQUFDO0lBQ3hJLENBQUM7SUFDRCxNQUFNLEtBQUssR0FBRztRQUNaLEdBQUcsRUFBRTtZQUNILEtBQUssRUFBRSxLQUFLLENBQUMsb0JBQW9CLENBQUMsTUFBTyxDQUFDLEdBQUcsQ0FBQztZQUM5QyxPQUFPLEVBQUUsS0FBSztZQUNkLElBQUksRUFBRSxRQUFRO1lBQ2QsZ0JBQWdCLEVBQUUsUUFBUTtTQUMzQjtRQUNELGtCQUFrQixFQUFFO1lBQ2xCLEtBQUssRUFBRSxLQUFLLENBQUMscUJBQXFCLENBQUMsTUFBTyxDQUFDLGdCQUFnQixDQUFDO1lBQzVELE9BQU8sRUFBRSxLQUFLO1lBQ2QsSUFBSSxFQUFFLFFBQVE7WUFDZCxnQkFBZ0IsRUFBRSxTQUFTO1NBQzVCO1FBQ0QsS0FBSyxFQUFFO1lBQ0wsS0FBSyxFQUFFLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxNQUFPLENBQUMsS0FBSyxDQUFDO1lBQ2hELE9BQU8sRUFBRSxLQUFLO1lBQ2QsSUFBSSxFQUFFLFFBQVE7WUFDZCxnQkFBZ0IsRUFBRSxRQUFRO1NBQzNCO0tBQ0YsQ0FBQztJQUVGLDhCQUE4QjtJQUM5QixPQUFPLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxLQUFLLFNBQVMsSUFBSSxLQUFLLENBQUMsS0FBSyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUM7QUFDNUgsQ0FBQztBQTVCRCxvSkE0QkM7QUFFRCxNQUFhLHFFQUFzRSxTQUFRLEtBQUssQ0FBQyxhQUFhO0lBSTVH