@cdktf/provider-google
Version:
Prebuilt google Provider for Terraform CDK (cdktf)
1,187 lines • 170 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ApphubApplication = exports.ApphubApplicationTimeoutsOutputReference = exports.apphubApplicationTimeoutsToHclTerraform = exports.apphubApplicationTimeoutsToTerraform = exports.ApphubApplicationScopeOutputReference = exports.apphubApplicationScopeToHclTerraform = exports.apphubApplicationScopeToTerraform = exports.ApphubApplicationAttributesOutputReference = exports.apphubApplicationAttributesToHclTerraform = exports.apphubApplicationAttributesToTerraform = exports.ApphubApplicationAttributesOperatorOwnersList = exports.ApphubApplicationAttributesOperatorOwnersOutputReference = exports.apphubApplicationAttributesOperatorOwnersToHclTerraform = exports.apphubApplicationAttributesOperatorOwnersToTerraform = exports.ApphubApplicationAttributesEnvironmentOutputReference = exports.apphubApplicationAttributesEnvironmentToHclTerraform = exports.apphubApplicationAttributesEnvironmentToTerraform = exports.ApphubApplicationAttributesDeveloperOwnersList = exports.ApphubApplicationAttributesDeveloperOwnersOutputReference = exports.apphubApplicationAttributesDeveloperOwnersToHclTerraform = exports.apphubApplicationAttributesDeveloperOwnersToTerraform = exports.ApphubApplicationAttributesCriticalityOutputReference = exports.apphubApplicationAttributesCriticalityToHclTerraform = exports.apphubApplicationAttributesCriticalityToTerraform = exports.ApphubApplicationAttributesBusinessOwnersList = exports.ApphubApplicationAttributesBusinessOwnersOutputReference = exports.apphubApplicationAttributesBusinessOwnersToHclTerraform = exports.apphubApplicationAttributesBusinessOwnersToTerraform = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function apphubApplicationAttributesBusinessOwnersToTerraform(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 {
display_name: cdktf.stringToTerraform(struct.displayName),
email: cdktf.stringToTerraform(struct.email),
};
}
exports.apphubApplicationAttributesBusinessOwnersToTerraform = apphubApplicationAttributesBusinessOwnersToTerraform;
function apphubApplicationAttributesBusinessOwnersToHclTerraform(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 = {
display_name: {
value: cdktf.stringToHclTerraform(struct.displayName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
email: {
value: cdktf.stringToHclTerraform(struct.email),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.apphubApplicationAttributesBusinessOwnersToHclTerraform = apphubApplicationAttributesBusinessOwnersToHclTerraform;
class ApphubApplicationAttributesBusinessOwnersOutputReference 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._displayName !== undefined) {
hasAnyValues = true;
internalValueResult.displayName = this._displayName;
}
if (this._email !== undefined) {
hasAnyValues = true;
internalValueResult.email = this._email;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._displayName = undefined;
this._email = 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._displayName = value.displayName;
this._email = value.email;
}
}
get displayName() {
return this.getStringAttribute('display_name');
}
set displayName(value) {
this._displayName = value;
}
resetDisplayName() {
this._displayName = undefined;
}
// Temporarily expose input value. Use with caution.
get displayNameInput() {
return this._displayName;
}
get email() {
return this.getStringAttribute('email');
}
set email(value) {
this._email = value;
}
// Temporarily expose input value. Use with caution.
get emailInput() {
return this._email;
}
}
exports.ApphubApplicationAttributesBusinessOwnersOutputReference = ApphubApplicationAttributesBusinessOwnersOutputReference;
_a = JSII_RTTI_SYMBOL_1;
ApphubApplicationAttributesBusinessOwnersOutputReference[_a] = { fqn: "@cdktf/provider-google.apphubApplication.ApphubApplicationAttributesBusinessOwnersOutputReference", version: "14.12.0" };
class ApphubApplicationAttributesBusinessOwnersList 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 ApphubApplicationAttributesBusinessOwnersOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.ApphubApplicationAttributesBusinessOwnersList = ApphubApplicationAttributesBusinessOwnersList;
_b = JSII_RTTI_SYMBOL_1;
ApphubApplicationAttributesBusinessOwnersList[_b] = { fqn: "@cdktf/provider-google.apphubApplication.ApphubApplicationAttributesBusinessOwnersList", version: "14.12.0" };
function apphubApplicationAttributesCriticalityToTerraform(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 {
type: cdktf.stringToTerraform(struct.type),
};
}
exports.apphubApplicationAttributesCriticalityToTerraform = apphubApplicationAttributesCriticalityToTerraform;
function apphubApplicationAttributesCriticalityToHclTerraform(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 = {
type: {
value: cdktf.stringToHclTerraform(struct.type),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.apphubApplicationAttributesCriticalityToHclTerraform = apphubApplicationAttributesCriticalityToHclTerraform;
class ApphubApplicationAttributesCriticalityOutputReference 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._type !== undefined) {
hasAnyValues = true;
internalValueResult.type = this._type;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._type = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._type = value.type;
}
}
get type() {
return this.getStringAttribute('type');
}
set type(value) {
this._type = value;
}
// Temporarily expose input value. Use with caution.
get typeInput() {
return this._type;
}
}
exports.ApphubApplicationAttributesCriticalityOutputReference = ApphubApplicationAttributesCriticalityOutputReference;
_c = JSII_RTTI_SYMBOL_1;
ApphubApplicationAttributesCriticalityOutputReference[_c] = { fqn: "@cdktf/provider-google.apphubApplication.ApphubApplicationAttributesCriticalityOutputReference", version: "14.12.0" };
function apphubApplicationAttributesDeveloperOwnersToTerraform(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 {
display_name: cdktf.stringToTerraform(struct.displayName),
email: cdktf.stringToTerraform(struct.email),
};
}
exports.apphubApplicationAttributesDeveloperOwnersToTerraform = apphubApplicationAttributesDeveloperOwnersToTerraform;
function apphubApplicationAttributesDeveloperOwnersToHclTerraform(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 = {
display_name: {
value: cdktf.stringToHclTerraform(struct.displayName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
email: {
value: cdktf.stringToHclTerraform(struct.email),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.apphubApplicationAttributesDeveloperOwnersToHclTerraform = apphubApplicationAttributesDeveloperOwnersToHclTerraform;
class ApphubApplicationAttributesDeveloperOwnersOutputReference 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._displayName !== undefined) {
hasAnyValues = true;
internalValueResult.displayName = this._displayName;
}
if (this._email !== undefined) {
hasAnyValues = true;
internalValueResult.email = this._email;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._displayName = undefined;
this._email = 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._displayName = value.displayName;
this._email = value.email;
}
}
get displayName() {
return this.getStringAttribute('display_name');
}
set displayName(value) {
this._displayName = value;
}
resetDisplayName() {
this._displayName = undefined;
}
// Temporarily expose input value. Use with caution.
get displayNameInput() {
return this._displayName;
}
get email() {
return this.getStringAttribute('email');
}
set email(value) {
this._email = value;
}
// Temporarily expose input value. Use with caution.
get emailInput() {
return this._email;
}
}
exports.ApphubApplicationAttributesDeveloperOwnersOutputReference = ApphubApplicationAttributesDeveloperOwnersOutputReference;
_d = JSII_RTTI_SYMBOL_1;
ApphubApplicationAttributesDeveloperOwnersOutputReference[_d] = { fqn: "@cdktf/provider-google.apphubApplication.ApphubApplicationAttributesDeveloperOwnersOutputReference", version: "14.12.0" };
class ApphubApplicationAttributesDeveloperOwnersList 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 ApphubApplicationAttributesDeveloperOwnersOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.ApphubApplicationAttributesDeveloperOwnersList = ApphubApplicationAttributesDeveloperOwnersList;
_e = JSII_RTTI_SYMBOL_1;
ApphubApplicationAttributesDeveloperOwnersList[_e] = { fqn: "@cdktf/provider-google.apphubApplication.ApphubApplicationAttributesDeveloperOwnersList", version: "14.12.0" };
function apphubApplicationAttributesEnvironmentToTerraform(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 {
type: cdktf.stringToTerraform(struct.type),
};
}
exports.apphubApplicationAttributesEnvironmentToTerraform = apphubApplicationAttributesEnvironmentToTerraform;
function apphubApplicationAttributesEnvironmentToHclTerraform(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 = {
type: {
value: cdktf.stringToHclTerraform(struct.type),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.apphubApplicationAttributesEnvironmentToHclTerraform = apphubApplicationAttributesEnvironmentToHclTerraform;
class ApphubApplicationAttributesEnvironmentOutputReference 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._type !== undefined) {
hasAnyValues = true;
internalValueResult.type = this._type;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._type = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._type = value.type;
}
}
get type() {
return this.getStringAttribute('type');
}
set type(value) {
this._type = value;
}
// Temporarily expose input value. Use with caution.
get typeInput() {
return this._type;
}
}
exports.ApphubApplicationAttributesEnvironmentOutputReference = ApphubApplicationAttributesEnvironmentOutputReference;
_f = JSII_RTTI_SYMBOL_1;
ApphubApplicationAttributesEnvironmentOutputReference[_f] = { fqn: "@cdktf/provider-google.apphubApplication.ApphubApplicationAttributesEnvironmentOutputReference", version: "14.12.0" };
function apphubApplicationAttributesOperatorOwnersToTerraform(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 {
display_name: cdktf.stringToTerraform(struct.displayName),
email: cdktf.stringToTerraform(struct.email),
};
}
exports.apphubApplicationAttributesOperatorOwnersToTerraform = apphubApplicationAttributesOperatorOwnersToTerraform;
function apphubApplicationAttributesOperatorOwnersToHclTerraform(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 = {
display_name: {
value: cdktf.stringToHclTerraform(struct.displayName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
email: {
value: cdktf.stringToHclTerraform(struct.email),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.apphubApplicationAttributesOperatorOwnersToHclTerraform = apphubApplicationAttributesOperatorOwnersToHclTerraform;
class ApphubApplicationAttributesOperatorOwnersOutputReference 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._displayName !== undefined) {
hasAnyValues = true;
internalValueResult.displayName = this._displayName;
}
if (this._email !== undefined) {
hasAnyValues = true;
internalValueResult.email = this._email;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._displayName = undefined;
this._email = 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._displayName = value.displayName;
this._email = value.email;
}
}
get displayName() {
return this.getStringAttribute('display_name');
}
set displayName(value) {
this._displayName = value;
}
resetDisplayName() {
this._displayName = undefined;
}
// Temporarily expose input value. Use with caution.
get displayNameInput() {
return this._displayName;
}
get email() {
return this.getStringAttribute('email');
}
set email(value) {
this._email = value;
}
// Temporarily expose input value. Use with caution.
get emailInput() {
return this._email;
}
}
exports.ApphubApplicationAttributesOperatorOwnersOutputReference = ApphubApplicationAttributesOperatorOwnersOutputReference;
_g = JSII_RTTI_SYMBOL_1;
ApphubApplicationAttributesOperatorOwnersOutputReference[_g] = { fqn: "@cdktf/provider-google.apphubApplication.ApphubApplicationAttributesOperatorOwnersOutputReference", version: "14.12.0" };
class ApphubApplicationAttributesOperatorOwnersList 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 ApphubApplicationAttributesOperatorOwnersOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.ApphubApplicationAttributesOperatorOwnersList = ApphubApplicationAttributesOperatorOwnersList;
_h = JSII_RTTI_SYMBOL_1;
ApphubApplicationAttributesOperatorOwnersList[_h] = { fqn: "@cdktf/provider-google.apphubApplication.ApphubApplicationAttributesOperatorOwnersList", version: "14.12.0" };
function apphubApplicationAttributesToTerraform(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 {
business_owners: cdktf.listMapper(apphubApplicationAttributesBusinessOwnersToTerraform, true)(struct.businessOwners),
criticality: apphubApplicationAttributesCriticalityToTerraform(struct.criticality),
developer_owners: cdktf.listMapper(apphubApplicationAttributesDeveloperOwnersToTerraform, true)(struct.developerOwners),
environment: apphubApplicationAttributesEnvironmentToTerraform(struct.environment),
operator_owners: cdktf.listMapper(apphubApplicationAttributesOperatorOwnersToTerraform, true)(struct.operatorOwners),
};
}
exports.apphubApplicationAttributesToTerraform = apphubApplicationAttributesToTerraform;
function apphubApplicationAttributesToHclTerraform(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 = {
business_owners: {
value: cdktf.listMapperHcl(apphubApplicationAttributesBusinessOwnersToHclTerraform, true)(struct.businessOwners),
isBlock: true,
type: "list",
storageClassType: "ApphubApplicationAttributesBusinessOwnersList",
},
criticality: {
value: apphubApplicationAttributesCriticalityToHclTerraform(struct.criticality),
isBlock: true,
type: "list",
storageClassType: "ApphubApplicationAttributesCriticalityList",
},
developer_owners: {
value: cdktf.listMapperHcl(apphubApplicationAttributesDeveloperOwnersToHclTerraform, true)(struct.developerOwners),
isBlock: true,
type: "list",
storageClassType: "ApphubApplicationAttributesDeveloperOwnersList",
},
environment: {
value: apphubApplicationAttributesEnvironmentToHclTerraform(struct.environment),
isBlock: true,
type: "list",
storageClassType: "ApphubApplicationAttributesEnvironmentList",
},
operator_owners: {
value: cdktf.listMapperHcl(apphubApplicationAttributesOperatorOwnersToHclTerraform, true)(struct.operatorOwners),
isBlock: true,
type: "list",
storageClassType: "ApphubApplicationAttributesOperatorOwnersList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.apphubApplicationAttributesToHclTerraform = apphubApplicationAttributesToHclTerraform;
class ApphubApplicationAttributesOutputReference 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;
// business_owners - computed: false, optional: true, required: false
this._businessOwners = new ApphubApplicationAttributesBusinessOwnersList(this, "business_owners", false);
// criticality - computed: false, optional: true, required: false
this._criticality = new ApphubApplicationAttributesCriticalityOutputReference(this, "criticality");
// developer_owners - computed: false, optional: true, required: false
this._developerOwners = new ApphubApplicationAttributesDeveloperOwnersList(this, "developer_owners", false);
// environment - computed: false, optional: true, required: false
this._environment = new ApphubApplicationAttributesEnvironmentOutputReference(this, "environment");
// operator_owners - computed: false, optional: true, required: false
this._operatorOwners = new ApphubApplicationAttributesOperatorOwnersList(this, "operator_owners", false);
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._businessOwners?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.businessOwners = this._businessOwners?.internalValue;
}
if (this._criticality?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.criticality = this._criticality?.internalValue;
}
if (this._developerOwners?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.developerOwners = this._developerOwners?.internalValue;
}
if (this._environment?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.environment = this._environment?.internalValue;
}
if (this._operatorOwners?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.operatorOwners = this._operatorOwners?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._businessOwners.internalValue = undefined;
this._criticality.internalValue = undefined;
this._developerOwners.internalValue = undefined;
this._environment.internalValue = undefined;
this._operatorOwners.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._businessOwners.internalValue = value.businessOwners;
this._criticality.internalValue = value.criticality;
this._developerOwners.internalValue = value.developerOwners;
this._environment.internalValue = value.environment;
this._operatorOwners.internalValue = value.operatorOwners;
}
}
get businessOwners() {
return this._businessOwners;
}
putBusinessOwners(value) {
this._businessOwners.internalValue = value;
}
resetBusinessOwners() {
this._businessOwners.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get businessOwnersInput() {
return this._businessOwners.internalValue;
}
get criticality() {
return this._criticality;
}
putCriticality(value) {
this._criticality.internalValue = value;
}
resetCriticality() {
this._criticality.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get criticalityInput() {
return this._criticality.internalValue;
}
get developerOwners() {
return this._developerOwners;
}
putDeveloperOwners(value) {
this._developerOwners.internalValue = value;
}
resetDeveloperOwners() {
this._developerOwners.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get developerOwnersInput() {
return this._developerOwners.internalValue;
}
get environment() {
return this._environment;
}
putEnvironment(value) {
this._environment.internalValue = value;
}
resetEnvironment() {
this._environment.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get environmentInput() {
return this._environment.internalValue;
}
get operatorOwners() {
return this._operatorOwners;
}
putOperatorOwners(value) {
this._operatorOwners.internalValue = value;
}
resetOperatorOwners() {
this._operatorOwners.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get operatorOwnersInput() {
return this._operatorOwners.internalValue;
}
}
exports.ApphubApplicationAttributesOutputReference = ApphubApplicationAttributesOutputReference;
_j = JSII_RTTI_SYMBOL_1;
ApphubApplicationAttributesOutputReference[_j] = { fqn: "@cdktf/provider-google.apphubApplication.ApphubApplicationAttributesOutputReference", version: "14.12.0" };
function apphubApplicationScopeToTerraform(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 {
type: cdktf.stringToTerraform(struct.type),
};
}
exports.apphubApplicationScopeToTerraform = apphubApplicationScopeToTerraform;
function apphubApplicationScopeToHclTerraform(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 = {
type: {
value: cdktf.stringToHclTerraform(struct.type),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.apphubApplicationScopeToHclTerraform = apphubApplicationScopeToHclTerraform;
class ApphubApplicationScopeOutputReference 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._type !== undefined) {
hasAnyValues = true;
internalValueResult.type = this._type;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._type = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._type = value.type;
}
}
get type() {
return this.getStringAttribute('type');
}
set type(value) {
this._type = value;
}
// Temporarily expose input value. Use with caution.
get typeInput() {
return this._type;
}
}
exports.ApphubApplicationScopeOutputReference = ApphubApplicationScopeOutputReference;
_k = JSII_RTTI_SYMBOL_1;
ApphubApplicationScopeOutputReference[_k] = { fqn: "@cdktf/provider-google.apphubApplication.ApphubApplicationScopeOutputReference", version: "14.12.0" };
function apphubApplicationTimeoutsToTerraform(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),
update: cdktf.stringToTerraform(struct.update),
};
}
exports.apphubApplicationTimeoutsToTerraform = apphubApplicationTimeoutsToTerraform;
function apphubApplicationTimeoutsToHclTerraform(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",
},
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.apphubApplicationTimeoutsToHclTerraform = apphubApplicationTimeoutsToHclTerraform;
class ApphubApplicationTimeoutsOutputReference 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._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._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._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 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.ApphubApplicationTimeoutsOutputReference = ApphubApplicationTimeoutsOutputReference;
_l = JSII_RTTI_SYMBOL_1;
ApphubApplicationTimeoutsOutputReference[_l] = { fqn: "@cdktf/provider-google.apphubApplication.ApphubApplicationTimeoutsOutputReference", version: "14.12.0" };
/**
* Represents a {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/apphub_application google_apphub_application}
*/
class ApphubApplication extends cdktf.TerraformResource {
// ==============
// STATIC Methods
// ==============
/**
* Generates CDKTF code for importing a ApphubApplication 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 ApphubApplication to import
* @param importFromId The id of the existing ApphubApplication that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/apphub_application#import import section} in the documentation of this resource for the id to use
* @param provider? Optional instance of the provider where the ApphubApplication to import is found
*/
static generateConfigForImport(scope, importToId, importFromId, provider) {
return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "google_apphub_application", importId: importFromId, provider });
}
// ===========
// INITIALIZER
// ===========
/**
* Create a new {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/apphub_application google_apphub_application} 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 ApphubApplicationConfig
*/
constructor(scope, id, config) {
super(scope, id, {
terraformResourceType: 'google_apphub_application',
terraformGeneratorMetadata: {
providerName: 'google',
providerVersion: '6.13.0',
providerVersionConstraint: '~> 6.0'
},
provider: config.provider,
dependsOn: config.dependsOn,
count: config.count,
lifecycle: config.lifecycle,
provisioners: config.provisioners,
connection: config.connection,
forEach: config.forEach
});
// attributes - computed: false, optional: true, required: false
this._attributes = new ApphubApplicationAttributesOutputReference(this, "attributes");
// scope - computed: false, optional: false, required: true
this._scope = new ApphubApplicationScopeOutputReference(this, "scope");
// timeouts - computed: false, optional: true, required: false
this._timeouts = new ApphubApplicationTimeoutsOutputReference(this, "timeouts");
this._applicationId = config.applicationId;
this._description = config.description;
this._displayName = config.displayName;
this._id = config.id;
this._location = config.location;
this._project = config.project;
this._attributes.internalValue = config.attributes;
this._scope.internalValue = config.scope;
this._timeouts.internalValue = config.timeouts;
}
get applicationId() {
return this.getStringAttribute('application_id');
}
set applicationId(value) {
this._applicationId = value;
}
// Temporarily expose input value. Use with caution.
get applicationIdInput() {
return this._applicationId;
}
// create_time - computed: true, optional: false, required: false
get createTime() {
return this.getStringAttribute('create_time');
}
get description() {
return this.getStringAttribute('description');
}
set description(value) {
this._description = value;
}
resetDescription() {
this._description = undefined;
}
// Temporarily expose input value. Use with caution.
get descriptionInput() {
return this._description;
}
get displayName() {
return this.getStringAttribute('display_name');
}
set displayName(value) {
this._displayName = value;
}
resetDisplayName() {
this._displayName = undefined;
}
// Temporarily expose input value. Use with caution.
get displayNameInput() {
return this._displayName;
}
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 location() {
return this.getStringAttribute('location');
}
set location(value) {
this._location = value;
}
// Temporarily expose input value. Use with caution.
get locationInput() {
return this._location;
}
// name - computed: true, optional: false, required: false
get name() {
return this.getStringAttribute('name');
}
get project() {
return this.getStringAttribute('project');
}
set project(value) {
this._project = value;
}
resetProject() {
this._project = undefined;
}
// Temporarily expose input value. Use with caution.
get projectInput() {
return this._project;
}
// state - computed: true, optional: false, required: false
get state() {
return this.getStringAttribute('state');
}
// uid - computed: true, optional: false, required: false
get uid() {
return this.getStringAttribute('uid');
}
// update_time - computed: true, optional: false, required: false
get updateTime() {
return this.getStringAttribute('update_time');
}
get attributes() {
return this._attributes;
}
putAttributes(value) {
this._attributes.internalValue = value;
}
resetAttributes() {
this._attributes.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get attributesInput() {
return this._attributes.internalValue;
}
get scope() {
return this._scope;
}
putScope(value) {
this._scope.internalValue = value;
}
// Temporarily expose input value. Use with caution.
get scopeInput() {
return this._scope.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 {
application_id: cdktf.stringToTerraform(this._applicationId),
description: cdktf.stringToTerraform(this._description),
display_name: cdktf.stringToTerraform(this._displayName),
id: cdktf.stringToTerraform(this._id),
location: cdktf.stringToTerraform(this._location),
project: cdktf.stringToTerraform(this._project),
attributes: apphubApplicationAttributesToTerraform(this._attributes.internalValue),
scope: apphubApplicationScopeToTerraform(this._scope.internalValue),
timeouts: apphubApplicationTimeoutsToTerraform(this._timeouts.internalValue),
};
}
synthesizeHclAttributes() {
const attrs = {
application_id: {
value: cdktf.stringToHclTerraform(this._applicationId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
description: {
value: cdktf.stringToHclTerraform(this._description),
isBlock: false,
type: "simple",
storageClassType: "string",
},
display_name: {
value: cdktf.stringToHclTerraform(this._displayName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
id: {
value: cdktf.stringToHclTerraform(this._id),
isBlock: false,
type: "simple",
storageClassType: "string",
},
location: {
value: cdktf.stringToHclTerraform(this._location),
isBlock: false,
type: "simple",
storageClassType: "string",
},
project: {
value: cdktf.stringToHclTerraform(this._project),
isBlock: false,
type