UNPKG

@cdktf/provider-upcloud

Version:

Prebuilt upcloud Provider for Terraform CDK (cdktf)

1,272 lines 554 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o; Object.defineProperty(exports, "__esModule", { value: true }); exports.ManagedDatabasePostgresql = exports.ManagedDatabasePostgresqlPropertiesOutputReference = exports.ManagedDatabasePostgresqlPropertiesTimescaledbOutputReference = exports.ManagedDatabasePostgresqlPropertiesPglookoutOutputReference = exports.ManagedDatabasePostgresqlPropertiesPgbouncerOutputReference = exports.ManagedDatabasePostgresqlPropertiesPgauditOutputReference = exports.ManagedDatabasePostgresqlPropertiesMigrationOutputReference = exports.ManagedDatabasePostgresqlNetworkList = exports.ManagedDatabasePostgresqlNetworkOutputReference = exports.ManagedDatabasePostgresqlNodeStatesList = exports.ManagedDatabasePostgresqlNodeStatesOutputReference = exports.ManagedDatabasePostgresqlComponentsList = exports.ManagedDatabasePostgresqlComponentsOutputReference = void 0; exports.managedDatabasePostgresqlComponentsToTerraform = managedDatabasePostgresqlComponentsToTerraform; exports.managedDatabasePostgresqlComponentsToHclTerraform = managedDatabasePostgresqlComponentsToHclTerraform; exports.managedDatabasePostgresqlNodeStatesToTerraform = managedDatabasePostgresqlNodeStatesToTerraform; exports.managedDatabasePostgresqlNodeStatesToHclTerraform = managedDatabasePostgresqlNodeStatesToHclTerraform; exports.managedDatabasePostgresqlNetworkToTerraform = managedDatabasePostgresqlNetworkToTerraform; exports.managedDatabasePostgresqlNetworkToHclTerraform = managedDatabasePostgresqlNetworkToHclTerraform; exports.managedDatabasePostgresqlPropertiesMigrationToTerraform = managedDatabasePostgresqlPropertiesMigrationToTerraform; exports.managedDatabasePostgresqlPropertiesMigrationToHclTerraform = managedDatabasePostgresqlPropertiesMigrationToHclTerraform; exports.managedDatabasePostgresqlPropertiesPgauditToTerraform = managedDatabasePostgresqlPropertiesPgauditToTerraform; exports.managedDatabasePostgresqlPropertiesPgauditToHclTerraform = managedDatabasePostgresqlPropertiesPgauditToHclTerraform; exports.managedDatabasePostgresqlPropertiesPgbouncerToTerraform = managedDatabasePostgresqlPropertiesPgbouncerToTerraform; exports.managedDatabasePostgresqlPropertiesPgbouncerToHclTerraform = managedDatabasePostgresqlPropertiesPgbouncerToHclTerraform; exports.managedDatabasePostgresqlPropertiesPglookoutToTerraform = managedDatabasePostgresqlPropertiesPglookoutToTerraform; exports.managedDatabasePostgresqlPropertiesPglookoutToHclTerraform = managedDatabasePostgresqlPropertiesPglookoutToHclTerraform; exports.managedDatabasePostgresqlPropertiesTimescaledbToTerraform = managedDatabasePostgresqlPropertiesTimescaledbToTerraform; exports.managedDatabasePostgresqlPropertiesTimescaledbToHclTerraform = managedDatabasePostgresqlPropertiesTimescaledbToHclTerraform; exports.managedDatabasePostgresqlPropertiesToTerraform = managedDatabasePostgresqlPropertiesToTerraform; exports.managedDatabasePostgresqlPropertiesToHclTerraform = managedDatabasePostgresqlPropertiesToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function managedDatabasePostgresqlComponentsToTerraform(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 {}; } function managedDatabasePostgresqlComponentsToHclTerraform(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; } class ManagedDatabasePostgresqlComponentsOutputReference 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; } } // component - computed: true, optional: false, required: false get component() { return this.getStringAttribute('component'); } // host - computed: true, optional: false, required: false get host() { return this.getStringAttribute('host'); } // port - computed: true, optional: false, required: false get port() { return this.getNumberAttribute('port'); } // route - computed: true, optional: false, required: false get route() { return this.getStringAttribute('route'); } // usage - computed: true, optional: false, required: false get usage() { return this.getStringAttribute('usage'); } } exports.ManagedDatabasePostgresqlComponentsOutputReference = ManagedDatabasePostgresqlComponentsOutputReference; _a = JSII_RTTI_SYMBOL_1; ManagedDatabasePostgresqlComponentsOutputReference[_a] = { fqn: "@cdktf/provider-upcloud.managedDatabasePostgresql.ManagedDatabasePostgresqlComponentsOutputReference", version: "15.1.3" }; class ManagedDatabasePostgresqlComponentsList 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 ManagedDatabasePostgresqlComponentsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ManagedDatabasePostgresqlComponentsList = ManagedDatabasePostgresqlComponentsList; _b = JSII_RTTI_SYMBOL_1; ManagedDatabasePostgresqlComponentsList[_b] = { fqn: "@cdktf/provider-upcloud.managedDatabasePostgresql.ManagedDatabasePostgresqlComponentsList", version: "15.1.3" }; function managedDatabasePostgresqlNodeStatesToTerraform(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 {}; } function managedDatabasePostgresqlNodeStatesToHclTerraform(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; } class ManagedDatabasePostgresqlNodeStatesOutputReference 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; } } // name - computed: true, optional: false, required: false get name() { return this.getStringAttribute('name'); } // role - computed: true, optional: false, required: false get role() { return this.getStringAttribute('role'); } // state - computed: true, optional: false, required: false get state() { return this.getStringAttribute('state'); } } exports.ManagedDatabasePostgresqlNodeStatesOutputReference = ManagedDatabasePostgresqlNodeStatesOutputReference; _c = JSII_RTTI_SYMBOL_1; ManagedDatabasePostgresqlNodeStatesOutputReference[_c] = { fqn: "@cdktf/provider-upcloud.managedDatabasePostgresql.ManagedDatabasePostgresqlNodeStatesOutputReference", version: "15.1.3" }; class ManagedDatabasePostgresqlNodeStatesList 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 ManagedDatabasePostgresqlNodeStatesOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ManagedDatabasePostgresqlNodeStatesList = ManagedDatabasePostgresqlNodeStatesList; _d = JSII_RTTI_SYMBOL_1; ManagedDatabasePostgresqlNodeStatesList[_d] = { fqn: "@cdktf/provider-upcloud.managedDatabasePostgresql.ManagedDatabasePostgresqlNodeStatesList", version: "15.1.3" }; function managedDatabasePostgresqlNetworkToTerraform(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 { family: cdktf.stringToTerraform(struct.family), name: cdktf.stringToTerraform(struct.name), type: cdktf.stringToTerraform(struct.type), uuid: cdktf.stringToTerraform(struct.uuid), }; } function managedDatabasePostgresqlNetworkToHclTerraform(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 = { family: { value: cdktf.stringToHclTerraform(struct.family), isBlock: false, type: "simple", storageClassType: "string", }, name: { value: cdktf.stringToHclTerraform(struct.name), isBlock: false, type: "simple", storageClassType: "string", }, type: { value: cdktf.stringToHclTerraform(struct.type), isBlock: false, type: "simple", storageClassType: "string", }, uuid: { value: cdktf.stringToHclTerraform(struct.uuid), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ManagedDatabasePostgresqlNetworkOutputReference 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._family !== undefined) { hasAnyValues = true; internalValueResult.family = this._family; } if (this._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } if (this._type !== undefined) { hasAnyValues = true; internalValueResult.type = this._type; } if (this._uuid !== undefined) { hasAnyValues = true; internalValueResult.uuid = this._uuid; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._family = undefined; this._name = undefined; this._type = undefined; this._uuid = 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._family = value.family; this._name = value.name; this._type = value.type; this._uuid = value.uuid; } } get family() { return this.getStringAttribute('family'); } set family(value) { this._family = value; } // Temporarily expose input value. Use with caution. get familyInput() { return this._family; } 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 type() { return this.getStringAttribute('type'); } set type(value) { this._type = value; } // Temporarily expose input value. Use with caution. get typeInput() { return this._type; } get uuid() { return this.getStringAttribute('uuid'); } set uuid(value) { this._uuid = value; } // Temporarily expose input value. Use with caution. get uuidInput() { return this._uuid; } } exports.ManagedDatabasePostgresqlNetworkOutputReference = ManagedDatabasePostgresqlNetworkOutputReference; _e = JSII_RTTI_SYMBOL_1; ManagedDatabasePostgresqlNetworkOutputReference[_e] = { fqn: "@cdktf/provider-upcloud.managedDatabasePostgresql.ManagedDatabasePostgresqlNetworkOutputReference", version: "15.1.3" }; class ManagedDatabasePostgresqlNetworkList 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 ManagedDatabasePostgresqlNetworkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ManagedDatabasePostgresqlNetworkList = ManagedDatabasePostgresqlNetworkList; _f = JSII_RTTI_SYMBOL_1; ManagedDatabasePostgresqlNetworkList[_f] = { fqn: "@cdktf/provider-upcloud.managedDatabasePostgresql.ManagedDatabasePostgresqlNetworkList", version: "15.1.3" }; function managedDatabasePostgresqlPropertiesMigrationToTerraform(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 { dbname: cdktf.stringToTerraform(struct.dbname), host: cdktf.stringToTerraform(struct.host), ignore_dbs: cdktf.stringToTerraform(struct.ignoreDbs), ignore_roles: cdktf.stringToTerraform(struct.ignoreRoles), method: cdktf.stringToTerraform(struct.method), password: cdktf.stringToTerraform(struct.password), port: cdktf.numberToTerraform(struct.port), ssl: cdktf.booleanToTerraform(struct.ssl), username: cdktf.stringToTerraform(struct.username), }; } function managedDatabasePostgresqlPropertiesMigrationToHclTerraform(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 = { dbname: { value: cdktf.stringToHclTerraform(struct.dbname), isBlock: false, type: "simple", storageClassType: "string", }, host: { value: cdktf.stringToHclTerraform(struct.host), isBlock: false, type: "simple", storageClassType: "string", }, ignore_dbs: { value: cdktf.stringToHclTerraform(struct.ignoreDbs), isBlock: false, type: "simple", storageClassType: "string", }, ignore_roles: { value: cdktf.stringToHclTerraform(struct.ignoreRoles), isBlock: false, type: "simple", storageClassType: "string", }, method: { value: cdktf.stringToHclTerraform(struct.method), isBlock: false, type: "simple", storageClassType: "string", }, password: { value: cdktf.stringToHclTerraform(struct.password), isBlock: false, type: "simple", storageClassType: "string", }, port: { value: cdktf.numberToHclTerraform(struct.port), isBlock: false, type: "simple", storageClassType: "number", }, ssl: { value: cdktf.booleanToHclTerraform(struct.ssl), isBlock: false, type: "simple", storageClassType: "boolean", }, username: { value: cdktf.stringToHclTerraform(struct.username), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ManagedDatabasePostgresqlPropertiesMigrationOutputReference 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._dbname !== undefined) { hasAnyValues = true; internalValueResult.dbname = this._dbname; } if (this._host !== undefined) { hasAnyValues = true; internalValueResult.host = this._host; } if (this._ignoreDbs !== undefined) { hasAnyValues = true; internalValueResult.ignoreDbs = this._ignoreDbs; } if (this._ignoreRoles !== undefined) { hasAnyValues = true; internalValueResult.ignoreRoles = this._ignoreRoles; } if (this._method !== undefined) { hasAnyValues = true; internalValueResult.method = this._method; } if (this._password !== undefined) { hasAnyValues = true; internalValueResult.password = this._password; } if (this._port !== undefined) { hasAnyValues = true; internalValueResult.port = this._port; } if (this._ssl !== undefined) { hasAnyValues = true; internalValueResult.ssl = this._ssl; } if (this._username !== undefined) { hasAnyValues = true; internalValueResult.username = this._username; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._dbname = undefined; this._host = undefined; this._ignoreDbs = undefined; this._ignoreRoles = undefined; this._method = undefined; this._password = undefined; this._port = undefined; this._ssl = undefined; this._username = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._dbname = value.dbname; this._host = value.host; this._ignoreDbs = value.ignoreDbs; this._ignoreRoles = value.ignoreRoles; this._method = value.method; this._password = value.password; this._port = value.port; this._ssl = value.ssl; this._username = value.username; } } get dbname() { return this.getStringAttribute('dbname'); } set dbname(value) { this._dbname = value; } resetDbname() { this._dbname = undefined; } // Temporarily expose input value. Use with caution. get dbnameInput() { return this._dbname; } get host() { return this.getStringAttribute('host'); } set host(value) { this._host = value; } resetHost() { this._host = undefined; } // Temporarily expose input value. Use with caution. get hostInput() { return this._host; } get ignoreDbs() { return this.getStringAttribute('ignore_dbs'); } set ignoreDbs(value) { this._ignoreDbs = value; } resetIgnoreDbs() { this._ignoreDbs = undefined; } // Temporarily expose input value. Use with caution. get ignoreDbsInput() { return this._ignoreDbs; } get ignoreRoles() { return this.getStringAttribute('ignore_roles'); } set ignoreRoles(value) { this._ignoreRoles = value; } resetIgnoreRoles() { this._ignoreRoles = undefined; } // Temporarily expose input value. Use with caution. get ignoreRolesInput() { return this._ignoreRoles; } get method() { return this.getStringAttribute('method'); } set method(value) { this._method = value; } resetMethod() { this._method = undefined; } // Temporarily expose input value. Use with caution. get methodInput() { return this._method; } get password() { return this.getStringAttribute('password'); } set password(value) { this._password = value; } resetPassword() { this._password = undefined; } // Temporarily expose input value. Use with caution. get passwordInput() { return this._password; } get port() { return this.getNumberAttribute('port'); } set port(value) { this._port = value; } resetPort() { this._port = undefined; } // Temporarily expose input value. Use with caution. get portInput() { return this._port; } get ssl() { return this.getBooleanAttribute('ssl'); } set ssl(value) { this._ssl = value; } resetSsl() { this._ssl = undefined; } // Temporarily expose input value. Use with caution. get sslInput() { return this._ssl; } get username() { return this.getStringAttribute('username'); } set username(value) { this._username = value; } resetUsername() { this._username = undefined; } // Temporarily expose input value. Use with caution. get usernameInput() { return this._username; } } exports.ManagedDatabasePostgresqlPropertiesMigrationOutputReference = ManagedDatabasePostgresqlPropertiesMigrationOutputReference; _g = JSII_RTTI_SYMBOL_1; ManagedDatabasePostgresqlPropertiesMigrationOutputReference[_g] = { fqn: "@cdktf/provider-upcloud.managedDatabasePostgresql.ManagedDatabasePostgresqlPropertiesMigrationOutputReference", version: "15.1.3" }; function managedDatabasePostgresqlPropertiesPgauditToTerraform(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 { feature_enabled: cdktf.booleanToTerraform(struct.featureEnabled), log: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.log), log_catalog: cdktf.booleanToTerraform(struct.logCatalog), log_client: cdktf.booleanToTerraform(struct.logClient), log_level: cdktf.stringToTerraform(struct.logLevel), log_max_string_length: cdktf.numberToTerraform(struct.logMaxStringLength), log_nested_statements: cdktf.booleanToTerraform(struct.logNestedStatements), log_parameter: cdktf.booleanToTerraform(struct.logParameter), log_parameter_max_size: cdktf.numberToTerraform(struct.logParameterMaxSize), log_relation: cdktf.booleanToTerraform(struct.logRelation), log_rows: cdktf.booleanToTerraform(struct.logRows), log_statement: cdktf.booleanToTerraform(struct.logStatement), log_statement_once: cdktf.booleanToTerraform(struct.logStatementOnce), role: cdktf.stringToTerraform(struct.role), }; } function managedDatabasePostgresqlPropertiesPgauditToHclTerraform(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 = { feature_enabled: { value: cdktf.booleanToHclTerraform(struct.featureEnabled), isBlock: false, type: "simple", storageClassType: "boolean", }, log: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.log), isBlock: false, type: "list", storageClassType: "stringList", }, log_catalog: { value: cdktf.booleanToHclTerraform(struct.logCatalog), isBlock: false, type: "simple", storageClassType: "boolean", }, log_client: { value: cdktf.booleanToHclTerraform(struct.logClient), isBlock: false, type: "simple", storageClassType: "boolean", }, log_level: { value: cdktf.stringToHclTerraform(struct.logLevel), isBlock: false, type: "simple", storageClassType: "string", }, log_max_string_length: { value: cdktf.numberToHclTerraform(struct.logMaxStringLength), isBlock: false, type: "simple", storageClassType: "number", }, log_nested_statements: { value: cdktf.booleanToHclTerraform(struct.logNestedStatements), isBlock: false, type: "simple", storageClassType: "boolean", }, log_parameter: { value: cdktf.booleanToHclTerraform(struct.logParameter), isBlock: false, type: "simple", storageClassType: "boolean", }, log_parameter_max_size: { value: cdktf.numberToHclTerraform(struct.logParameterMaxSize), isBlock: false, type: "simple", storageClassType: "number", }, log_relation: { value: cdktf.booleanToHclTerraform(struct.logRelation), isBlock: false, type: "simple", storageClassType: "boolean", }, log_rows: { value: cdktf.booleanToHclTerraform(struct.logRows), isBlock: false, type: "simple", storageClassType: "boolean", }, log_statement: { value: cdktf.booleanToHclTerraform(struct.logStatement), isBlock: false, type: "simple", storageClassType: "boolean", }, log_statement_once: { value: cdktf.booleanToHclTerraform(struct.logStatementOnce), isBlock: false, type: "simple", storageClassType: "boolean", }, role: { value: cdktf.stringToHclTerraform(struct.role), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ManagedDatabasePostgresqlPropertiesPgauditOutputReference 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._featureEnabled !== undefined) { hasAnyValues = true; internalValueResult.featureEnabled = this._featureEnabled; } if (this._log !== undefined) { hasAnyValues = true; internalValueResult.log = this._log; } if (this._logCatalog !== undefined) { hasAnyValues = true; internalValueResult.logCatalog = this._logCatalog; } if (this._logClient !== undefined) { hasAnyValues = true; internalValueResult.logClient = this._logClient; } if (this._logLevel !== undefined) { hasAnyValues = true; internalValueResult.logLevel = this._logLevel; } if (this._logMaxStringLength !== undefined) { hasAnyValues = true; internalValueResult.logMaxStringLength = this._logMaxStringLength; } if (this._logNestedStatements !== undefined) { hasAnyValues = true; internalValueResult.logNestedStatements = this._logNestedStatements; } if (this._logParameter !== undefined) { hasAnyValues = true; internalValueResult.logParameter = this._logParameter; } if (this._logParameterMaxSize !== undefined) { hasAnyValues = true; internalValueResult.logParameterMaxSize = this._logParameterMaxSize; } if (this._logRelation !== undefined) { hasAnyValues = true; internalValueResult.logRelation = this._logRelation; } if (this._logRows !== undefined) { hasAnyValues = true; internalValueResult.logRows = this._logRows; } if (this._logStatement !== undefined) { hasAnyValues = true; internalValueResult.logStatement = this._logStatement; } if (this._logStatementOnce !== undefined) { hasAnyValues = true; internalValueResult.logStatementOnce = this._logStatementOnce; } if (this._role !== undefined) { hasAnyValues = true; internalValueResult.role = this._role; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._featureEnabled = undefined; this._log = undefined; this._logCatalog = undefined; this._logClient = undefined; this._logLevel = undefined; this._logMaxStringLength = undefined; this._logNestedStatements = undefined; this._logParameter = undefined; this._logParameterMaxSize = undefined; this._logRelation = undefined; this._logRows = undefined; this._logStatement = undefined; this._logStatementOnce = undefined; this._role = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._featureEnabled = value.featureEnabled; this._log = value.log; this._logCatalog = value.logCatalog; this._logClient = value.logClient; this._logLevel = value.logLevel; this._logMaxStringLength = value.logMaxStringLength; this._logNestedStatements = value.logNestedStatements; this._logParameter = value.logParameter; this._logParameterMaxSize = value.logParameterMaxSize; this._logRelation = value.logRelation; this._logRows = value.logRows; this._logStatement = value.logStatement; this._logStatementOnce = value.logStatementOnce; this._role = value.role; } } get featureEnabled() { return this.getBooleanAttribute('feature_enabled'); } set featureEnabled(value) { this._featureEnabled = value; } resetFeatureEnabled() { this._featureEnabled = undefined; } // Temporarily expose input value. Use with caution. get featureEnabledInput() { return this._featureEnabled; } get log() { return this.getListAttribute('log'); } set log(value) { this._log = value; } resetLog() { this._log = undefined; } // Temporarily expose input value. Use with caution. get logInput() { return this._log; } get logCatalog() { return this.getBooleanAttribute('log_catalog'); } set logCatalog(value) { this._logCatalog = value; } resetLogCatalog() { this._logCatalog = undefined; } // Temporarily expose input value. Use with caution. get logCatalogInput() { return this._logCatalog; } get logClient() { return this.getBooleanAttribute('log_client'); } set logClient(value) { this._logClient = value; } resetLogClient() { this._logClient = undefined; } // Temporarily expose input value. Use with caution. get logClientInput() { return this._logClient; } get logLevel() { return this.getStringAttribute('log_level'); } set logLevel(value) { this._logLevel = value; } resetLogLevel() { this._logLevel = undefined; } // Temporarily expose input value. Use with caution. get logLevelInput() { return this._logLevel; } get logMaxStringLength() { return this.getNumberAttribute('log_max_string_length'); } set logMaxStringLength(value) { this._logMaxStringLength = value; } resetLogMaxStringLength() { this._logMaxStringLength = undefined; } // Temporarily expose input value. Use with caution. get logMaxStringLengthInput() { return this._logMaxStringLength; } get logNestedStatements() { return this.getBooleanAttribute('log_nested_statements'); } set logNestedStatements(value) { this._logNestedStatements = value; } resetLogNestedStatements() { this._logNestedStatements = undefined; } // Temporarily expose input value. Use with caution. get logNestedStatementsInput() { return this._logNestedStatements; } get logParameter() { return this.getBooleanAttribute('log_parameter'); } set logParameter(value) { this._logParameter = value; } resetLogParameter() { this._logParameter = undefined; } // Temporarily expose input value. Use with caution. get logParameterInput() { return this._logParameter; } get logParameterMaxSize() { return this.getNumberAttribute('log_parameter_max_size'); } set logParameterMaxSize(value) { this._logParameterMaxSize = value; } resetLogParameterMaxSize() { this._logParameterMaxSize = undefined; } // Temporarily expose input value. Use with caution. get logParameterMaxSizeInput() { return this._logParameterMaxSize; } get logRelation() { return this.getBooleanAttribute('log_relation'); } set logRelation(value) { this._logRelation = value; } resetLogRelation() { this._logRelation = undefined; } // Temporarily expose input value. Use with caution. get logRelationInput() { return this._logRelation; } get logRows() { return this.getBooleanAttribute('log_rows'); } set logRows(value) { this._logRows = value; } resetLogRows() { this._logRows = undefined; } // Temporarily expose input value. Use with caution. get logRowsInput() { return this._logRows; } get logStatement() { return this.getBooleanAttribute('log_statement'); } set logStatement(value) { this._logStatement = value; } resetLogStatement() { this._logStatement = undefined; } // Temporarily expose input value. Use with caution. get logStatementInput() { return this._logStatement; } get logStatementOnce() { return this.getBooleanAttribute('log_statement_once'); } set logStatementOnce(value) { this._logStatementOnce = value; } resetLogStatementOnce() { this._logStatementOnce = undefined; } // Temporarily expose input value. Use with caution. get logStatementOnceInput() { return this._logStatementOnce; } get role() { return this.getStringAttribute('role'); } set role(value) { this._role = value; } resetRole() { this._role = undefined; } // Temporarily expose input value. Use with caution. get roleInput() { return this._role; } } exports.ManagedDatabasePostgresqlPropertiesPgauditOutputReference = ManagedDatabasePostgresqlPropertiesPgauditOutputReference; _h = JSII_RTTI_SYMBOL_1; ManagedDatabasePostgresqlPropertiesPgauditOutputReference[_h] = { fqn: "@cdktf/provider-upcloud.managedDatabasePostgresql.ManagedDatabasePostgresqlPropertiesPgauditOutputReference", version: "15.1.3" }; function managedDatabasePostgresqlPropertiesPgbouncerToTerraform(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 { autodb_idle_timeout: cdktf.numberToTerraform(struct.autodbIdleTimeout), autodb_max_db_connections: cdktf.numberToTerraform(struct.autodbMaxDbConnections), autodb_pool_mode: cdktf.stringToTerraform(struct.autodbPoolMode), autodb_pool_size: cdktf.numberToTerraform(struct.autodbPoolSize), ignore_startup_parameters: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.ignoreStartupParameters), max_prepared_statements: cdktf.numberToTerraform(struct.maxPreparedStatements), min_pool_size: cdktf.numberToTerraform(struct.minPoolSize), server_idle_timeout: cdktf.numberToTerraform(struct.serverIdleTimeout), server_lifetime: cdktf.numberToTerraform(struct.serverLifetime), server_reset_query_always: cdktf.booleanToTerraform(struct.serverResetQueryAlways), }; } function managedDatabasePostgresqlPropertiesPgbouncerToHclTerraform(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 = { autodb_idle_timeout: { value: cdktf.numberToHclTerraform(struct.autodbIdleTimeout), isBlock: false, type: "simple", storageClassType: "number", }, autodb_max_db_connections: { value: cdktf.numberToHclTerraform(struct.autodbMaxDbConnections), isBlock: false, type: "simple", storageClassType: "number", }, autodb_pool_mode: { value: cdktf.stringToHclTerraform(struct.autodbPoolMode), isBlock: false, type: "simple", storageClassType: "string", }, autodb_pool_size: { value: cdktf.numberToHclTerraform(struct.autodbPoolSize), isBlock: false, type: "simple", storageClassType: "number", }, ignore_startup_parameters: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.ignoreStartupParameters), isBlock: false, type: "list", storageClassType: "stringList", }, max_prepared_statements: { value: cdktf.numberToHclTerraform(struct.maxPreparedStatements), isBlock: false, type: "simple", storageClassType: "number", }, min_pool_size: { value: cdktf.numberToHclTerraform(struct.minPoolSize), isBlock: false, type: "simple", storageClassType: "number", }, server_idle_timeout: { value: cdktf.numberToHclTerraform(struct.serverIdleTimeout), isBlock: false, type: "simple", storageClassType: "number", }, server_lifetime: { value: cdktf.numberToHclTerraform(struct.serverLifetime), isBlock: false, type: "simple", storageClassType: "number", }, server_reset_query_always: { value: cdktf.booleanToHclTerraform(struct.serverResetQueryAlways), isBlock: false, type: "simple", storageClassType: "boolean", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ManagedDatabasePostgresqlPropertiesPgbouncerOutputReference 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._autodbIdleTimeout !== undefined) { hasAnyValues = true; internalValueResult.autodbIdleTimeout = this._autodbIdleTimeout; } if (this._autodbMaxDbConnections !== undefined) { hasAnyValues = true; internalValueResult.autodbMaxDbConnections = this._autodbMaxDbConnections; } if (this._autodbPoolMode !== undefined) { hasAnyValues = true; internalValueResult.autodbPoolMode = this._autodbPoolMode; } if (this._autodbPoolSize !== undefined) { hasAnyValues = true; internalValueResult.autodbPoolSize = this._autodbPoolSize; } if (this._ignoreStartupParameters !== undefined) { hasAnyValues = true; internalValueResult.ignoreStartupParameters = this._ignoreStartupParameters; } if (this._maxPreparedStatements !== undefined) { hasAnyValues = true; internalValueResult.maxPreparedStatements = this._maxPreparedStatements; } if (this._minPoolSize !== undefined) { hasAnyValues = true; internalValueResult.minPoolSize = this._minPoolSize; } if (this._serverIdleTimeout !== undefined) { hasAnyValues = true; internalValueResult.serverIdleTimeout = this._serverIdleTimeout; } if (this._serverLifetime !== undefined) { hasAnyValues = true; internalValueResult.serverLifetime = this._serverLifetime; } if (this._serverResetQueryAlways !== undefined) { hasAnyValues = true; internalValueResult.serverResetQueryAlways = this._serverResetQueryAlways; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._autodbIdleTimeout = undefined; this._autodbMaxDbConnections = undefined; this._autodbPoolMode = undefined; this._autodbPoolSize = undefined; this._ignoreStartupParameters = undefined; this._maxPreparedStatements = undefined; this._minPoolSize = undefined; this._serverIdleTimeout = undefined; this._serverLifetime = undefined; this._serverResetQueryAlways = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._autodbIdleTimeout = value.autodbIdleTimeout; this._autodbMaxDbConnections = value.autodbMaxDbConnections; this._autodbPoolMode = value.autodbPoolMode; this._autodbPoolSize = value.autodbPoolSize; this._ignoreStartupParameters = value.ignoreStartupParameters; this._maxPreparedStatements = value.maxPreparedStatements; this._minPoolSize = value.minPoolSize; this._serverIdleTimeout = value.serverIdleTimeout; this._serverLifetime = value.serverLifetime; this._serverResetQueryAlways = value.serverResetQueryAlways; } } get autodbIdleTimeout() { return this.getNumberAttribute('autodb_idle_timeout'); } set autodbIdleTimeout(value) { this._autodbIdleTimeout = value; } resetAutodbIdleTimeout() { this._autodbIdleTimeout = undefined; } // Temporarily expose input value. Use with caution. get autodbIdleTimeoutInput() { return this._autodbIdleTimeout; } get autodbMaxDbConnections() { return this.getNumberAttribute('autodb_max_db_connections'); } set autodbMaxDbConnections(value) { this._autodbMaxDbConnections = value; } resetAutodbMaxDbConnections() { this._autodbMaxDbConnections = undefined; } // Temporarily expose input value. Use with caution. get autodbMaxDbConnectionsInput() { return this._autodbMaxDbConnections; } get autodbPoolMode() { return this.getStringAttribute('autodb_pool_mode'); } set autodbPoolMode(value) { this._autodbPoolMode = value; } resetAutodbPoolMode() { this._autodbPoolMode = undefined; } // Temporarily expose input value. Use with caution. get autodbPoolModeInput()