UNPKG

@cdktf/provider-google

Version:

Prebuilt google Provider for Terraform CDK (cdktf)

392 lines (391 loc) 24.2 kB
/** * Copyright (c) HashiCorp, Inc. * SPDX-License-Identifier: MPL-2.0 */ import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface NetworkSecurityClientTlsPolicyConfig extends cdktf.TerraformMetaArguments { /** * A free-text description of the resource. Max length 1024 characters. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/network_security_client_tls_policy#description NetworkSecurityClientTlsPolicy#description} */ readonly description?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/network_security_client_tls_policy#id NetworkSecurityClientTlsPolicy#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 label tags associated with the ClientTlsPolicy resource. * * **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/network_security_client_tls_policy#labels NetworkSecurityClientTlsPolicy#labels} */ readonly labels?: { [key: string]: string; }; /** * The location of the client tls policy. * The default value is 'global'. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/network_security_client_tls_policy#location NetworkSecurityClientTlsPolicy#location} */ readonly location?: string; /** * Name of the ClientTlsPolicy resource. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/network_security_client_tls_policy#name NetworkSecurityClientTlsPolicy#name} */ readonly name: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/network_security_client_tls_policy#project NetworkSecurityClientTlsPolicy#project} */ readonly project?: string; /** * Server Name Indication string to present to the server during TLS handshake. E.g: "secure.example.com". * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/network_security_client_tls_policy#sni NetworkSecurityClientTlsPolicy#sni} */ readonly sni?: string; /** * client_certificate block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/network_security_client_tls_policy#client_certificate NetworkSecurityClientTlsPolicy#client_certificate} */ readonly clientCertificate?: NetworkSecurityClientTlsPolicyClientCertificate; /** * server_validation_ca block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/network_security_client_tls_policy#server_validation_ca NetworkSecurityClientTlsPolicy#server_validation_ca} */ readonly serverValidationCa?: NetworkSecurityClientTlsPolicyServerValidationCa[] | cdktf.IResolvable; /** * timeouts block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/network_security_client_tls_policy#timeouts NetworkSecurityClientTlsPolicy#timeouts} */ readonly timeouts?: NetworkSecurityClientTlsPolicyTimeouts; } export interface NetworkSecurityClientTlsPolicyClientCertificateCertificateProviderInstance { /** * Plugin instance name, used to locate and load CertificateProvider instance configuration. Set to "google_cloud_private_spiffe" to use Certificate Authority Service certificate provider instance. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/network_security_client_tls_policy#plugin_instance NetworkSecurityClientTlsPolicy#plugin_instance} */ readonly pluginInstance: string; } export declare function networkSecurityClientTlsPolicyClientCertificateCertificateProviderInstanceToTerraform(struct?: NetworkSecurityClientTlsPolicyClientCertificateCertificateProviderInstanceOutputReference | NetworkSecurityClientTlsPolicyClientCertificateCertificateProviderInstance): any; export declare function networkSecurityClientTlsPolicyClientCertificateCertificateProviderInstanceToHclTerraform(struct?: NetworkSecurityClientTlsPolicyClientCertificateCertificateProviderInstanceOutputReference | NetworkSecurityClientTlsPolicyClientCertificateCertificateProviderInstance): any; export declare class NetworkSecurityClientTlsPolicyClientCertificateCertificateProviderInstanceOutputReference 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(): NetworkSecurityClientTlsPolicyClientCertificateCertificateProviderInstance | undefined; set internalValue(value: NetworkSecurityClientTlsPolicyClientCertificateCertificateProviderInstance | undefined); private _pluginInstance?; get pluginInstance(): string; set pluginInstance(value: string); get pluginInstanceInput(): string | undefined; } export interface NetworkSecurityClientTlsPolicyClientCertificateGrpcEndpoint { /** * The target URI of the gRPC endpoint. Only UDS path is supported, and should start with "unix:". * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/network_security_client_tls_policy#target_uri NetworkSecurityClientTlsPolicy#target_uri} */ readonly targetUri: string; } export declare function networkSecurityClientTlsPolicyClientCertificateGrpcEndpointToTerraform(struct?: NetworkSecurityClientTlsPolicyClientCertificateGrpcEndpointOutputReference | NetworkSecurityClientTlsPolicyClientCertificateGrpcEndpoint): any; export declare function networkSecurityClientTlsPolicyClientCertificateGrpcEndpointToHclTerraform(struct?: NetworkSecurityClientTlsPolicyClientCertificateGrpcEndpointOutputReference | NetworkSecurityClientTlsPolicyClientCertificateGrpcEndpoint): any; export declare class NetworkSecurityClientTlsPolicyClientCertificateGrpcEndpointOutputReference 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(): NetworkSecurityClientTlsPolicyClientCertificateGrpcEndpoint | undefined; set internalValue(value: NetworkSecurityClientTlsPolicyClientCertificateGrpcEndpoint | undefined); private _targetUri?; get targetUri(): string; set targetUri(value: string); get targetUriInput(): string | undefined; } export interface NetworkSecurityClientTlsPolicyClientCertificate { /** * certificate_provider_instance block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/network_security_client_tls_policy#certificate_provider_instance NetworkSecurityClientTlsPolicy#certificate_provider_instance} */ readonly certificateProviderInstance?: NetworkSecurityClientTlsPolicyClientCertificateCertificateProviderInstance; /** * grpc_endpoint block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/network_security_client_tls_policy#grpc_endpoint NetworkSecurityClientTlsPolicy#grpc_endpoint} */ readonly grpcEndpoint?: NetworkSecurityClientTlsPolicyClientCertificateGrpcEndpoint; } export declare function networkSecurityClientTlsPolicyClientCertificateToTerraform(struct?: NetworkSecurityClientTlsPolicyClientCertificateOutputReference | NetworkSecurityClientTlsPolicyClientCertificate): any; export declare function networkSecurityClientTlsPolicyClientCertificateToHclTerraform(struct?: NetworkSecurityClientTlsPolicyClientCertificateOutputReference | NetworkSecurityClientTlsPolicyClientCertificate): any; export declare class NetworkSecurityClientTlsPolicyClientCertificateOutputReference 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(): NetworkSecurityClientTlsPolicyClientCertificate | undefined; set internalValue(value: NetworkSecurityClientTlsPolicyClientCertificate | undefined); private _certificateProviderInstance; get certificateProviderInstance(): NetworkSecurityClientTlsPolicyClientCertificateCertificateProviderInstanceOutputReference; putCertificateProviderInstance(value: NetworkSecurityClientTlsPolicyClientCertificateCertificateProviderInstance): void; resetCertificateProviderInstance(): void; get certificateProviderInstanceInput(): NetworkSecurityClientTlsPolicyClientCertificateCertificateProviderInstance | undefined; private _grpcEndpoint; get grpcEndpoint(): NetworkSecurityClientTlsPolicyClientCertificateGrpcEndpointOutputReference; putGrpcEndpoint(value: NetworkSecurityClientTlsPolicyClientCertificateGrpcEndpoint): void; resetGrpcEndpoint(): void; get grpcEndpointInput(): NetworkSecurityClientTlsPolicyClientCertificateGrpcEndpoint | undefined; } export interface NetworkSecurityClientTlsPolicyServerValidationCaCertificateProviderInstance { /** * Plugin instance name, used to locate and load CertificateProvider instance configuration. Set to "google_cloud_private_spiffe" to use Certificate Authority Service certificate provider instance. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/network_security_client_tls_policy#plugin_instance NetworkSecurityClientTlsPolicy#plugin_instance} */ readonly pluginInstance: string; } export declare function networkSecurityClientTlsPolicyServerValidationCaCertificateProviderInstanceToTerraform(struct?: NetworkSecurityClientTlsPolicyServerValidationCaCertificateProviderInstanceOutputReference | NetworkSecurityClientTlsPolicyServerValidationCaCertificateProviderInstance): any; export declare function networkSecurityClientTlsPolicyServerValidationCaCertificateProviderInstanceToHclTerraform(struct?: NetworkSecurityClientTlsPolicyServerValidationCaCertificateProviderInstanceOutputReference | NetworkSecurityClientTlsPolicyServerValidationCaCertificateProviderInstance): any; export declare class NetworkSecurityClientTlsPolicyServerValidationCaCertificateProviderInstanceOutputReference 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(): NetworkSecurityClientTlsPolicyServerValidationCaCertificateProviderInstance | undefined; set internalValue(value: NetworkSecurityClientTlsPolicyServerValidationCaCertificateProviderInstance | undefined); private _pluginInstance?; get pluginInstance(): string; set pluginInstance(value: string); get pluginInstanceInput(): string | undefined; } export interface NetworkSecurityClientTlsPolicyServerValidationCaGrpcEndpoint { /** * The target URI of the gRPC endpoint. Only UDS path is supported, and should start with "unix:". * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/network_security_client_tls_policy#target_uri NetworkSecurityClientTlsPolicy#target_uri} */ readonly targetUri: string; } export declare function networkSecurityClientTlsPolicyServerValidationCaGrpcEndpointToTerraform(struct?: NetworkSecurityClientTlsPolicyServerValidationCaGrpcEndpointOutputReference | NetworkSecurityClientTlsPolicyServerValidationCaGrpcEndpoint): any; export declare function networkSecurityClientTlsPolicyServerValidationCaGrpcEndpointToHclTerraform(struct?: NetworkSecurityClientTlsPolicyServerValidationCaGrpcEndpointOutputReference | NetworkSecurityClientTlsPolicyServerValidationCaGrpcEndpoint): any; export declare class NetworkSecurityClientTlsPolicyServerValidationCaGrpcEndpointOutputReference 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(): NetworkSecurityClientTlsPolicyServerValidationCaGrpcEndpoint | undefined; set internalValue(value: NetworkSecurityClientTlsPolicyServerValidationCaGrpcEndpoint | undefined); private _targetUri?; get targetUri(): string; set targetUri(value: string); get targetUriInput(): string | undefined; } export interface NetworkSecurityClientTlsPolicyServerValidationCa { /** * certificate_provider_instance block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/network_security_client_tls_policy#certificate_provider_instance NetworkSecurityClientTlsPolicy#certificate_provider_instance} */ readonly certificateProviderInstance?: NetworkSecurityClientTlsPolicyServerValidationCaCertificateProviderInstance; /** * grpc_endpoint block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/network_security_client_tls_policy#grpc_endpoint NetworkSecurityClientTlsPolicy#grpc_endpoint} */ readonly grpcEndpoint?: NetworkSecurityClientTlsPolicyServerValidationCaGrpcEndpoint; } export declare function networkSecurityClientTlsPolicyServerValidationCaToTerraform(struct?: NetworkSecurityClientTlsPolicyServerValidationCa | cdktf.IResolvable): any; export declare function networkSecurityClientTlsPolicyServerValidationCaToHclTerraform(struct?: NetworkSecurityClientTlsPolicyServerValidationCa | cdktf.IResolvable): any; export declare class NetworkSecurityClientTlsPolicyServerValidationCaOutputReference 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(): NetworkSecurityClientTlsPolicyServerValidationCa | cdktf.IResolvable | undefined; set internalValue(value: NetworkSecurityClientTlsPolicyServerValidationCa | cdktf.IResolvable | undefined); private _certificateProviderInstance; get certificateProviderInstance(): NetworkSecurityClientTlsPolicyServerValidationCaCertificateProviderInstanceOutputReference; putCertificateProviderInstance(value: NetworkSecurityClientTlsPolicyServerValidationCaCertificateProviderInstance): void; resetCertificateProviderInstance(): void; get certificateProviderInstanceInput(): NetworkSecurityClientTlsPolicyServerValidationCaCertificateProviderInstance | undefined; private _grpcEndpoint; get grpcEndpoint(): NetworkSecurityClientTlsPolicyServerValidationCaGrpcEndpointOutputReference; putGrpcEndpoint(value: NetworkSecurityClientTlsPolicyServerValidationCaGrpcEndpoint): void; resetGrpcEndpoint(): void; get grpcEndpointInput(): NetworkSecurityClientTlsPolicyServerValidationCaGrpcEndpoint | undefined; } export declare class NetworkSecurityClientTlsPolicyServerValidationCaList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: NetworkSecurityClientTlsPolicyServerValidationCa[] | 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): NetworkSecurityClientTlsPolicyServerValidationCaOutputReference; } export interface NetworkSecurityClientTlsPolicyTimeouts { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/network_security_client_tls_policy#create NetworkSecurityClientTlsPolicy#create} */ readonly create?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/network_security_client_tls_policy#delete NetworkSecurityClientTlsPolicy#delete} */ readonly delete?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/network_security_client_tls_policy#update NetworkSecurityClientTlsPolicy#update} */ readonly update?: string; } export declare function networkSecurityClientTlsPolicyTimeoutsToTerraform(struct?: NetworkSecurityClientTlsPolicyTimeouts | cdktf.IResolvable): any; export declare function networkSecurityClientTlsPolicyTimeoutsToHclTerraform(struct?: NetworkSecurityClientTlsPolicyTimeouts | cdktf.IResolvable): any; export declare class NetworkSecurityClientTlsPolicyTimeoutsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @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(): NetworkSecurityClientTlsPolicyTimeouts | cdktf.IResolvable | undefined; set internalValue(value: NetworkSecurityClientTlsPolicyTimeouts | cdktf.IResolvable | undefined); private _create?; get create(): string; set create(value: string); resetCreate(): void; get createInput(): string | undefined; private _delete?; get delete(): string; set delete(value: string); resetDelete(): void; get deleteInput(): string | undefined; private _update?; get update(): string; set update(value: string); resetUpdate(): void; get updateInput(): string | undefined; } /** * Represents a {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/network_security_client_tls_policy google_network_security_client_tls_policy} */ export declare class NetworkSecurityClientTlsPolicy extends cdktf.TerraformResource { static readonly tfResourceType = "google_network_security_client_tls_policy"; /** * Generates CDKTF code for importing a NetworkSecurityClientTlsPolicy 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 NetworkSecurityClientTlsPolicy to import * @param importFromId The id of the existing NetworkSecurityClientTlsPolicy that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/network_security_client_tls_policy#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the NetworkSecurityClientTlsPolicy to import is found */ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): cdktf.ImportableResource; /** * Create a new {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/network_security_client_tls_policy google_network_security_client_tls_policy} 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 NetworkSecurityClientTlsPolicyConfig */ constructor(scope: Construct, id: string, config: NetworkSecurityClientTlsPolicyConfig); get createTime(): string; private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string | undefined; private _effectiveLabels; get effectiveLabels(): cdktf.StringMap; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string | undefined; private _labels?; get labels(): { [key: string]: string; }; set labels(value: { [key: string]: string; }); resetLabels(): void; get labelsInput(): { [key: string]: string; } | undefined; private _location?; get location(): string; set location(value: string); resetLocation(): void; get locationInput(): string | undefined; private _name?; get name(): string; set name(value: string); get nameInput(): string | undefined; private _project?; get project(): string; set project(value: string); resetProject(): void; get projectInput(): string | undefined; private _sni?; get sni(): string; set sni(value: string); resetSni(): void; get sniInput(): string | undefined; private _terraformLabels; get terraformLabels(): cdktf.StringMap; get updateTime(): string; private _clientCertificate; get clientCertificate(): NetworkSecurityClientTlsPolicyClientCertificateOutputReference; putClientCertificate(value: NetworkSecurityClientTlsPolicyClientCertificate): void; resetClientCertificate(): void; get clientCertificateInput(): NetworkSecurityClientTlsPolicyClientCertificate | undefined; private _serverValidationCa; get serverValidationCa(): NetworkSecurityClientTlsPolicyServerValidationCaList; putServerValidationCa(value: NetworkSecurityClientTlsPolicyServerValidationCa[] | cdktf.IResolvable): void; resetServerValidationCa(): void; get serverValidationCaInput(): cdktf.IResolvable | NetworkSecurityClientTlsPolicyServerValidationCa[] | undefined; private _timeouts; get timeouts(): NetworkSecurityClientTlsPolicyTimeoutsOutputReference; putTimeouts(value: NetworkSecurityClientTlsPolicyTimeouts): void; resetTimeouts(): void; get timeoutsInput(): cdktf.IResolvable | NetworkSecurityClientTlsPolicyTimeouts | undefined; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }