@cdktf/provider-azurerm
Version:
Prebuilt azurerm Provider for Terraform CDK (cdktf)
1,227 lines • 188 kB
JavaScript
"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.