UNPKG

@cdktf/provider-azurerm

Version:

Prebuilt azurerm Provider for Terraform CDK (cdktf)

1,227 lines 188 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h, _j; Object.defineProperty(exports, "__esModule", { value: true }); exports.ApiManagementBackend = exports.ApiManagementBackendTlsOutputReference = exports.apiManagementBackendTlsToHclTerraform = exports.apiManagementBackendTlsToTerraform = exports.ApiManagementBackendTimeoutsOutputReference = exports.apiManagementBackendTimeoutsToHclTerraform = exports.apiManagementBackendTimeoutsToTerraform = exports.ApiManagementBackendServiceFabricClusterOutputReference = exports.apiManagementBackendServiceFabricClusterToHclTerraform = exports.apiManagementBackendServiceFabricClusterToTerraform = exports.ApiManagementBackendServiceFabricClusterServerX509NameList = exports.ApiManagementBackendServiceFabricClusterServerX509NameOutputReference = exports.apiManagementBackendServiceFabricClusterServerX509NameToHclTerraform = exports.apiManagementBackendServiceFabricClusterServerX509NameToTerraform = exports.ApiManagementBackendProxyOutputReference = exports.apiManagementBackendProxyToHclTerraform = exports.apiManagementBackendProxyToTerraform = exports.ApiManagementBackendCredentialsOutputReference = exports.apiManagementBackendCredentialsToHclTerraform = exports.apiManagementBackendCredentialsToTerraform = exports.ApiManagementBackendCredentialsAuthorizationOutputReference = exports.apiManagementBackendCredentialsAuthorizationToHclTerraform = exports.apiManagementBackendCredentialsAuthorizationToTerraform = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function apiManagementBackendCredentialsAuthorizationToTerraform(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 { parameter: cdktf.stringToTerraform(struct.parameter), scheme: cdktf.stringToTerraform(struct.scheme), }; } exports.apiManagementBackendCredentialsAuthorizationToTerraform = apiManagementBackendCredentialsAuthorizationToTerraform; function apiManagementBackendCredentialsAuthorizationToHclTerraform(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 = { parameter: { value: cdktf.stringToHclTerraform(struct.parameter), isBlock: false, type: "simple", storageClassType: "string", }, scheme: { value: cdktf.stringToHclTerraform(struct.scheme), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.apiManagementBackendCredentialsAuthorizationToHclTerraform = apiManagementBackendCredentialsAuthorizationToHclTerraform; class ApiManagementBackendCredentialsAuthorizationOutputReference 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._parameter !== undefined) { hasAnyValues = true; internalValueResult.parameter = this._parameter; } if (this._scheme !== undefined) { hasAnyValues = true; internalValueResult.scheme = this._scheme; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._parameter = undefined; this._scheme = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._parameter = value.parameter; this._scheme = value.scheme; } } get parameter() { return this.getStringAttribute('parameter'); } set parameter(value) { this._parameter = value; } resetParameter() { this._parameter = undefined; } // Temporarily expose input value. Use with caution. get parameterInput() { return this._parameter; } get scheme() { return this.getStringAttribute('scheme'); } set scheme(value) { this._scheme = value; } resetScheme() { this._scheme = undefined; } // Temporarily expose input value. Use with caution. get schemeInput() { return this._scheme; } } exports.ApiManagementBackendCredentialsAuthorizationOutputReference = ApiManagementBackendCredentialsAuthorizationOutputReference; _a = JSII_RTTI_SYMBOL_1; ApiManagementBackendCredentialsAuthorizationOutputReference[_a] = { fqn: "@cdktf/provider-azurerm.apiManagementBackend.ApiManagementBackendCredentialsAuthorizationOutputReference", version: "12.27.0" }; function apiManagementBackendCredentialsToTerraform(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 { certificate: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.certificate), header: cdktf.hashMapper(cdktf.stringToTerraform)(struct.header), query: cdktf.hashMapper(cdktf.stringToTerraform)(struct.query), authorization: apiManagementBackendCredentialsAuthorizationToTerraform(struct.authorization), }; } exports.apiManagementBackendCredentialsToTerraform = apiManagementBackendCredentialsToTerraform; function apiManagementBackendCredentialsToHclTerraform(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 = { certificate: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.certificate), isBlock: false, type: "list", storageClassType: "stringList", }, header: { value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(struct.header), isBlock: false, type: "map", storageClassType: "stringMap", }, query: { value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(struct.query), isBlock: false, type: "map", storageClassType: "stringMap", }, authorization: { value: apiManagementBackendCredentialsAuthorizationToHclTerraform(struct.authorization), isBlock: true, type: "list", storageClassType: "ApiManagementBackendCredentialsAuthorizationList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.apiManagementBackendCredentialsToHclTerraform = apiManagementBackendCredentialsToHclTerraform; class ApiManagementBackendCredentialsOutputReference 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; // authorization - computed: false, optional: true, required: false this._authorization = new ApiManagementBackendCredentialsAuthorizationOutputReference(this, "authorization"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._certificate !== undefined) { hasAnyValues = true; internalValueResult.certificate = this._certificate; } if (this._header !== undefined) { hasAnyValues = true; internalValueResult.header = this._header; } if (this._query !== undefined) { hasAnyValues = true; internalValueResult.query = this._query; } if (this._authorization?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.authorization = this._authorization?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._certificate = undefined; this._header = undefined; this._query = undefined; this._authorization.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._certificate = value.certificate; this._header = value.header; this._query = value.query; this._authorization.internalValue = value.authorization; } } get certificate() { return this.getListAttribute('certificate'); } set certificate(value) { this._certificate = value; } resetCertificate() { this._certificate = undefined; } // Temporarily expose input value. Use with caution. get certificateInput() { return this._certificate; } get header() { return this.getStringMapAttribute('header'); } set header(value) { this._header = value; } resetHeader() { this._header = undefined; } // Temporarily expose input value. Use with caution. get headerInput() { return this._header; } get query() { return this.getStringMapAttribute('query'); } set query(value) { this._query = value; } resetQuery() { this._query = undefined; } // Temporarily expose input value. Use with caution. get queryInput() { return this._query; } get authorization() { return this._authorization; } putAuthorization(value) { this._authorization.internalValue = value; } resetAuthorization() { this._authorization.internalValue = undefined; } // Temporarily expose input value. Use with caution. get authorizationInput() { return this._authorization.internalValue; } } exports.ApiManagementBackendCredentialsOutputReference = ApiManagementBackendCredentialsOutputReference; _b = JSII_RTTI_SYMBOL_1; ApiManagementBackendCredentialsOutputReference[_b] = { fqn: "@cdktf/provider-azurerm.apiManagementBackend.ApiManagementBackendCredentialsOutputReference", version: "12.27.0" }; function apiManagementBackendProxyToTerraform(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 { password: cdktf.stringToTerraform(struct.password), url: cdktf.stringToTerraform(struct.url), username: cdktf.stringToTerraform(struct.username), }; } exports.apiManagementBackendProxyToTerraform = apiManagementBackendProxyToTerraform; function apiManagementBackendProxyToHclTerraform(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 = { password: { value: cdktf.stringToHclTerraform(struct.password), isBlock: false, type: "simple", storageClassType: "string", }, url: { value: cdktf.stringToHclTerraform(struct.url), isBlock: false, type: "simple", storageClassType: "string", }, 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)); } exports.apiManagementBackendProxyToHclTerraform = apiManagementBackendProxyToHclTerraform; class ApiManagementBackendProxyOutputReference 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._password !== undefined) { hasAnyValues = true; internalValueResult.password = this._password; } if (this._url !== undefined) { hasAnyValues = true; internalValueResult.url = this._url; } if (this._username !== undefined) { hasAnyValues = true; internalValueResult.username = this._username; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._password = undefined; this._url = undefined; this._username = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._password = value.password; this._url = value.url; this._username = value.username; } } 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 url() { return this.getStringAttribute('url'); } set url(value) { this._url = value; } // Temporarily expose input value. Use with caution. get urlInput() { return this._url; } get username() { return this.getStringAttribute('username'); } set username(value) { this._username = value; } // Temporarily expose input value. Use with caution. get usernameInput() { return this._username; } } exports.ApiManagementBackendProxyOutputReference = ApiManagementBackendProxyOutputReference; _c = JSII_RTTI_SYMBOL_1; ApiManagementBackendProxyOutputReference[_c] = { fqn: "@cdktf/provider-azurerm.apiManagementBackend.ApiManagementBackendProxyOutputReference", version: "12.27.0" }; function apiManagementBackendServiceFabricClusterServerX509NameToTerraform(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 { issuer_certificate_thumbprint: cdktf.stringToTerraform(struct.issuerCertificateThumbprint), name: cdktf.stringToTerraform(struct.name), }; } exports.apiManagementBackendServiceFabricClusterServerX509NameToTerraform = apiManagementBackendServiceFabricClusterServerX509NameToTerraform; function apiManagementBackendServiceFabricClusterServerX509NameToHclTerraform(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 = { issuer_certificate_thumbprint: { value: cdktf.stringToHclTerraform(struct.issuerCertificateThumbprint), isBlock: false, type: "simple", storageClassType: "string", }, name: { value: cdktf.stringToHclTerraform(struct.name), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.apiManagementBackendServiceFabricClusterServerX509NameToHclTerraform = apiManagementBackendServiceFabricClusterServerX509NameToHclTerraform; class ApiManagementBackendServiceFabricClusterServerX509NameOutputReference 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._issuerCertificateThumbprint !== undefined) { hasAnyValues = true; internalValueResult.issuerCertificateThumbprint = this._issuerCertificateThumbprint; } if (this._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._issuerCertificateThumbprint = undefined; this._name = 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._issuerCertificateThumbprint = value.issuerCertificateThumbprint; this._name = value.name; } } get issuerCertificateThumbprint() { return this.getStringAttribute('issuer_certificate_thumbprint'); } set issuerCertificateThumbprint(value) { this._issuerCertificateThumbprint = value; } // Temporarily expose input value. Use with caution. get issuerCertificateThumbprintInput() { return this._issuerCertificateThumbprint; } get name() { return this.getStringAttribute('name'); } set name(value) { this._name = value; } // Temporarily expose input value. Use with caution. get nameInput() { return this._name; } } exports.ApiManagementBackendServiceFabricClusterServerX509NameOutputReference = ApiManagementBackendServiceFabricClusterServerX509NameOutputReference; _d = JSII_RTTI_SYMBOL_1; ApiManagementBackendServiceFabricClusterServerX509NameOutputReference[_d] = { fqn: "@cdktf/provider-azurerm.apiManagementBackend.ApiManagementBackendServiceFabricClusterServerX509NameOutputReference", version: "12.27.0" }; class ApiManagementBackendServiceFabricClusterServerX509NameList 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 ApiManagementBackendServiceFabricClusterServerX509NameOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ApiManagementBackendServiceFabricClusterServerX509NameList = ApiManagementBackendServiceFabricClusterServerX509NameList; _e = JSII_RTTI_SYMBOL_1; ApiManagementBackendServiceFabricClusterServerX509NameList[_e] = { fqn: "@cdktf/provider-azurerm.apiManagementBackend.ApiManagementBackendServiceFabricClusterServerX509NameList", version: "12.27.0" }; function apiManagementBackendServiceFabricClusterToTerraform(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 { client_certificate_id: cdktf.stringToTerraform(struct.clientCertificateId), client_certificate_thumbprint: cdktf.stringToTerraform(struct.clientCertificateThumbprint), management_endpoints: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.managementEndpoints), max_partition_resolution_retries: cdktf.numberToTerraform(struct.maxPartitionResolutionRetries), server_certificate_thumbprints: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.serverCertificateThumbprints), server_x509_name: cdktf.listMapper(apiManagementBackendServiceFabricClusterServerX509NameToTerraform, true)(struct.serverX509Name), }; } exports.apiManagementBackendServiceFabricClusterToTerraform = apiManagementBackendServiceFabricClusterToTerraform; function apiManagementBackendServiceFabricClusterToHclTerraform(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 = { client_certificate_id: { value: cdktf.stringToHclTerraform(struct.clientCertificateId), isBlock: false, type: "simple", storageClassType: "string", }, client_certificate_thumbprint: { value: cdktf.stringToHclTerraform(struct.clientCertificateThumbprint), isBlock: false, type: "simple", storageClassType: "string", }, management_endpoints: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.managementEndpoints), isBlock: false, type: "set", storageClassType: "stringList", }, max_partition_resolution_retries: { value: cdktf.numberToHclTerraform(struct.maxPartitionResolutionRetries), isBlock: false, type: "simple", storageClassType: "number", }, server_certificate_thumbprints: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.serverCertificateThumbprints), isBlock: false, type: "set", storageClassType: "stringList", }, server_x509_name: { value: cdktf.listMapperHcl(apiManagementBackendServiceFabricClusterServerX509NameToHclTerraform, true)(struct.serverX509Name), isBlock: true, type: "set", storageClassType: "ApiManagementBackendServiceFabricClusterServerX509NameList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.apiManagementBackendServiceFabricClusterToHclTerraform = apiManagementBackendServiceFabricClusterToHclTerraform; class ApiManagementBackendServiceFabricClusterOutputReference 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; // server_x509_name - computed: false, optional: true, required: false this._serverX509Name = new ApiManagementBackendServiceFabricClusterServerX509NameList(this, "server_x509_name", true); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._clientCertificateId !== undefined) { hasAnyValues = true; internalValueResult.clientCertificateId = this._clientCertificateId; } if (this._clientCertificateThumbprint !== undefined) { hasAnyValues = true; internalValueResult.clientCertificateThumbprint = this._clientCertificateThumbprint; } if (this._managementEndpoints !== undefined) { hasAnyValues = true; internalValueResult.managementEndpoints = this._managementEndpoints; } if (this._maxPartitionResolutionRetries !== undefined) { hasAnyValues = true; internalValueResult.maxPartitionResolutionRetries = this._maxPartitionResolutionRetries; } if (this._serverCertificateThumbprints !== undefined) { hasAnyValues = true; internalValueResult.serverCertificateThumbprints = this._serverCertificateThumbprints; } if (this._serverX509Name?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.serverX509Name = this._serverX509Name?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._clientCertificateId = undefined; this._clientCertificateThumbprint = undefined; this._managementEndpoints = undefined; this._maxPartitionResolutionRetries = undefined; this._serverCertificateThumbprints = undefined; this._serverX509Name.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._clientCertificateId = value.clientCertificateId; this._clientCertificateThumbprint = value.clientCertificateThumbprint; this._managementEndpoints = value.managementEndpoints; this._maxPartitionResolutionRetries = value.maxPartitionResolutionRetries; this._serverCertificateThumbprints = value.serverCertificateThumbprints; this._serverX509Name.internalValue = value.serverX509Name; } } get clientCertificateId() { return this.getStringAttribute('client_certificate_id'); } set clientCertificateId(value) { this._clientCertificateId = value; } resetClientCertificateId() { this._clientCertificateId = undefined; } // Temporarily expose input value. Use with caution. get clientCertificateIdInput() { return this._clientCertificateId; } get clientCertificateThumbprint() { return this.getStringAttribute('client_certificate_thumbprint'); } set clientCertificateThumbprint(value) { this._clientCertificateThumbprint = value; } resetClientCertificateThumbprint() { this._clientCertificateThumbprint = undefined; } // Temporarily expose input value. Use with caution. get clientCertificateThumbprintInput() { return this._clientCertificateThumbprint; } get managementEndpoints() { return cdktf.Fn.tolist(this.getListAttribute('management_endpoints')); } set managementEndpoints(value) { this._managementEndpoints = value; } // Temporarily expose input value. Use with caution. get managementEndpointsInput() { return this._managementEndpoints; } get maxPartitionResolutionRetries() { return this.getNumberAttribute('max_partition_resolution_retries'); } set maxPartitionResolutionRetries(value) { this._maxPartitionResolutionRetries = value; } // Temporarily expose input value. Use with caution. get maxPartitionResolutionRetriesInput() { return this._maxPartitionResolutionRetries; } get serverCertificateThumbprints() { return cdktf.Fn.tolist(this.getListAttribute('server_certificate_thumbprints')); } set serverCertificateThumbprints(value) { this._serverCertificateThumbprints = value; } resetServerCertificateThumbprints() { this._serverCertificateThumbprints = undefined; } // Temporarily expose input value. Use with caution. get serverCertificateThumbprintsInput() { return this._serverCertificateThumbprints; } get serverX509Name() { return this._serverX509Name; } putServerX509Name(value) { this._serverX509Name.internalValue = value; } resetServerX509Name() { this._serverX509Name.internalValue = undefined; } // Temporarily expose input value. Use with caution. get serverX509NameInput() { return this._serverX509Name.internalValue; } } exports.ApiManagementBackendServiceFabricClusterOutputReference = ApiManagementBackendServiceFabricClusterOutputReference; _f = JSII_RTTI_SYMBOL_1; ApiManagementBackendServiceFabricClusterOutputReference[_f] = { fqn: "@cdktf/provider-azurerm.apiManagementBackend.ApiManagementBackendServiceFabricClusterOutputReference", version: "12.27.0" }; function apiManagementBackendTimeoutsToTerraform(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.apiManagementBackendTimeoutsToTerraform = apiManagementBackendTimeoutsToTerraform; function apiManagementBackendTimeoutsToHclTerraform(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.apiManagementBackendTimeoutsToHclTerraform = apiManagementBackendTimeoutsToHclTerraform; class ApiManagementBackendTimeoutsOutputReference 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.ApiManagementBackendTimeoutsOutputReference = ApiManagementBackendTimeoutsOutputReference; _g = JSII_RTTI_SYMBOL_1; ApiManagementBackendTimeoutsOutputReference[_g] = { fqn: "@cdktf/provider-azurerm.apiManagementBackend.ApiManagementBackendTimeoutsOutputReference", version: "12.27.0" }; function apiManagementBackendTlsToTerraform(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 { validate_certificate_chain: cdktf.booleanToTerraform(struct.validateCertificateChain), validate_certificate_name: cdktf.booleanToTerraform(struct.validateCertificateName), }; } exports.apiManagementBackendTlsToTerraform = apiManagementBackendTlsToTerraform; function apiManagementBackendTlsToHclTerraform(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 = { validate_certificate_chain: { value: cdktf.booleanToHclTerraform(struct.validateCertificateChain), isBlock: false, type: "simple", storageClassType: "boolean", }, validate_certificate_name: { value: cdktf.booleanToHclTerraform(struct.validateCertificateName), isBlock: false, type: "simple", storageClassType: "boolean", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.apiManagementBackendTlsToHclTerraform = apiManagementBackendTlsToHclTerraform; class ApiManagementBackendTlsOutputReference 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._validateCertificateChain !== undefined) { hasAnyValues = true; internalValueResult.validateCertificateChain = this._validateCertificateChain; } if (this._validateCertificateName !== undefined) { hasAnyValues = true; internalValueResult.validateCertificateName = this._validateCertificateName; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._validateCertificateChain = undefined; this._validateCertificateName = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._validateCertificateChain = value.validateCertificateChain; this._validateCertificateName = value.validateCertificateName; } } get validateCertificateChain() { return this.getBooleanAttribute('validate_certificate_chain'); } set validateCertificateChain(value) { this._validateCertificateChain = value; } resetValidateCertificateChain() { this._validateCertificateChain = undefined; } // Temporarily expose input value. Use with caution. get validateCertificateChainInput() { return this._validateCertificateChain; } get validateCertificateName() { return this.getBooleanAttribute('validate_certificate_name'); } set validateCertificateName(value) { this._validateCertificateName = value; } resetValidateCertificateName() { this._validateCertificateName = undefined; } // Temporarily expose input value. Use with caution. get validateCertificateNameInput() { return this._validateCertificateName; } } exports.ApiManagementBackendTlsOutputReference = ApiManagementBackendTlsOutputReference; _h = JSII_RTTI_SYMBOL_1; ApiManagementBackendTlsOutputReference[_h] = { fqn: "@cdktf/provider-azurerm.apiManagementBackend.ApiManagementBackendTlsOutputReference", version: "12.27.0" }; /** * Represents a {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/api_management_backend azurerm_api_management_backend} */ class ApiManagementBackend extends cdktf.TerraformResource { // ============== // STATIC Methods // ============== /** * Generates CDKTF code for importing a ApiManagementBackend 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 ApiManagementBackend to import * @param importFromId The id of the existing ApiManagementBackend that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/api_management_backend#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the ApiManagementBackend to import is found */ static generateConfigForImport(scope, importToId, importFromId, provider) { return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "azurerm_api_management_backend", importId: importFromId, provider }); } // =========== // INITIALIZER // =========== /** * Create a new {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/api_management_backend azurerm_api_management_backend} 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 ApiManagementBackendConfig */ constructor(scope, id, config) { super(scope, id, { terraformResourceType: 'azurerm_api_management_backend', terraformGeneratorMetadata: { providerName: 'azurerm', providerVersion: '3.116.0', providerVersionConstraint: '~> 3.10' }, provider: config.provider, dependsOn: config.dependsOn, count: config.count, lifecycle: config.lifecycle, provisioners: config.provisioners, connection: config.connection, forEach: config.forEach }); // credentials - computed: false, optional: true, required: false this._credentials = new ApiManagementBackendCredentialsOutputReference(this, "credentials"); // proxy - computed: false, optional: true, required: false this._proxy = new ApiManagementBackendProxyOutputReference(this, "proxy"); // service_fabric_cluster - computed: false, optional: true, required: false this._serviceFabricCluster = new ApiManagementBackendServiceFabricClusterOutputReference(this, "service_fabric_cluster"); // timeouts - computed: false, optional: true, required: false this._timeouts = new ApiManagementBackendTimeoutsOutputReference(this, "timeouts"); // tls - computed: false, optional: true, required: false this._tls = new ApiManagementBackendTlsOutputReference(this, "tls"); this._apiManagementName = config.apiManagementName; this._description = config.description; this._id = config.id; this._name = config.name; this._protocol = config.protocol; this._resourceGroupName = config.resourceGroupName; this._resourceId = config.resourceId; this._title = config.title; this._url = config.url; this._credentials.internalValue = config.credentials; this._proxy.internalValue = config.proxy; this._serviceFabricCluster.internalValue = config.serviceFabricCluster; this._timeouts.internalValue = config.timeouts; this._tls.internalValue = config.tls; } get apiManagementName() { return this.getStringAttribute('api_management_name'); } set apiManagementName(value) { this._apiManagementName = value; } // Temporarily expose input value. Use with caution. get apiManagementNameInput() { return this._apiManagementName; } 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 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 name() { return this.getStringAttribute('name'); } set name(value) { this._name = value; } // Temporarily expose input value. Use with caution. get nameInput() { return this._name; } get protocol() { return this.getStringAttribute('protocol'); } set protocol(value) { this._protocol = value; } // Temporarily expose input value. Use with caution. get protocolInput() { return this._protocol; } get resourceGroupName() { return this.getStringAttribute('resource_group_name'); } set resourceGroupName(value) { this._resourceGroupName = value; } // Temporarily expose input value. Use with caution. get resourceGroupNameInput() { return this._resourceGroupName; } get resourceId() { return this.getStringAttribute('resource_id'); } set resourceId(value) { this._resourceId = value; } resetResourceId() { this._resourceId = undefined; } // Temporarily expose input value. Use with caution. get resourceIdInput() { return this._resourceId; } get title() { return this.getStringAttribute('title'); } set title(value) { this._title = value; } resetTitle() { this._title = undefined; } // Temporarily expose input value. Use with caution. get titleInput() { return this._title; } get url() { return this.getStringAttribute('url'); } set url(value) { this._url = value; } // Temporarily expose input value. Use with caution. get urlInput() { return this._url; } get credentials() { return this._credentials; } putCredentials(value) { this._credentials.internalValue = value; } resetCredentials() { this._credentials.internalValue = undefined; } // Temporarily expose input value. Use with caution. get credentialsInput() { return this._credentials.internalValue; } get proxy() { return this._proxy; } putProxy(value) { this._proxy.internalValue = value; } resetProxy() { this._proxy.internalValue = undefined; } // Temporarily expose input value. Use with caution. get proxyInput() { return this._proxy.internalValue; } get serviceFabricCluster() { return this._serviceFabricCluster; } putServiceFabricCluster(value) { this._serviceFabricCluster.internalValue = value; } resetServiceFabricCluster() { this._serviceFabricCluster.internalValue = undefined; } // Temporarily expose input value. Use with caution. get serviceFabricClusterInput() { return this._serviceFabricCluster.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; } get tls() { return this._tls; } putTls(value) { this._tls.internalValue = value; } resetTls() { this._tls.internalValue = undefined; } // Temporarily expose input value. Use with caution. get tlsInput() { return this._tls.internalValue; } // ========= // SYNTHESIS // ========= synthesizeAttributes() { return { api_management_name: cdktf.stringToTerraform(this._apiManagementName), description: cdktf.stringToTerraform(this._description), id: cdktf.stringToTerraform(this._id), name: cdktf.stringToTerraform(this._name), protocol: cdktf.stringToTerraform(this.