UNPKG

@cdktf/provider-google

Version:

Prebuilt google Provider for Terraform CDK (cdktf)

832 lines 381 kB
/** * Copyright (c) HashiCorp, Inc. * SPDX-License-Identifier: MPL-2.0 */ import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface ComputeUrlMapConfig extends cdktf.TerraformMetaArguments { /** * The backend service or backend bucket to use when none of the given rules match. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#default_service ComputeUrlMap#default_service} */ readonly defaultService?: string; /** * An optional description of this resource. Provide this property when you create * the resource. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#description ComputeUrlMap#description} */ readonly description?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#id ComputeUrlMap#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; /** * Name of the resource. Provided by the client when the resource is created. The * name must be 1-63 characters long, and comply with RFC1035. Specifically, the * name must be 1-63 characters long and match the regular expression * '[a-z]([-a-z0-9]*[a-z0-9])?' which means the first character must be a lowercase * letter, and all following characters must be a dash, lowercase letter, or digit, * except the last character, which cannot be a dash. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#name ComputeUrlMap#name} */ readonly name: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#project ComputeUrlMap#project} */ readonly project?: string; /** * default_custom_error_response_policy block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#default_custom_error_response_policy ComputeUrlMap#default_custom_error_response_policy} */ readonly defaultCustomErrorResponsePolicy?: ComputeUrlMapDefaultCustomErrorResponsePolicy; /** * default_route_action block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#default_route_action ComputeUrlMap#default_route_action} */ readonly defaultRouteAction?: ComputeUrlMapDefaultRouteAction; /** * default_url_redirect block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#default_url_redirect ComputeUrlMap#default_url_redirect} */ readonly defaultUrlRedirect?: ComputeUrlMapDefaultUrlRedirect; /** * header_action block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#header_action ComputeUrlMap#header_action} */ readonly headerAction?: ComputeUrlMapHeaderAction; /** * host_rule block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#host_rule ComputeUrlMap#host_rule} */ readonly hostRule?: ComputeUrlMapHostRule[] | cdktf.IResolvable; /** * path_matcher block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#path_matcher ComputeUrlMap#path_matcher} */ readonly pathMatcher?: ComputeUrlMapPathMatcher[] | cdktf.IResolvable; /** * test block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#test ComputeUrlMap#test} */ readonly test?: ComputeUrlMapTest[] | cdktf.IResolvable; /** * timeouts block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#timeouts ComputeUrlMap#timeouts} */ readonly timeouts?: ComputeUrlMapTimeouts; } export interface ComputeUrlMapDefaultCustomErrorResponsePolicyErrorResponseRule { /** * Valid values include: * - A number between 400 and 599: For example 401 or 503, in which case the load balancer applies the policy if the error code exactly matches this value. * - 5xx: Load Balancer will apply the policy if the backend service responds with any response code in the range of 500 to 599. * - 4xx: Load Balancer will apply the policy if the backend service responds with any response code in the range of 400 to 499. * Values must be unique within matchResponseCodes and across all errorResponseRules of CustomErrorResponsePolicy. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#match_response_codes ComputeUrlMap#match_response_codes} */ readonly matchResponseCodes?: string[]; /** * The HTTP status code returned with the response containing the custom error content. * If overrideResponseCode is not supplied, the same response code returned by the original backend bucket or backend service is returned to the client. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#override_response_code ComputeUrlMap#override_response_code} */ readonly overrideResponseCode?: number; /** * The full path to a file within backendBucket. For example: /errors/defaultError.html * path must start with a leading slash. path cannot have trailing slashes. * If the file is not available in backendBucket or the load balancer cannot reach the BackendBucket, a simple Not Found Error is returned to the client. * The value must be from 1 to 1024 characters. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#path ComputeUrlMap#path} */ readonly path?: string; } export declare function computeUrlMapDefaultCustomErrorResponsePolicyErrorResponseRuleToTerraform(struct?: ComputeUrlMapDefaultCustomErrorResponsePolicyErrorResponseRule | cdktf.IResolvable): any; export declare function computeUrlMapDefaultCustomErrorResponsePolicyErrorResponseRuleToHclTerraform(struct?: ComputeUrlMapDefaultCustomErrorResponsePolicyErrorResponseRule | cdktf.IResolvable): any; export declare class ComputeUrlMapDefaultCustomErrorResponsePolicyErrorResponseRuleOutputReference 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(): ComputeUrlMapDefaultCustomErrorResponsePolicyErrorResponseRule | cdktf.IResolvable | undefined; set internalValue(value: ComputeUrlMapDefaultCustomErrorResponsePolicyErrorResponseRule | cdktf.IResolvable | undefined); private _matchResponseCodes?; get matchResponseCodes(): string[]; set matchResponseCodes(value: string[]); resetMatchResponseCodes(): void; get matchResponseCodesInput(): string[] | undefined; private _overrideResponseCode?; get overrideResponseCode(): number; set overrideResponseCode(value: number); resetOverrideResponseCode(): void; get overrideResponseCodeInput(): number | undefined; private _path?; get path(): string; set path(value: string); resetPath(): void; get pathInput(): string | undefined; } export declare class ComputeUrlMapDefaultCustomErrorResponsePolicyErrorResponseRuleList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: ComputeUrlMapDefaultCustomErrorResponsePolicyErrorResponseRule[] | 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): ComputeUrlMapDefaultCustomErrorResponsePolicyErrorResponseRuleOutputReference; } export interface ComputeUrlMapDefaultCustomErrorResponsePolicy { /** * The full or partial URL to the BackendBucket resource that contains the custom error content. Examples are: * * https://www.googleapis.com/compute/v1/projects/project/global/backendBuckets/myBackendBucket * compute/v1/projects/project/global/backendBuckets/myBackendBucket * global/backendBuckets/myBackendBucket * * If errorService is not specified at lower levels like pathMatcher, pathRule and routeRule, an errorService specified at a higher level in the UrlMap will be used. If UrlMap.defaultCustomErrorResponsePolicy contains one or more errorResponseRules[], it must specify errorService. * If load balancer cannot reach the backendBucket, a simple Not Found Error will be returned, with the original response code (or overrideResponseCode if configured). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#error_service ComputeUrlMap#error_service} */ readonly errorService?: string; /** * error_response_rule block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#error_response_rule ComputeUrlMap#error_response_rule} */ readonly errorResponseRule?: ComputeUrlMapDefaultCustomErrorResponsePolicyErrorResponseRule[] | cdktf.IResolvable; } export declare function computeUrlMapDefaultCustomErrorResponsePolicyToTerraform(struct?: ComputeUrlMapDefaultCustomErrorResponsePolicyOutputReference | ComputeUrlMapDefaultCustomErrorResponsePolicy): any; export declare function computeUrlMapDefaultCustomErrorResponsePolicyToHclTerraform(struct?: ComputeUrlMapDefaultCustomErrorResponsePolicyOutputReference | ComputeUrlMapDefaultCustomErrorResponsePolicy): any; export declare class ComputeUrlMapDefaultCustomErrorResponsePolicyOutputReference 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(): ComputeUrlMapDefaultCustomErrorResponsePolicy | undefined; set internalValue(value: ComputeUrlMapDefaultCustomErrorResponsePolicy | undefined); private _errorService?; get errorService(): string; set errorService(value: string); resetErrorService(): void; get errorServiceInput(): string | undefined; private _errorResponseRule; get errorResponseRule(): ComputeUrlMapDefaultCustomErrorResponsePolicyErrorResponseRuleList; putErrorResponseRule(value: ComputeUrlMapDefaultCustomErrorResponsePolicyErrorResponseRule[] | cdktf.IResolvable): void; resetErrorResponseRule(): void; get errorResponseRuleInput(): cdktf.IResolvable | ComputeUrlMapDefaultCustomErrorResponsePolicyErrorResponseRule[] | undefined; } export interface ComputeUrlMapDefaultRouteActionCorsPolicy { /** * In response to a preflight request, setting this to true indicates that the actual request can include user credentials. * This translates to the Access-Control-Allow-Credentials header. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#allow_credentials ComputeUrlMap#allow_credentials} */ readonly allowCredentials?: boolean | cdktf.IResolvable; /** * Specifies the content for the Access-Control-Allow-Headers header. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#allow_headers ComputeUrlMap#allow_headers} */ readonly allowHeaders?: string[]; /** * Specifies the content for the Access-Control-Allow-Methods header. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#allow_methods ComputeUrlMap#allow_methods} */ readonly allowMethods?: string[]; /** * Specifies the regular expression patterns that match allowed origins. For regular expression grammar * please see en.cppreference.com/w/cpp/regex/ecmascript * An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#allow_origin_regexes ComputeUrlMap#allow_origin_regexes} */ readonly allowOriginRegexes?: string[]; /** * Specifies the list of origins that will be allowed to do CORS requests. * An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#allow_origins ComputeUrlMap#allow_origins} */ readonly allowOrigins?: string[]; /** * If true, specifies the CORS policy is disabled. The default value is false, which indicates that the CORS policy is in effect. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#disabled ComputeUrlMap#disabled} */ readonly disabled?: boolean | cdktf.IResolvable; /** * Specifies the content for the Access-Control-Expose-Headers header. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#expose_headers ComputeUrlMap#expose_headers} */ readonly exposeHeaders?: string[]; /** * Specifies how long results of a preflight request can be cached in seconds. * This translates to the Access-Control-Max-Age header. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#max_age ComputeUrlMap#max_age} */ readonly maxAge?: number; } export declare function computeUrlMapDefaultRouteActionCorsPolicyToTerraform(struct?: ComputeUrlMapDefaultRouteActionCorsPolicyOutputReference | ComputeUrlMapDefaultRouteActionCorsPolicy): any; export declare function computeUrlMapDefaultRouteActionCorsPolicyToHclTerraform(struct?: ComputeUrlMapDefaultRouteActionCorsPolicyOutputReference | ComputeUrlMapDefaultRouteActionCorsPolicy): any; export declare class ComputeUrlMapDefaultRouteActionCorsPolicyOutputReference 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(): ComputeUrlMapDefaultRouteActionCorsPolicy | undefined; set internalValue(value: ComputeUrlMapDefaultRouteActionCorsPolicy | undefined); private _allowCredentials?; get allowCredentials(): boolean | cdktf.IResolvable; set allowCredentials(value: boolean | cdktf.IResolvable); resetAllowCredentials(): void; get allowCredentialsInput(): boolean | cdktf.IResolvable | undefined; private _allowHeaders?; get allowHeaders(): string[]; set allowHeaders(value: string[]); resetAllowHeaders(): void; get allowHeadersInput(): string[] | undefined; private _allowMethods?; get allowMethods(): string[]; set allowMethods(value: string[]); resetAllowMethods(): void; get allowMethodsInput(): string[] | undefined; private _allowOriginRegexes?; get allowOriginRegexes(): string[]; set allowOriginRegexes(value: string[]); resetAllowOriginRegexes(): void; get allowOriginRegexesInput(): string[] | undefined; private _allowOrigins?; get allowOrigins(): string[]; set allowOrigins(value: string[]); resetAllowOrigins(): void; get allowOriginsInput(): string[] | undefined; private _disabled?; get disabled(): boolean | cdktf.IResolvable; set disabled(value: boolean | cdktf.IResolvable); resetDisabled(): void; get disabledInput(): boolean | cdktf.IResolvable | undefined; private _exposeHeaders?; get exposeHeaders(): string[]; set exposeHeaders(value: string[]); resetExposeHeaders(): void; get exposeHeadersInput(): string[] | undefined; private _maxAge?; get maxAge(): number; set maxAge(value: number); resetMaxAge(): void; get maxAgeInput(): number | undefined; } export interface ComputeUrlMapDefaultRouteActionFaultInjectionPolicyAbort { /** * The HTTP status code used to abort the request. * The value must be between 200 and 599 inclusive. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#http_status ComputeUrlMap#http_status} */ readonly httpStatus?: number; /** * The percentage of traffic (connections/operations/requests) which will be aborted as part of fault injection. * The value must be between 0.0 and 100.0 inclusive. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#percentage ComputeUrlMap#percentage} */ readonly percentage?: number; } export declare function computeUrlMapDefaultRouteActionFaultInjectionPolicyAbortToTerraform(struct?: ComputeUrlMapDefaultRouteActionFaultInjectionPolicyAbortOutputReference | ComputeUrlMapDefaultRouteActionFaultInjectionPolicyAbort): any; export declare function computeUrlMapDefaultRouteActionFaultInjectionPolicyAbortToHclTerraform(struct?: ComputeUrlMapDefaultRouteActionFaultInjectionPolicyAbortOutputReference | ComputeUrlMapDefaultRouteActionFaultInjectionPolicyAbort): any; export declare class ComputeUrlMapDefaultRouteActionFaultInjectionPolicyAbortOutputReference 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(): ComputeUrlMapDefaultRouteActionFaultInjectionPolicyAbort | undefined; set internalValue(value: ComputeUrlMapDefaultRouteActionFaultInjectionPolicyAbort | undefined); private _httpStatus?; get httpStatus(): number; set httpStatus(value: number); resetHttpStatus(): void; get httpStatusInput(): number | undefined; private _percentage?; get percentage(): number; set percentage(value: number); resetPercentage(): void; get percentageInput(): number | undefined; } export interface ComputeUrlMapDefaultRouteActionFaultInjectionPolicyDelayFixedDelay { /** * Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are * represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#nanos ComputeUrlMap#nanos} */ readonly nanos?: number; /** * Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. * Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#seconds ComputeUrlMap#seconds} */ readonly seconds?: string; } export declare function computeUrlMapDefaultRouteActionFaultInjectionPolicyDelayFixedDelayToTerraform(struct?: ComputeUrlMapDefaultRouteActionFaultInjectionPolicyDelayFixedDelayOutputReference | ComputeUrlMapDefaultRouteActionFaultInjectionPolicyDelayFixedDelay): any; export declare function computeUrlMapDefaultRouteActionFaultInjectionPolicyDelayFixedDelayToHclTerraform(struct?: ComputeUrlMapDefaultRouteActionFaultInjectionPolicyDelayFixedDelayOutputReference | ComputeUrlMapDefaultRouteActionFaultInjectionPolicyDelayFixedDelay): any; export declare class ComputeUrlMapDefaultRouteActionFaultInjectionPolicyDelayFixedDelayOutputReference 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(): ComputeUrlMapDefaultRouteActionFaultInjectionPolicyDelayFixedDelay | undefined; set internalValue(value: ComputeUrlMapDefaultRouteActionFaultInjectionPolicyDelayFixedDelay | undefined); private _nanos?; get nanos(): number; set nanos(value: number); resetNanos(): void; get nanosInput(): number | undefined; private _seconds?; get seconds(): string; set seconds(value: string); resetSeconds(): void; get secondsInput(): string | undefined; } export interface ComputeUrlMapDefaultRouteActionFaultInjectionPolicyDelay { /** * The percentage of traffic (connections/operations/requests) on which delay will be introduced as part of fault injection. * The value must be between 0.0 and 100.0 inclusive. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#percentage ComputeUrlMap#percentage} */ readonly percentage?: number; /** * fixed_delay block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#fixed_delay ComputeUrlMap#fixed_delay} */ readonly fixedDelay?: ComputeUrlMapDefaultRouteActionFaultInjectionPolicyDelayFixedDelay; } export declare function computeUrlMapDefaultRouteActionFaultInjectionPolicyDelayToTerraform(struct?: ComputeUrlMapDefaultRouteActionFaultInjectionPolicyDelayOutputReference | ComputeUrlMapDefaultRouteActionFaultInjectionPolicyDelay): any; export declare function computeUrlMapDefaultRouteActionFaultInjectionPolicyDelayToHclTerraform(struct?: ComputeUrlMapDefaultRouteActionFaultInjectionPolicyDelayOutputReference | ComputeUrlMapDefaultRouteActionFaultInjectionPolicyDelay): any; export declare class ComputeUrlMapDefaultRouteActionFaultInjectionPolicyDelayOutputReference 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(): ComputeUrlMapDefaultRouteActionFaultInjectionPolicyDelay | undefined; set internalValue(value: ComputeUrlMapDefaultRouteActionFaultInjectionPolicyDelay | undefined); private _percentage?; get percentage(): number; set percentage(value: number); resetPercentage(): void; get percentageInput(): number | undefined; private _fixedDelay; get fixedDelay(): ComputeUrlMapDefaultRouteActionFaultInjectionPolicyDelayFixedDelayOutputReference; putFixedDelay(value: ComputeUrlMapDefaultRouteActionFaultInjectionPolicyDelayFixedDelay): void; resetFixedDelay(): void; get fixedDelayInput(): ComputeUrlMapDefaultRouteActionFaultInjectionPolicyDelayFixedDelay | undefined; } export interface ComputeUrlMapDefaultRouteActionFaultInjectionPolicy { /** * abort block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#abort ComputeUrlMap#abort} */ readonly abort?: ComputeUrlMapDefaultRouteActionFaultInjectionPolicyAbort; /** * delay block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#delay ComputeUrlMap#delay} */ readonly delay?: ComputeUrlMapDefaultRouteActionFaultInjectionPolicyDelay; } export declare function computeUrlMapDefaultRouteActionFaultInjectionPolicyToTerraform(struct?: ComputeUrlMapDefaultRouteActionFaultInjectionPolicyOutputReference | ComputeUrlMapDefaultRouteActionFaultInjectionPolicy): any; export declare function computeUrlMapDefaultRouteActionFaultInjectionPolicyToHclTerraform(struct?: ComputeUrlMapDefaultRouteActionFaultInjectionPolicyOutputReference | ComputeUrlMapDefaultRouteActionFaultInjectionPolicy): any; export declare class ComputeUrlMapDefaultRouteActionFaultInjectionPolicyOutputReference 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(): ComputeUrlMapDefaultRouteActionFaultInjectionPolicy | undefined; set internalValue(value: ComputeUrlMapDefaultRouteActionFaultInjectionPolicy | undefined); private _abort; get abort(): ComputeUrlMapDefaultRouteActionFaultInjectionPolicyAbortOutputReference; putAbort(value: ComputeUrlMapDefaultRouteActionFaultInjectionPolicyAbort): void; resetAbort(): void; get abortInput(): ComputeUrlMapDefaultRouteActionFaultInjectionPolicyAbort | undefined; private _delay; get delay(): ComputeUrlMapDefaultRouteActionFaultInjectionPolicyDelayOutputReference; putDelay(value: ComputeUrlMapDefaultRouteActionFaultInjectionPolicyDelay): void; resetDelay(): void; get delayInput(): ComputeUrlMapDefaultRouteActionFaultInjectionPolicyDelay | undefined; } export interface ComputeUrlMapDefaultRouteActionMaxStreamDuration { /** * Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented * with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#nanos ComputeUrlMap#nanos} */ readonly nanos?: number; /** * Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. * Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#seconds ComputeUrlMap#seconds} */ readonly seconds: string; } export declare function computeUrlMapDefaultRouteActionMaxStreamDurationToTerraform(struct?: ComputeUrlMapDefaultRouteActionMaxStreamDurationOutputReference | ComputeUrlMapDefaultRouteActionMaxStreamDuration): any; export declare function computeUrlMapDefaultRouteActionMaxStreamDurationToHclTerraform(struct?: ComputeUrlMapDefaultRouteActionMaxStreamDurationOutputReference | ComputeUrlMapDefaultRouteActionMaxStreamDuration): any; export declare class ComputeUrlMapDefaultRouteActionMaxStreamDurationOutputReference 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(): ComputeUrlMapDefaultRouteActionMaxStreamDuration | undefined; set internalValue(value: ComputeUrlMapDefaultRouteActionMaxStreamDuration | undefined); private _nanos?; get nanos(): number; set nanos(value: number); resetNanos(): void; get nanosInput(): number | undefined; private _seconds?; get seconds(): string; set seconds(value: string); get secondsInput(): string | undefined; } export interface ComputeUrlMapDefaultRouteActionRequestMirrorPolicy { /** * The full or partial URL to the BackendService resource being mirrored to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#backend_service ComputeUrlMap#backend_service} */ readonly backendService: string; } export declare function computeUrlMapDefaultRouteActionRequestMirrorPolicyToTerraform(struct?: ComputeUrlMapDefaultRouteActionRequestMirrorPolicyOutputReference | ComputeUrlMapDefaultRouteActionRequestMirrorPolicy): any; export declare function computeUrlMapDefaultRouteActionRequestMirrorPolicyToHclTerraform(struct?: ComputeUrlMapDefaultRouteActionRequestMirrorPolicyOutputReference | ComputeUrlMapDefaultRouteActionRequestMirrorPolicy): any; export declare class ComputeUrlMapDefaultRouteActionRequestMirrorPolicyOutputReference 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(): ComputeUrlMapDefaultRouteActionRequestMirrorPolicy | undefined; set internalValue(value: ComputeUrlMapDefaultRouteActionRequestMirrorPolicy | undefined); private _backendService?; get backendService(): string; set backendService(value: string); get backendServiceInput(): string | undefined; } export interface ComputeUrlMapDefaultRouteActionRetryPolicyPerTryTimeout { /** * Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are * represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#nanos ComputeUrlMap#nanos} */ readonly nanos?: number; /** * Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. * Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#seconds ComputeUrlMap#seconds} */ readonly seconds?: string; } export declare function computeUrlMapDefaultRouteActionRetryPolicyPerTryTimeoutToTerraform(struct?: ComputeUrlMapDefaultRouteActionRetryPolicyPerTryTimeoutOutputReference | ComputeUrlMapDefaultRouteActionRetryPolicyPerTryTimeout): any; export declare function computeUrlMapDefaultRouteActionRetryPolicyPerTryTimeoutToHclTerraform(struct?: ComputeUrlMapDefaultRouteActionRetryPolicyPerTryTimeoutOutputReference | ComputeUrlMapDefaultRouteActionRetryPolicyPerTryTimeout): any; export declare class ComputeUrlMapDefaultRouteActionRetryPolicyPerTryTimeoutOutputReference 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(): ComputeUrlMapDefaultRouteActionRetryPolicyPerTryTimeout | undefined; set internalValue(value: ComputeUrlMapDefaultRouteActionRetryPolicyPerTryTimeout | undefined); private _nanos?; get nanos(): number; set nanos(value: number); resetNanos(): void; get nanosInput(): number | undefined; private _seconds?; get seconds(): string; set seconds(value: string); resetSeconds(): void; get secondsInput(): string | undefined; } export interface ComputeUrlMapDefaultRouteActionRetryPolicy { /** * Specifies the allowed number retries. This number must be > 0. If not specified, defaults to 1. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#num_retries ComputeUrlMap#num_retries} */ readonly numRetries?: number; /** * Specfies one or more conditions when this retry rule applies. Valid values are: * * * 5xx: Loadbalancer will attempt a retry if the backend service responds with any 5xx response code, * or if the backend service does not respond at all, example: disconnects, reset, read timeout, * * connection failure, and refused streams. * * gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. * * connect-failure: Loadbalancer will retry on failures connecting to backend services, * for example due to connection timeouts. * * retriable-4xx: Loadbalancer will retry for retriable 4xx response codes. * Currently the only retriable error supported is 409. * * refused-stream:Loadbalancer will retry if the backend service resets the stream with a REFUSED_STREAM error code. * This reset type indicates that it is safe to retry. * * cancelled: Loadbalancer will retry if the gRPC status code in the response header is set to cancelled * * deadline-exceeded: Loadbalancer will retry if the gRPC status code in the response header is set to deadline-exceeded * * resource-exhausted: Loadbalancer will retry if the gRPC status code in the response header is set to resource-exhausted * * unavailable: Loadbalancer will retry if the gRPC status code in the response header is set to unavailable * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#retry_conditions ComputeUrlMap#retry_conditions} */ readonly retryConditions?: string[]; /** * per_try_timeout block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#per_try_timeout ComputeUrlMap#per_try_timeout} */ readonly perTryTimeout?: ComputeUrlMapDefaultRouteActionRetryPolicyPerTryTimeout; } export declare function computeUrlMapDefaultRouteActionRetryPolicyToTerraform(struct?: ComputeUrlMapDefaultRouteActionRetryPolicyOutputReference | ComputeUrlMapDefaultRouteActionRetryPolicy): any; export declare function computeUrlMapDefaultRouteActionRetryPolicyToHclTerraform(struct?: ComputeUrlMapDefaultRouteActionRetryPolicyOutputReference | ComputeUrlMapDefaultRouteActionRetryPolicy): any; export declare class ComputeUrlMapDefaultRouteActionRetryPolicyOutputReference 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(): ComputeUrlMapDefaultRouteActionRetryPolicy | undefined; set internalValue(value: ComputeUrlMapDefaultRouteActionRetryPolicy | undefined); private _numRetries?; get numRetries(): number; set numRetries(value: number); resetNumRetries(): void; get numRetriesInput(): number | undefined; private _retryConditions?; get retryConditions(): string[]; set retryConditions(value: string[]); resetRetryConditions(): void; get retryConditionsInput(): string[] | undefined; private _perTryTimeout; get perTryTimeout(): ComputeUrlMapDefaultRouteActionRetryPolicyPerTryTimeoutOutputReference; putPerTryTimeout(value: ComputeUrlMapDefaultRouteActionRetryPolicyPerTryTimeout): void; resetPerTryTimeout(): void; get perTryTimeoutInput(): ComputeUrlMapDefaultRouteActionRetryPolicyPerTryTimeout | undefined; } export interface ComputeUrlMapDefaultRouteActionTimeout { /** * Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented * with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#nanos ComputeUrlMap#nanos} */ readonly nanos?: number; /** * Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. * Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#seconds ComputeUrlMap#seconds} */ readonly seconds?: string; } export declare function computeUrlMapDefaultRouteActionTimeoutToTerraform(struct?: ComputeUrlMapDefaultRouteActionTimeoutOutputReference | ComputeUrlMapDefaultRouteActionTimeout): any; export declare function computeUrlMapDefaultRouteActionTimeoutToHclTerraform(struct?: ComputeUrlMapDefaultRouteActionTimeoutOutputReference | ComputeUrlMapDefaultRouteActionTimeout): any; export declare class ComputeUrlMapDefaultRouteActionTimeoutOutputReference 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(): ComputeUrlMapDefaultRouteActionTimeout | undefined; set internalValue(value: ComputeUrlMapDefaultRouteActionTimeout | undefined); private _nanos?; get nanos(): number; set nanos(value: number); resetNanos(): void; get nanosInput(): number | undefined; private _seconds?; get seconds(): string; set seconds(value: string); resetSeconds(): void; get secondsInput(): string | undefined; } export interface ComputeUrlMapDefaultRouteActionUrlRewrite { /** * Prior to forwarding the request to the selected service, the request's host header is replaced * with contents of hostRewrite. * * The value must be between 1 and 255 characters. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#host_rewrite ComputeUrlMap#host_rewrite} */ readonly hostRewrite?: string; /** * Prior to forwarding the request to the selected backend service, the matching portion of the * request's path is replaced by pathPrefixRewrite. * * The value must be between 1 and 1024 characters. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#path_prefix_rewrite ComputeUrlMap#path_prefix_rewrite} */ readonly pathPrefixRewrite?: string; } export declare function computeUrlMapDefaultRouteActionUrlRewriteToTerraform(struct?: ComputeUrlMapDefaultRouteActionUrlRewriteOutputReference | ComputeUrlMapDefaultRouteActionUrlRewrite): any; export declare function computeUrlMapDefaultRouteActionUrlRewriteToHclTerraform(struct?: ComputeUrlMapDefaultRouteActionUrlRewriteOutputReference | ComputeUrlMapDefaultRouteActionUrlRewrite): any; export declare class ComputeUrlMapDefaultRouteActionUrlRewriteOutputReference 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(): ComputeUrlMapDefaultRouteActionUrlRewrite | undefined; set internalValue(value: ComputeUrlMapDefaultRouteActionUrlRewrite | undefined); private _hostRewrite?; get hostRewrite(): string; set hostRewrite(value: string); resetHostRewrite(): void; get hostRewriteInput(): string | undefined; private _pathPrefixRewrite?; get pathPrefixRewrite(): string; set pathPrefixRewrite(value: string); resetPathPrefixRewrite(): void; get pathPrefixRewriteInput(): string | undefined; } export interface ComputeUrlMapDefaultRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd { /** * The name of the header to add. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#header_name ComputeUrlMap#header_name} */ readonly headerName?: string; /** * The value of the header to add. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#header_value ComputeUrlMap#header_value} */ readonly headerValue?: string; /** * If false, headerValue is appended to any values that already exist for the header. * If true, headerValue is set for the header, discarding any values that were set for that header. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#replace ComputeUrlMap#replace} */ readonly replace?: boolean | cdktf.IResolvable; } export declare function computeUrlMapDefaultRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAddToTerraform(struct?: ComputeUrlMapDefaultRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd | cdktf.IResolvable): any; export declare function computeUrlMapDefaultRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAddToHclTerraform(struct?: ComputeUrlMapDefaultRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd | cdktf.IResolvable): any; export declare class ComputeUrlMapDefaultRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAddOutputReference 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(): ComputeUrlMapDefaultRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd | cdktf.IResolvable | undefined; set internalValue(value: ComputeUrlMapDefaultRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd | cdktf.IResolvable | undefined); private _headerName?; get headerName(): string; set headerName(value: string); resetHeaderName(): void; get headerNameInput(): string | undefined; private _headerValue?; get headerValue(): string; set headerValue(value: string); resetHeaderValue(): void; get headerValueInput(): string | undefined; private _replace?; get replace(): boolean | cdktf.IResolvable; set replace(value: boolean | cdktf.IResolvable); resetReplace(): void; get replaceInput(): boolean | cdktf.IResolvable | undefined; } export declare class ComputeUrlMapDefaultRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAddList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: ComputeUrlMapDefaultRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd[] | 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): ComputeUrlMapDefaultRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAddOutputReference; } export interface ComputeUrlMapDefaultRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd { /** * The name of the header to add. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#header_name ComputeUrlMap#header_name} */ readonly headerName?: string; /** * The value of the header to add. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#header_value ComputeUrlMap#header_value} */ readonly headerValue?: string; /** * If false, headerValue is appended to any values that already exist for the header. * If true, headerValue is set for the header, discarding any values that were set for that header. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_url_map#replace ComputeUrlMap#replace} */ readonly replace?: boolean | cdktf.IResolvable; } export declare function computeUrlMapDefaultRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAddToTerraform(struct?: ComputeUrlMapDefaultRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd | cdktf.IResolvable): any; export declare function computeUrlMapDefaultRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAddToHclTerraform(struct?: ComputeUrlMapDefaultRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd | cdktf.IResolvable): any; export declare class ComputeUrlMapDefaultRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAddOutputReference 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(): ComputeUrlMapDefaultRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd | cdktf.IResolvable | undefined; set internalValue(value: ComputeUrlMapDefaultRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd | cdktf.IResolvable | undefined); private _headerName?; get headerName(): string; set headerName(value: string); resetHeaderName(): void; get headerNameInput(): string | undefined; private _headerValue?; get headerValue(): string; set headerValue(value: string); resetHeaderValue(): void; get headerValueInput(): string | undefined; private _replace?; get replace(): boolean | cdktf.IResolvable; set replace(value: boolean | cdktf.IResolvable); resetReplace(): void; get replaceInput(): boolean | cdktf.IResolvable | undefined; } export declare class ComputeUrlMapDefaultRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAddList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: ComputeUrlMapDefaultRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd[] | 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 wrapp