@cdktf/provider-google
Version:
Prebuilt google Provider for Terraform CDK (cdktf)
838 lines • 61 kB
TypeScript
/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: MPL-2.0
*/
import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface ClouddomainsRegistrationConfig extends cdktf.TerraformMetaArguments {
/**
* The list of contact notices that the caller acknowledges. Possible value is PUBLIC_CONTACT_DATA_ACKNOWLEDGEMENT
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#contact_notices ClouddomainsRegistration#contact_notices}
*/
readonly contactNotices?: string[];
/**
* Required. The domain name. Unicode domain names must be expressed in Punycode format.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#domain_name ClouddomainsRegistration#domain_name}
*/
readonly domainName: string;
/**
* The list of domain notices that you acknowledge. Possible value is HSTS_PRELOADED
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#domain_notices ClouddomainsRegistration#domain_notices}
*/
readonly domainNotices?: string[];
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#id ClouddomainsRegistration#id}
*
* Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
* If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
*/
readonly id?: string;
/**
* Set of labels associated with the Registration.
*
* **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
* Please refer to the field 'effective_labels' for all of the labels present on the resource.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#labels ClouddomainsRegistration#labels}
*/
readonly labels?: {
[key: string]: string;
};
/**
* The location for the resource
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#location ClouddomainsRegistration#location}
*/
readonly location: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#project ClouddomainsRegistration#project}
*/
readonly project?: string;
/**
* contact_settings block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#contact_settings ClouddomainsRegistration#contact_settings}
*/
readonly contactSettings: ClouddomainsRegistrationContactSettings;
/**
* dns_settings block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#dns_settings ClouddomainsRegistration#dns_settings}
*/
readonly dnsSettings?: ClouddomainsRegistrationDnsSettings;
/**
* management_settings block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#management_settings ClouddomainsRegistration#management_settings}
*/
readonly managementSettings?: ClouddomainsRegistrationManagementSettings;
/**
* timeouts block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#timeouts ClouddomainsRegistration#timeouts}
*/
readonly timeouts?: ClouddomainsRegistrationTimeouts;
/**
* yearly_price block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#yearly_price ClouddomainsRegistration#yearly_price}
*/
readonly yearlyPrice: ClouddomainsRegistrationYearlyPrice;
}
export interface ClouddomainsRegistrationContactSettingsAdminContactPostalAddress {
/**
* Unstructured address lines describing the lower levels of an address.
* Because values in addressLines do not have type information and may sometimes contain multiple values in a single
* field (e.g. "Austin, TX"), it is important that the line order is clear. The order of address lines should be
* "envelope order" for the country/region of the address. In places where this can vary (e.g. Japan), address_language
* is used to make it explicit (e.g. "ja" for large-to-small ordering and "ja-Latn" or "en" for small-to-large). This way,
* the most specific line of an address can be selected based on the language.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#address_lines ClouddomainsRegistration#address_lines}
*/
readonly addressLines?: string[];
/**
* Highest administrative subdivision which is used for postal addresses of a country or region. For example, this can be a state,
* a province, an oblast, or a prefecture. Specifically, for Spain this is the province and not the autonomous community
* (e.g. "Barcelona" and not "Catalonia"). Many countries don't use an administrative area in postal addresses. E.g. in Switzerland
* this should be left unpopulated.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#administrative_area ClouddomainsRegistration#administrative_area}
*/
readonly administrativeArea?: string;
/**
* Generally refers to the city/town portion of the address. Examples: US city, IT comune, UK post town. In regions of the world
* where localities are not well defined or do not fit into this structure well, leave locality empty and use addressLines.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#locality ClouddomainsRegistration#locality}
*/
readonly locality?: string;
/**
* The name of the organization at the address.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#organization ClouddomainsRegistration#organization}
*/
readonly organization?: string;
/**
* Postal code of the address. Not all countries use or require postal codes to be present, but where they are used,
* they may trigger additional validation with other parts of the address (e.g. state/zip validation in the U.S.A.).
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#postal_code ClouddomainsRegistration#postal_code}
*/
readonly postalCode?: string;
/**
* The recipient at the address. This field may, under certain circumstances, contain multiline information. For example,
* it might contain "care of" information.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#recipients ClouddomainsRegistration#recipients}
*/
readonly recipients?: string[];
/**
* Required. CLDR region code of the country/region of the address. This is never inferred and it is up to the user to
* ensure the value is correct. See https://cldr.unicode.org/ and
* https://www.unicode.org/cldr/charts/30/supplemental/territory_information.html for details. Example: "CH" for Switzerland.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#region_code ClouddomainsRegistration#region_code}
*/
readonly regionCode: string;
}
export declare function clouddomainsRegistrationContactSettingsAdminContactPostalAddressToTerraform(struct?: ClouddomainsRegistrationContactSettingsAdminContactPostalAddressOutputReference | ClouddomainsRegistrationContactSettingsAdminContactPostalAddress): any;
export declare function clouddomainsRegistrationContactSettingsAdminContactPostalAddressToHclTerraform(struct?: ClouddomainsRegistrationContactSettingsAdminContactPostalAddressOutputReference | ClouddomainsRegistrationContactSettingsAdminContactPostalAddress): any;
export declare class ClouddomainsRegistrationContactSettingsAdminContactPostalAddressOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): ClouddomainsRegistrationContactSettingsAdminContactPostalAddress | undefined;
set internalValue(value: ClouddomainsRegistrationContactSettingsAdminContactPostalAddress | undefined);
private _addressLines?;
get addressLines(): string[];
set addressLines(value: string[]);
resetAddressLines(): void;
get addressLinesInput(): string[] | undefined;
private _administrativeArea?;
get administrativeArea(): string;
set administrativeArea(value: string);
resetAdministrativeArea(): void;
get administrativeAreaInput(): string | undefined;
private _locality?;
get locality(): string;
set locality(value: string);
resetLocality(): void;
get localityInput(): string | undefined;
private _organization?;
get organization(): string;
set organization(value: string);
resetOrganization(): void;
get organizationInput(): string | undefined;
private _postalCode?;
get postalCode(): string;
set postalCode(value: string);
resetPostalCode(): void;
get postalCodeInput(): string | undefined;
private _recipients?;
get recipients(): string[];
set recipients(value: string[]);
resetRecipients(): void;
get recipientsInput(): string[] | undefined;
private _regionCode?;
get regionCode(): string;
set regionCode(value: string);
get regionCodeInput(): string | undefined;
}
export interface ClouddomainsRegistrationContactSettingsAdminContact {
/**
* Required. Email address of the contact.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#email ClouddomainsRegistration#email}
*/
readonly email: string;
/**
* Fax number of the contact in international format. For example, "+1-800-555-0123".
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#fax_number ClouddomainsRegistration#fax_number}
*/
readonly faxNumber?: string;
/**
* Required. Phone number of the contact in international format. For example, "+1-800-555-0123".
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#phone_number ClouddomainsRegistration#phone_number}
*/
readonly phoneNumber: string;
/**
* postal_address block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#postal_address ClouddomainsRegistration#postal_address}
*/
readonly postalAddress: ClouddomainsRegistrationContactSettingsAdminContactPostalAddress;
}
export declare function clouddomainsRegistrationContactSettingsAdminContactToTerraform(struct?: ClouddomainsRegistrationContactSettingsAdminContactOutputReference | ClouddomainsRegistrationContactSettingsAdminContact): any;
export declare function clouddomainsRegistrationContactSettingsAdminContactToHclTerraform(struct?: ClouddomainsRegistrationContactSettingsAdminContactOutputReference | ClouddomainsRegistrationContactSettingsAdminContact): any;
export declare class ClouddomainsRegistrationContactSettingsAdminContactOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): ClouddomainsRegistrationContactSettingsAdminContact | undefined;
set internalValue(value: ClouddomainsRegistrationContactSettingsAdminContact | undefined);
private _email?;
get email(): string;
set email(value: string);
get emailInput(): string | undefined;
private _faxNumber?;
get faxNumber(): string;
set faxNumber(value: string);
resetFaxNumber(): void;
get faxNumberInput(): string | undefined;
private _phoneNumber?;
get phoneNumber(): string;
set phoneNumber(value: string);
get phoneNumberInput(): string | undefined;
private _postalAddress;
get postalAddress(): ClouddomainsRegistrationContactSettingsAdminContactPostalAddressOutputReference;
putPostalAddress(value: ClouddomainsRegistrationContactSettingsAdminContactPostalAddress): void;
get postalAddressInput(): ClouddomainsRegistrationContactSettingsAdminContactPostalAddress | undefined;
}
export interface ClouddomainsRegistrationContactSettingsRegistrantContactPostalAddress {
/**
* Unstructured address lines describing the lower levels of an address.
* Because values in addressLines do not have type information and may sometimes contain multiple values in a single
* field (e.g. "Austin, TX"), it is important that the line order is clear. The order of address lines should be
* "envelope order" for the country/region of the address. In places where this can vary (e.g. Japan), address_language
* is used to make it explicit (e.g. "ja" for large-to-small ordering and "ja-Latn" or "en" for small-to-large). This way,
* the most specific line of an address can be selected based on the language.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#address_lines ClouddomainsRegistration#address_lines}
*/
readonly addressLines?: string[];
/**
* Highest administrative subdivision which is used for postal addresses of a country or region. For example, this can be a state,
* a province, an oblast, or a prefecture. Specifically, for Spain this is the province and not the autonomous community
* (e.g. "Barcelona" and not "Catalonia"). Many countries don't use an administrative area in postal addresses. E.g. in Switzerland
* this should be left unpopulated.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#administrative_area ClouddomainsRegistration#administrative_area}
*/
readonly administrativeArea?: string;
/**
* Generally refers to the city/town portion of the address. Examples: US city, IT comune, UK post town. In regions of the world
* where localities are not well defined or do not fit into this structure well, leave locality empty and use addressLines.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#locality ClouddomainsRegistration#locality}
*/
readonly locality?: string;
/**
* The name of the organization at the address.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#organization ClouddomainsRegistration#organization}
*/
readonly organization?: string;
/**
* Postal code of the address. Not all countries use or require postal codes to be present, but where they are used,
* they may trigger additional validation with other parts of the address (e.g. state/zip validation in the U.S.A.).
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#postal_code ClouddomainsRegistration#postal_code}
*/
readonly postalCode?: string;
/**
* The recipient at the address. This field may, under certain circumstances, contain multiline information. For example,
* it might contain "care of" information.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#recipients ClouddomainsRegistration#recipients}
*/
readonly recipients?: string[];
/**
* Required. CLDR region code of the country/region of the address. This is never inferred and it is up to the user to
* ensure the value is correct. See https://cldr.unicode.org/ and
* https://www.unicode.org/cldr/charts/30/supplemental/territory_information.html for details. Example: "CH" for Switzerland.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#region_code ClouddomainsRegistration#region_code}
*/
readonly regionCode: string;
}
export declare function clouddomainsRegistrationContactSettingsRegistrantContactPostalAddressToTerraform(struct?: ClouddomainsRegistrationContactSettingsRegistrantContactPostalAddressOutputReference | ClouddomainsRegistrationContactSettingsRegistrantContactPostalAddress): any;
export declare function clouddomainsRegistrationContactSettingsRegistrantContactPostalAddressToHclTerraform(struct?: ClouddomainsRegistrationContactSettingsRegistrantContactPostalAddressOutputReference | ClouddomainsRegistrationContactSettingsRegistrantContactPostalAddress): any;
export declare class ClouddomainsRegistrationContactSettingsRegistrantContactPostalAddressOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): ClouddomainsRegistrationContactSettingsRegistrantContactPostalAddress | undefined;
set internalValue(value: ClouddomainsRegistrationContactSettingsRegistrantContactPostalAddress | undefined);
private _addressLines?;
get addressLines(): string[];
set addressLines(value: string[]);
resetAddressLines(): void;
get addressLinesInput(): string[] | undefined;
private _administrativeArea?;
get administrativeArea(): string;
set administrativeArea(value: string);
resetAdministrativeArea(): void;
get administrativeAreaInput(): string | undefined;
private _locality?;
get locality(): string;
set locality(value: string);
resetLocality(): void;
get localityInput(): string | undefined;
private _organization?;
get organization(): string;
set organization(value: string);
resetOrganization(): void;
get organizationInput(): string | undefined;
private _postalCode?;
get postalCode(): string;
set postalCode(value: string);
resetPostalCode(): void;
get postalCodeInput(): string | undefined;
private _recipients?;
get recipients(): string[];
set recipients(value: string[]);
resetRecipients(): void;
get recipientsInput(): string[] | undefined;
private _regionCode?;
get regionCode(): string;
set regionCode(value: string);
get regionCodeInput(): string | undefined;
}
export interface ClouddomainsRegistrationContactSettingsRegistrantContact {
/**
* Required. Email address of the contact.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#email ClouddomainsRegistration#email}
*/
readonly email: string;
/**
* Fax number of the contact in international format. For example, "+1-800-555-0123".
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#fax_number ClouddomainsRegistration#fax_number}
*/
readonly faxNumber?: string;
/**
* Required. Phone number of the contact in international format. For example, "+1-800-555-0123".
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#phone_number ClouddomainsRegistration#phone_number}
*/
readonly phoneNumber: string;
/**
* postal_address block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#postal_address ClouddomainsRegistration#postal_address}
*/
readonly postalAddress: ClouddomainsRegistrationContactSettingsRegistrantContactPostalAddress;
}
export declare function clouddomainsRegistrationContactSettingsRegistrantContactToTerraform(struct?: ClouddomainsRegistrationContactSettingsRegistrantContactOutputReference | ClouddomainsRegistrationContactSettingsRegistrantContact): any;
export declare function clouddomainsRegistrationContactSettingsRegistrantContactToHclTerraform(struct?: ClouddomainsRegistrationContactSettingsRegistrantContactOutputReference | ClouddomainsRegistrationContactSettingsRegistrantContact): any;
export declare class ClouddomainsRegistrationContactSettingsRegistrantContactOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): ClouddomainsRegistrationContactSettingsRegistrantContact | undefined;
set internalValue(value: ClouddomainsRegistrationContactSettingsRegistrantContact | undefined);
private _email?;
get email(): string;
set email(value: string);
get emailInput(): string | undefined;
private _faxNumber?;
get faxNumber(): string;
set faxNumber(value: string);
resetFaxNumber(): void;
get faxNumberInput(): string | undefined;
private _phoneNumber?;
get phoneNumber(): string;
set phoneNumber(value: string);
get phoneNumberInput(): string | undefined;
private _postalAddress;
get postalAddress(): ClouddomainsRegistrationContactSettingsRegistrantContactPostalAddressOutputReference;
putPostalAddress(value: ClouddomainsRegistrationContactSettingsRegistrantContactPostalAddress): void;
get postalAddressInput(): ClouddomainsRegistrationContactSettingsRegistrantContactPostalAddress | undefined;
}
export interface ClouddomainsRegistrationContactSettingsTechnicalContactPostalAddress {
/**
* Unstructured address lines describing the lower levels of an address.
* Because values in addressLines do not have type information and may sometimes contain multiple values in a single
* field (e.g. "Austin, TX"), it is important that the line order is clear. The order of address lines should be
* "envelope order" for the country/region of the address. In places where this can vary (e.g. Japan), address_language
* is used to make it explicit (e.g. "ja" for large-to-small ordering and "ja-Latn" or "en" for small-to-large). This way,
* the most specific line of an address can be selected based on the language.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#address_lines ClouddomainsRegistration#address_lines}
*/
readonly addressLines?: string[];
/**
* Highest administrative subdivision which is used for postal addresses of a country or region. For example, this can be a state,
* a province, an oblast, or a prefecture. Specifically, for Spain this is the province and not the autonomous community
* (e.g. "Barcelona" and not "Catalonia"). Many countries don't use an administrative area in postal addresses. E.g. in Switzerland
* this should be left unpopulated.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#administrative_area ClouddomainsRegistration#administrative_area}
*/
readonly administrativeArea?: string;
/**
* Generally refers to the city/town portion of the address. Examples: US city, IT comune, UK post town. In regions of the world
* where localities are not well defined or do not fit into this structure well, leave locality empty and use addressLines.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#locality ClouddomainsRegistration#locality}
*/
readonly locality?: string;
/**
* The name of the organization at the address.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#organization ClouddomainsRegistration#organization}
*/
readonly organization?: string;
/**
* Postal code of the address. Not all countries use or require postal codes to be present, but where they are used,
* they may trigger additional validation with other parts of the address (e.g. state/zip validation in the U.S.A.).
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#postal_code ClouddomainsRegistration#postal_code}
*/
readonly postalCode?: string;
/**
* The recipient at the address. This field may, under certain circumstances, contain multiline information. For example,
* it might contain "care of" information.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#recipients ClouddomainsRegistration#recipients}
*/
readonly recipients?: string[];
/**
* Required. CLDR region code of the country/region of the address. This is never inferred and it is up to the user to
* ensure the value is correct. See https://cldr.unicode.org/ and
* https://www.unicode.org/cldr/charts/30/supplemental/territory_information.html for details. Example: "CH" for Switzerland.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#region_code ClouddomainsRegistration#region_code}
*/
readonly regionCode: string;
}
export declare function clouddomainsRegistrationContactSettingsTechnicalContactPostalAddressToTerraform(struct?: ClouddomainsRegistrationContactSettingsTechnicalContactPostalAddressOutputReference | ClouddomainsRegistrationContactSettingsTechnicalContactPostalAddress): any;
export declare function clouddomainsRegistrationContactSettingsTechnicalContactPostalAddressToHclTerraform(struct?: ClouddomainsRegistrationContactSettingsTechnicalContactPostalAddressOutputReference | ClouddomainsRegistrationContactSettingsTechnicalContactPostalAddress): any;
export declare class ClouddomainsRegistrationContactSettingsTechnicalContactPostalAddressOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): ClouddomainsRegistrationContactSettingsTechnicalContactPostalAddress | undefined;
set internalValue(value: ClouddomainsRegistrationContactSettingsTechnicalContactPostalAddress | undefined);
private _addressLines?;
get addressLines(): string[];
set addressLines(value: string[]);
resetAddressLines(): void;
get addressLinesInput(): string[] | undefined;
private _administrativeArea?;
get administrativeArea(): string;
set administrativeArea(value: string);
resetAdministrativeArea(): void;
get administrativeAreaInput(): string | undefined;
private _locality?;
get locality(): string;
set locality(value: string);
resetLocality(): void;
get localityInput(): string | undefined;
private _organization?;
get organization(): string;
set organization(value: string);
resetOrganization(): void;
get organizationInput(): string | undefined;
private _postalCode?;
get postalCode(): string;
set postalCode(value: string);
resetPostalCode(): void;
get postalCodeInput(): string | undefined;
private _recipients?;
get recipients(): string[];
set recipients(value: string[]);
resetRecipients(): void;
get recipientsInput(): string[] | undefined;
private _regionCode?;
get regionCode(): string;
set regionCode(value: string);
get regionCodeInput(): string | undefined;
}
export interface ClouddomainsRegistrationContactSettingsTechnicalContact {
/**
* Required. Email address of the contact.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#email ClouddomainsRegistration#email}
*/
readonly email: string;
/**
* Fax number of the contact in international format. For example, "+1-800-555-0123".
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#fax_number ClouddomainsRegistration#fax_number}
*/
readonly faxNumber?: string;
/**
* Required. Phone number of the contact in international format. For example, "+1-800-555-0123".
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#phone_number ClouddomainsRegistration#phone_number}
*/
readonly phoneNumber: string;
/**
* postal_address block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#postal_address ClouddomainsRegistration#postal_address}
*/
readonly postalAddress: ClouddomainsRegistrationContactSettingsTechnicalContactPostalAddress;
}
export declare function clouddomainsRegistrationContactSettingsTechnicalContactToTerraform(struct?: ClouddomainsRegistrationContactSettingsTechnicalContactOutputReference | ClouddomainsRegistrationContactSettingsTechnicalContact): any;
export declare function clouddomainsRegistrationContactSettingsTechnicalContactToHclTerraform(struct?: ClouddomainsRegistrationContactSettingsTechnicalContactOutputReference | ClouddomainsRegistrationContactSettingsTechnicalContact): any;
export declare class ClouddomainsRegistrationContactSettingsTechnicalContactOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): ClouddomainsRegistrationContactSettingsTechnicalContact | undefined;
set internalValue(value: ClouddomainsRegistrationContactSettingsTechnicalContact | undefined);
private _email?;
get email(): string;
set email(value: string);
get emailInput(): string | undefined;
private _faxNumber?;
get faxNumber(): string;
set faxNumber(value: string);
resetFaxNumber(): void;
get faxNumberInput(): string | undefined;
private _phoneNumber?;
get phoneNumber(): string;
set phoneNumber(value: string);
get phoneNumberInput(): string | undefined;
private _postalAddress;
get postalAddress(): ClouddomainsRegistrationContactSettingsTechnicalContactPostalAddressOutputReference;
putPostalAddress(value: ClouddomainsRegistrationContactSettingsTechnicalContactPostalAddress): void;
get postalAddressInput(): ClouddomainsRegistrationContactSettingsTechnicalContactPostalAddress | undefined;
}
export interface ClouddomainsRegistrationContactSettings {
/**
* Required. Privacy setting for the contacts associated with the Registration.
* Values are PUBLIC_CONTACT_DATA, PRIVATE_CONTACT_DATA, and REDACTED_CONTACT_DATA
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#privacy ClouddomainsRegistration#privacy}
*/
readonly privacy: string;
/**
* admin_contact block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#admin_contact ClouddomainsRegistration#admin_contact}
*/
readonly adminContact: ClouddomainsRegistrationContactSettingsAdminContact;
/**
* registrant_contact block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#registrant_contact ClouddomainsRegistration#registrant_contact}
*/
readonly registrantContact: ClouddomainsRegistrationContactSettingsRegistrantContact;
/**
* technical_contact block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#technical_contact ClouddomainsRegistration#technical_contact}
*/
readonly technicalContact: ClouddomainsRegistrationContactSettingsTechnicalContact;
}
export declare function clouddomainsRegistrationContactSettingsToTerraform(struct?: ClouddomainsRegistrationContactSettingsOutputReference | ClouddomainsRegistrationContactSettings): any;
export declare function clouddomainsRegistrationContactSettingsToHclTerraform(struct?: ClouddomainsRegistrationContactSettingsOutputReference | ClouddomainsRegistrationContactSettings): any;
export declare class ClouddomainsRegistrationContactSettingsOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): ClouddomainsRegistrationContactSettings | undefined;
set internalValue(value: ClouddomainsRegistrationContactSettings | undefined);
private _privacy?;
get privacy(): string;
set privacy(value: string);
get privacyInput(): string | undefined;
private _adminContact;
get adminContact(): ClouddomainsRegistrationContactSettingsAdminContactOutputReference;
putAdminContact(value: ClouddomainsRegistrationContactSettingsAdminContact): void;
get adminContactInput(): ClouddomainsRegistrationContactSettingsAdminContact | undefined;
private _registrantContact;
get registrantContact(): ClouddomainsRegistrationContactSettingsRegistrantContactOutputReference;
putRegistrantContact(value: ClouddomainsRegistrationContactSettingsRegistrantContact): void;
get registrantContactInput(): ClouddomainsRegistrationContactSettingsRegistrantContact | undefined;
private _technicalContact;
get technicalContact(): ClouddomainsRegistrationContactSettingsTechnicalContactOutputReference;
putTechnicalContact(value: ClouddomainsRegistrationContactSettingsTechnicalContact): void;
get technicalContactInput(): ClouddomainsRegistrationContactSettingsTechnicalContact | undefined;
}
export interface ClouddomainsRegistrationDnsSettingsCustomDnsDsRecords {
/**
* The algorithm used to generate the referenced DNSKEY.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#algorithm ClouddomainsRegistration#algorithm}
*/
readonly algorithm?: string;
/**
* The digest generated from the referenced DNSKEY.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#digest ClouddomainsRegistration#digest}
*/
readonly digest?: string;
/**
* The hash function used to generate the digest of the referenced DNSKEY.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#digest_type ClouddomainsRegistration#digest_type}
*/
readonly digestType?: string;
/**
* The key tag of the record. Must be set in range 0 -- 65535.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#key_tag ClouddomainsRegistration#key_tag}
*/
readonly keyTag?: number;
}
export declare function clouddomainsRegistrationDnsSettingsCustomDnsDsRecordsToTerraform(struct?: ClouddomainsRegistrationDnsSettingsCustomDnsDsRecords | cdktf.IResolvable): any;
export declare function clouddomainsRegistrationDnsSettingsCustomDnsDsRecordsToHclTerraform(struct?: ClouddomainsRegistrationDnsSettingsCustomDnsDsRecords | cdktf.IResolvable): any;
export declare class ClouddomainsRegistrationDnsSettingsCustomDnsDsRecordsOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
private resolvableValue?;
/**
* @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: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
get internalValue(): ClouddomainsRegistrationDnsSettingsCustomDnsDsRecords | cdktf.IResolvable | undefined;
set internalValue(value: ClouddomainsRegistrationDnsSettingsCustomDnsDsRecords | cdktf.IResolvable | undefined);
private _algorithm?;
get algorithm(): string;
set algorithm(value: string);
resetAlgorithm(): void;
get algorithmInput(): string | undefined;
private _digest?;
get digest(): string;
set digest(value: string);
resetDigest(): void;
get digestInput(): string | undefined;
private _digestType?;
get digestType(): string;
set digestType(value: string);
resetDigestType(): void;
get digestTypeInput(): string | undefined;
private _keyTag?;
get keyTag(): number;
set keyTag(value: number);
resetKeyTag(): void;
get keyTagInput(): number | undefined;
}
export declare class ClouddomainsRegistrationDnsSettingsCustomDnsDsRecordsList extends cdktf.ComplexList {
protected terraformResource: cdktf.IInterpolatingParent;
protected terraformAttribute: string;
protected wrapsSet: boolean;
internalValue?: ClouddomainsRegistrationDnsSettingsCustomDnsDsRecords[] | cdktf.IResolvable;
/**
* @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: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
/**
* @param index the index of the item to return
*/
get(index: number): ClouddomainsRegistrationDnsSettingsCustomDnsDsRecordsOutputReference;
}
export interface ClouddomainsRegistrationDnsSettingsCustomDns {
/**
* Required. A list of name servers that store the DNS zone for this domain. Each name server is a domain
* name, with Unicode domain names expressed in Punycode format.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#name_servers ClouddomainsRegistration#name_servers}
*/
readonly nameServers: string[];
/**
* ds_records block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#ds_records ClouddomainsRegistration#ds_records}
*/
readonly dsRecords?: ClouddomainsRegistrationDnsSettingsCustomDnsDsRecords[] | cdktf.IResolvable;
}
export declare function clouddomainsRegistrationDnsSettingsCustomDnsToTerraform(struct?: ClouddomainsRegistrationDnsSettingsCustomDnsOutputReference | ClouddomainsRegistrationDnsSettingsCustomDns): any;
export declare function clouddomainsRegistrationDnsSettingsCustomDnsToHclTerraform(struct?: ClouddomainsRegistrationDnsSettingsCustomDnsOutputReference | ClouddomainsRegistrationDnsSettingsCustomDns): any;
export declare class ClouddomainsRegistrationDnsSettingsCustomDnsOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): ClouddomainsRegistrationDnsSettingsCustomDns | undefined;
set internalValue(value: ClouddomainsRegistrationDnsSettingsCustomDns | undefined);
private _nameServers?;
get nameServers(): string[];
set nameServers(value: string[]);
get nameServersInput(): string[] | undefined;
private _dsRecords;
get dsRecords(): ClouddomainsRegistrationDnsSettingsCustomDnsDsRecordsList;
putDsRecords(value: ClouddomainsRegistrationDnsSettingsCustomDnsDsRecords[] | cdktf.IResolvable): void;
resetDsRecords(): void;
get dsRecordsInput(): cdktf.IResolvable | ClouddomainsRegistrationDnsSettingsCustomDnsDsRecords[] | undefined;
}
export interface ClouddomainsRegistrationDnsSettingsGlueRecords {
/**
* Required. Domain name of the host in Punycode format.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#host_name ClouddomainsRegistration#host_name}
*/
readonly hostName: string;
/**
* List of IPv4 addresses corresponding to this host in the standard decimal format (e.g. 198.51.100.1).
* At least one of ipv4_address and ipv6_address must be set.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#ipv4_addresses ClouddomainsRegistration#ipv4_addresses}
*/
readonly ipv4Addresses?: string[];
/**
* List of IPv4 addresses corresponding to this host in the standard decimal format (e.g. 198.51.100.1).
* At least one of ipv4_address and ipv6_address must be set.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#ipv6_addresses ClouddomainsRegistration#ipv6_addresses}
*/
readonly ipv6Addresses?: string[];
}
export declare function clouddomainsRegistrationDnsSettingsGlueRecordsToTerraform(struct?: ClouddomainsRegistrationDnsSettingsGlueRecords | cdktf.IResolvable): any;
export declare function clouddomainsRegistrationDnsSettingsGlueRecordsToHclTerraform(struct?: ClouddomainsRegistrationDnsSettingsGlueRecords | cdktf.IResolvable): any;
export declare class ClouddomainsRegistrationDnsSettingsGlueRecordsOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
private resolvableValue?;
/**
* @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: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
get internalValue(): ClouddomainsRegistrationDnsSettingsGlueRecords | cdktf.IResolvable | undefined;
set internalValue(value: ClouddomainsRegistrationDnsSettingsGlueRecords | cdktf.IResolvable | undefined);
private _hostName?;
get hostName(): string;
set hostName(value: string);
get hostNameInput(): string | undefined;
private _ipv4Addresses?;
get ipv4Addresses(): string[];
set ipv4Addresses(value: string[]);
resetIpv4Addresses(): void;
get ipv4AddressesInput(): string[] | undefined;
private _ipv6Addresses?;
get ipv6Addresses(): string[];
set ipv6Addresses(value: string[]);
resetIpv6Addresses(): void;
get ipv6AddressesInput(): string[] | undefined;
}
export declare class ClouddomainsRegistrationDnsSettingsGlueRecordsList extends cdktf.ComplexList {
protected terraformResource: cdktf.IInterpolatingParent;
protected terraformAttribute: string;
protected wrapsSet: boolean;
internalValue?: ClouddomainsRegistrationDnsSettingsGlueRecords[] | cdktf.IResolvable;
/**
* @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: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
/**
* @param index the index of the item to return
*/
get(index: number): ClouddomainsRegistrationDnsSettingsGlueRecordsOutputReference;
}
export interface ClouddomainsRegistrationDnsSettings {
/**
* custom_dns block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#custom_dns ClouddomainsRegistration#custom_dns}
*/
readonly customDns?: ClouddomainsRegistrationDnsSettingsCustomDns;
/**
* glue_records block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddomains_registration#glue_records ClouddomainsRegistration#glue_records}
*/
readonly glueRecords?: ClouddomainsRegistrationDnsSettingsGlueRecords[] | cdktf.IResolvable;
}
export declare function clouddomainsRegistrationDnsSettingsToTerraform(struct?: ClouddomainsRegistrationDnsSettingsOutputReference | ClouddomainsRegistrationDnsSettings): any;
export declare function clouddomainsRegistrationDnsSettingsToHclTerraform(struct?: ClouddomainsRegistrationDnsSettingsOutputReference | ClouddomainsRegistrationDnsSettings): any;
export declare class ClouddomainsRegistrationDnsSettingsOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): ClouddomainsRegistrationDnsSettings | undefined;
set internalValue(value: ClouddomainsRegistrationDnsSettings | undefined);
private _customDns;
get customDns(): ClouddomainsRegistrationDnsSettingsCustomDnsOutputReference;
putCustomDns(value: ClouddomainsRegistrationDnsSettingsCustomDns): void;
resetCustomDns(): void;
get customDnsInput(): ClouddomainsRegistrationDnsSettingsCustomDns | undefined;
private _glueRecords;
get glueRecords(): ClouddomainsRegistrationDnsSettingsGlueRecordsList;
putGlueRecords(value: ClouddomainsRegistrationDnsSettingsGlueRecords[] | cdktf.IResolvable): void;
resetGlueRecords(): void;
get glueRecordsInput(): cdktf.IResolvable | ClouddomainsRegistrationDnsSettingsGlueRecords[] | undefined;
}
export interface ClouddomainsRegistrationManagementSettings {
/**
* The desired renewal method for this Registration. The actual renewalMethod is automatically updated to reflect this choice.
* If unset or equal to RENEWAL_METHOD_UNSPECIFIED, the actual renewalMethod is treated as if it were set to AUTOMATIC_RENEWAL.
* You cannot use RENEWAL_DISABLED during resource creation, and you can update the renewal status only when the Registration
* resource has state ACTIVE or SUSPENDED.
*
* When preferredRenewalMethod is set to AUTOMATIC_RENEWAL, the actual renewalMethod can be set to RENEWAL_DISABLED in case of
* problems with the billing account or reported doma