UNPKG

@cdktf/provider-google

Version:

Prebuilt google Provider for Terraform CDK (cdktf)

684 lines (683 loc) 42.6 kB
/** * Copyright (c) HashiCorp, Inc. * SPDX-License-Identifier: MPL-2.0 */ import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface AccessContextManagerAccessLevelsConfig extends cdktf.TerraformMetaArguments { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#id AccessContextManagerAccessLevels#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; /** * The AccessPolicy this AccessLevel lives in. * Format: accessPolicies/{policy_id} * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#parent AccessContextManagerAccessLevels#parent} */ readonly parent: string; /** * access_levels block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#access_levels AccessContextManagerAccessLevels#access_levels} */ readonly accessLevels?: AccessContextManagerAccessLevelsAccessLevels[] | cdktf.IResolvable; /** * timeouts block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#timeouts AccessContextManagerAccessLevels#timeouts} */ readonly timeouts?: AccessContextManagerAccessLevelsTimeouts; } export interface AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraints { /** * The minimum allowed OS version. If not set, any version * of this OS satisfies the constraint. * Format: "major.minor.patch" such as "10.5.301", "9.2.1". * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#minimum_version AccessContextManagerAccessLevels#minimum_version} */ readonly minimumVersion?: string; /** * The operating system type of the device. Possible values: ["OS_UNSPECIFIED", "DESKTOP_MAC", "DESKTOP_WINDOWS", "DESKTOP_LINUX", "DESKTOP_CHROME_OS", "ANDROID", "IOS"] * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#os_type AccessContextManagerAccessLevels#os_type} */ readonly osType: string; } export declare function accessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsToTerraform(struct?: AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraints | cdktf.IResolvable): any; export declare function accessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsToHclTerraform(struct?: AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraints | cdktf.IResolvable): any; export declare class AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsOutputReference 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(): AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraints | cdktf.IResolvable | undefined; set internalValue(value: AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraints | cdktf.IResolvable | undefined); private _minimumVersion?; get minimumVersion(): string; set minimumVersion(value: string); resetMinimumVersion(): void; get minimumVersionInput(): string | undefined; private _osType?; get osType(): string; set osType(value: string); get osTypeInput(): string | undefined; } export declare class AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraints[] | 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): AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsOutputReference; } export interface AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicy { /** * A list of allowed device management levels. * An empty list allows all management levels. Possible values: ["MANAGEMENT_UNSPECIFIED", "NONE", "BASIC", "COMPLETE"] * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#allowed_device_management_levels AccessContextManagerAccessLevels#allowed_device_management_levels} */ readonly allowedDeviceManagementLevels?: string[]; /** * A list of allowed encryptions statuses. * An empty list allows all statuses. Possible values: ["ENCRYPTION_UNSPECIFIED", "ENCRYPTION_UNSUPPORTED", "UNENCRYPTED", "ENCRYPTED"] * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#allowed_encryption_statuses AccessContextManagerAccessLevels#allowed_encryption_statuses} */ readonly allowedEncryptionStatuses?: string[]; /** * Whether the device needs to be approved by the customer admin. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#require_admin_approval AccessContextManagerAccessLevels#require_admin_approval} */ readonly requireAdminApproval?: boolean | cdktf.IResolvable; /** * Whether the device needs to be corp owned. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#require_corp_owned AccessContextManagerAccessLevels#require_corp_owned} */ readonly requireCorpOwned?: boolean | cdktf.IResolvable; /** * Whether or not screenlock is required for the DevicePolicy * to be true. Defaults to false. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#require_screen_lock AccessContextManagerAccessLevels#require_screen_lock} */ readonly requireScreenLock?: boolean | cdktf.IResolvable; /** * os_constraints block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#os_constraints AccessContextManagerAccessLevels#os_constraints} */ readonly osConstraints?: AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraints[] | cdktf.IResolvable; } export declare function accessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyToTerraform(struct?: AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOutputReference | AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicy): any; export declare function accessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyToHclTerraform(struct?: AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOutputReference | AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicy): any; export declare class AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOutputReference 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(): AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicy | undefined; set internalValue(value: AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicy | undefined); private _allowedDeviceManagementLevels?; get allowedDeviceManagementLevels(): string[]; set allowedDeviceManagementLevels(value: string[]); resetAllowedDeviceManagementLevels(): void; get allowedDeviceManagementLevelsInput(): string[] | undefined; private _allowedEncryptionStatuses?; get allowedEncryptionStatuses(): string[]; set allowedEncryptionStatuses(value: string[]); resetAllowedEncryptionStatuses(): void; get allowedEncryptionStatusesInput(): string[] | undefined; private _requireAdminApproval?; get requireAdminApproval(): boolean | cdktf.IResolvable; set requireAdminApproval(value: boolean | cdktf.IResolvable); resetRequireAdminApproval(): void; get requireAdminApprovalInput(): boolean | cdktf.IResolvable | undefined; private _requireCorpOwned?; get requireCorpOwned(): boolean | cdktf.IResolvable; set requireCorpOwned(value: boolean | cdktf.IResolvable); resetRequireCorpOwned(): void; get requireCorpOwnedInput(): boolean | cdktf.IResolvable | undefined; private _requireScreenLock?; get requireScreenLock(): boolean | cdktf.IResolvable; set requireScreenLock(value: boolean | cdktf.IResolvable); resetRequireScreenLock(): void; get requireScreenLockInput(): boolean | cdktf.IResolvable | undefined; private _osConstraints; get osConstraints(): AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsList; putOsConstraints(value: AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraints[] | cdktf.IResolvable): void; resetOsConstraints(): void; get osConstraintsInput(): cdktf.IResolvable | AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraints[] | undefined; } export interface AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetwork { /** * Required. Network name to be allowed by this Access Level. Networks of foreign organizations requires 'compute.network.get' permission to be granted to caller. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#network AccessContextManagerAccessLevels#network} */ readonly network: string; /** * CIDR block IP subnetwork specification. Must be IPv4. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#vpc_ip_subnetworks AccessContextManagerAccessLevels#vpc_ip_subnetworks} */ readonly vpcIpSubnetworks?: string[]; } export declare function accessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetworkToTerraform(struct?: AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetworkOutputReference | AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetwork): any; export declare function accessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetworkToHclTerraform(struct?: AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetworkOutputReference | AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetwork): any; export declare class AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetworkOutputReference 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(): AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetwork | undefined; set internalValue(value: AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetwork | undefined); private _network?; get network(): string; set network(value: string); get networkInput(): string | undefined; private _vpcIpSubnetworks?; get vpcIpSubnetworks(): string[]; set vpcIpSubnetworks(value: string[]); resetVpcIpSubnetworks(): void; get vpcIpSubnetworksInput(): string[] | undefined; } export interface AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSources { /** * vpc_subnetwork block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#vpc_subnetwork AccessContextManagerAccessLevels#vpc_subnetwork} */ readonly vpcSubnetwork?: AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetwork; } export declare function accessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesToTerraform(struct?: AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSources | cdktf.IResolvable): any; export declare function accessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesToHclTerraform(struct?: AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSources | cdktf.IResolvable): any; export declare class AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesOutputReference 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(): AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSources | cdktf.IResolvable | undefined; set internalValue(value: AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSources | cdktf.IResolvable | undefined); private _vpcSubnetwork; get vpcSubnetwork(): AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetworkOutputReference; putVpcSubnetwork(value: AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetwork): void; resetVpcSubnetwork(): void; get vpcSubnetworkInput(): AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetwork | undefined; } export declare class AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSources[] | 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): AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesOutputReference; } export interface AccessContextManagerAccessLevelsAccessLevelsBasicConditions { /** * A list of CIDR block IP subnetwork specification. May be IPv4 * or IPv6. * Note that for a CIDR IP address block, the specified IP address * portion must be properly truncated (i.e. all the host bits must * be zero) or the input is considered malformed. For example, * "192.0.2.0/24" is accepted but "192.0.2.1/24" is not. Similarly, * for IPv6, "2001:db8::/32" is accepted whereas "2001:db8::1/32" * is not. The originating IP of a request must be in one of the * listed subnets in order for this Condition to be true. * If empty, all IP addresses are allowed. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#ip_subnetworks AccessContextManagerAccessLevels#ip_subnetworks} */ readonly ipSubnetworks?: string[]; /** * An allowed list of members (users, service accounts). * Using groups is not supported yet. * * The signed-in user originating the request must be a part of one * of the provided members. If not specified, a request may come * from any user (logged in/not logged in, not present in any * groups, etc.). * Formats: 'user:{emailid}', 'serviceAccount:{emailid}' * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#members AccessContextManagerAccessLevels#members} */ readonly members?: string[]; /** * Whether to negate the Condition. If true, the Condition becomes * a NAND over its non-empty fields, each field must be false for * the Condition overall to be satisfied. Defaults to false. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#negate AccessContextManagerAccessLevels#negate} */ readonly negate?: boolean | cdktf.IResolvable; /** * The request must originate from one of the provided * countries/regions. * Format: A valid ISO 3166-1 alpha-2 code. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#regions AccessContextManagerAccessLevels#regions} */ readonly regions?: string[]; /** * A list of other access levels defined in the same Policy, * referenced by resource name. Referencing an AccessLevel which * does not exist is an error. All access levels listed must be * granted for the Condition to be true. * Format: accessPolicies/{policy_id}/accessLevels/{short_name} * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#required_access_levels AccessContextManagerAccessLevels#required_access_levels} */ readonly requiredAccessLevels?: string[]; /** * device_policy block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#device_policy AccessContextManagerAccessLevels#device_policy} */ readonly devicePolicy?: AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicy; /** * vpc_network_sources block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#vpc_network_sources AccessContextManagerAccessLevels#vpc_network_sources} */ readonly vpcNetworkSources?: AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSources[] | cdktf.IResolvable; } export declare function accessContextManagerAccessLevelsAccessLevelsBasicConditionsToTerraform(struct?: AccessContextManagerAccessLevelsAccessLevelsBasicConditions | cdktf.IResolvable): any; export declare function accessContextManagerAccessLevelsAccessLevelsBasicConditionsToHclTerraform(struct?: AccessContextManagerAccessLevelsAccessLevelsBasicConditions | cdktf.IResolvable): any; export declare class AccessContextManagerAccessLevelsAccessLevelsBasicConditionsOutputReference 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(): AccessContextManagerAccessLevelsAccessLevelsBasicConditions | cdktf.IResolvable | undefined; set internalValue(value: AccessContextManagerAccessLevelsAccessLevelsBasicConditions | cdktf.IResolvable | undefined); private _ipSubnetworks?; get ipSubnetworks(): string[]; set ipSubnetworks(value: string[]); resetIpSubnetworks(): void; get ipSubnetworksInput(): string[] | undefined; private _members?; get members(): string[]; set members(value: string[]); resetMembers(): void; get membersInput(): string[] | undefined; private _negate?; get negate(): boolean | cdktf.IResolvable; set negate(value: boolean | cdktf.IResolvable); resetNegate(): void; get negateInput(): boolean | cdktf.IResolvable | undefined; private _regions?; get regions(): string[]; set regions(value: string[]); resetRegions(): void; get regionsInput(): string[] | undefined; private _requiredAccessLevels?; get requiredAccessLevels(): string[]; set requiredAccessLevels(value: string[]); resetRequiredAccessLevels(): void; get requiredAccessLevelsInput(): string[] | undefined; private _devicePolicy; get devicePolicy(): AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOutputReference; putDevicePolicy(value: AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicy): void; resetDevicePolicy(): void; get devicePolicyInput(): AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicy | undefined; private _vpcNetworkSources; get vpcNetworkSources(): AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesList; putVpcNetworkSources(value: AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSources[] | cdktf.IResolvable): void; resetVpcNetworkSources(): void; get vpcNetworkSourcesInput(): cdktf.IResolvable | AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSources[] | undefined; } export declare class AccessContextManagerAccessLevelsAccessLevelsBasicConditionsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: AccessContextManagerAccessLevelsAccessLevelsBasicConditions[] | 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): AccessContextManagerAccessLevelsAccessLevelsBasicConditionsOutputReference; } export interface AccessContextManagerAccessLevelsAccessLevelsBasic { /** * How the conditions list should be combined to determine if a request * is granted this AccessLevel. If AND is used, each Condition in * conditions must be satisfied for the AccessLevel to be applied. If * OR is used, at least one Condition in conditions must be satisfied * for the AccessLevel to be applied. Default value: "AND" Possible values: ["AND", "OR"] * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#combining_function AccessContextManagerAccessLevels#combining_function} */ readonly combiningFunction?: string; /** * conditions block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#conditions AccessContextManagerAccessLevels#conditions} */ readonly conditions: AccessContextManagerAccessLevelsAccessLevelsBasicConditions[] | cdktf.IResolvable; } export declare function accessContextManagerAccessLevelsAccessLevelsBasicToTerraform(struct?: AccessContextManagerAccessLevelsAccessLevelsBasicOutputReference | AccessContextManagerAccessLevelsAccessLevelsBasic): any; export declare function accessContextManagerAccessLevelsAccessLevelsBasicToHclTerraform(struct?: AccessContextManagerAccessLevelsAccessLevelsBasicOutputReference | AccessContextManagerAccessLevelsAccessLevelsBasic): any; export declare class AccessContextManagerAccessLevelsAccessLevelsBasicOutputReference 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(): AccessContextManagerAccessLevelsAccessLevelsBasic | undefined; set internalValue(value: AccessContextManagerAccessLevelsAccessLevelsBasic | undefined); private _combiningFunction?; get combiningFunction(): string; set combiningFunction(value: string); resetCombiningFunction(): void; get combiningFunctionInput(): string | undefined; private _conditions; get conditions(): AccessContextManagerAccessLevelsAccessLevelsBasicConditionsList; putConditions(value: AccessContextManagerAccessLevelsAccessLevelsBasicConditions[] | cdktf.IResolvable): void; get conditionsInput(): cdktf.IResolvable | AccessContextManagerAccessLevelsAccessLevelsBasicConditions[] | undefined; } export interface AccessContextManagerAccessLevelsAccessLevelsCustomExpr { /** * Description of the expression * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#description AccessContextManagerAccessLevels#description} */ readonly description?: string; /** * Textual representation of an expression in Common Expression Language syntax. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#expression AccessContextManagerAccessLevels#expression} */ readonly expression: string; /** * String indicating the location of the expression for error reporting, e.g. a file name and a position in the file * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#location AccessContextManagerAccessLevels#location} */ readonly location?: string; /** * Title for the expression, i.e. a short string describing its purpose. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#title AccessContextManagerAccessLevels#title} */ readonly title?: string; } export declare function accessContextManagerAccessLevelsAccessLevelsCustomExprToTerraform(struct?: AccessContextManagerAccessLevelsAccessLevelsCustomExprOutputReference | AccessContextManagerAccessLevelsAccessLevelsCustomExpr): any; export declare function accessContextManagerAccessLevelsAccessLevelsCustomExprToHclTerraform(struct?: AccessContextManagerAccessLevelsAccessLevelsCustomExprOutputReference | AccessContextManagerAccessLevelsAccessLevelsCustomExpr): any; export declare class AccessContextManagerAccessLevelsAccessLevelsCustomExprOutputReference 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(): AccessContextManagerAccessLevelsAccessLevelsCustomExpr | undefined; set internalValue(value: AccessContextManagerAccessLevelsAccessLevelsCustomExpr | undefined); private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string | undefined; private _expression?; get expression(): string; set expression(value: string); get expressionInput(): string | undefined; private _location?; get location(): string; set location(value: string); resetLocation(): void; get locationInput(): string | undefined; private _title?; get title(): string; set title(value: string); resetTitle(): void; get titleInput(): string | undefined; } export interface AccessContextManagerAccessLevelsAccessLevelsCustom { /** * expr block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#expr AccessContextManagerAccessLevels#expr} */ readonly expr: AccessContextManagerAccessLevelsAccessLevelsCustomExpr; } export declare function accessContextManagerAccessLevelsAccessLevelsCustomToTerraform(struct?: AccessContextManagerAccessLevelsAccessLevelsCustomOutputReference | AccessContextManagerAccessLevelsAccessLevelsCustom): any; export declare function accessContextManagerAccessLevelsAccessLevelsCustomToHclTerraform(struct?: AccessContextManagerAccessLevelsAccessLevelsCustomOutputReference | AccessContextManagerAccessLevelsAccessLevelsCustom): any; export declare class AccessContextManagerAccessLevelsAccessLevelsCustomOutputReference 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(): AccessContextManagerAccessLevelsAccessLevelsCustom | undefined; set internalValue(value: AccessContextManagerAccessLevelsAccessLevelsCustom | undefined); private _expr; get expr(): AccessContextManagerAccessLevelsAccessLevelsCustomExprOutputReference; putExpr(value: AccessContextManagerAccessLevelsAccessLevelsCustomExpr): void; get exprInput(): AccessContextManagerAccessLevelsAccessLevelsCustomExpr | undefined; } export interface AccessContextManagerAccessLevelsAccessLevels { /** * Description of the AccessLevel and its use. Does not affect behavior. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#description AccessContextManagerAccessLevels#description} */ readonly description?: string; /** * Resource name for the Access Level. The short_name component must begin * with a letter and only include alphanumeric and '_'. * Format: accessPolicies/{policy_id}/accessLevels/{short_name} * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#name AccessContextManagerAccessLevels#name} */ readonly name: string; /** * Human readable title. Must be unique within the Policy. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#title AccessContextManagerAccessLevels#title} */ readonly title: string; /** * basic block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#basic AccessContextManagerAccessLevels#basic} */ readonly basic?: AccessContextManagerAccessLevelsAccessLevelsBasic; /** * custom block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#custom AccessContextManagerAccessLevels#custom} */ readonly custom?: AccessContextManagerAccessLevelsAccessLevelsCustom; } export declare function accessContextManagerAccessLevelsAccessLevelsToTerraform(struct?: AccessContextManagerAccessLevelsAccessLevels | cdktf.IResolvable): any; export declare function accessContextManagerAccessLevelsAccessLevelsToHclTerraform(struct?: AccessContextManagerAccessLevelsAccessLevels | cdktf.IResolvable): any; export declare class AccessContextManagerAccessLevelsAccessLevelsOutputReference 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(): AccessContextManagerAccessLevelsAccessLevels | cdktf.IResolvable | undefined; set internalValue(value: AccessContextManagerAccessLevelsAccessLevels | cdktf.IResolvable | undefined); private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string | undefined; private _name?; get name(): string; set name(value: string); get nameInput(): string | undefined; private _title?; get title(): string; set title(value: string); get titleInput(): string | undefined; private _basic; get basic(): AccessContextManagerAccessLevelsAccessLevelsBasicOutputReference; putBasic(value: AccessContextManagerAccessLevelsAccessLevelsBasic): void; resetBasic(): void; get basicInput(): AccessContextManagerAccessLevelsAccessLevelsBasic | undefined; private _custom; get custom(): AccessContextManagerAccessLevelsAccessLevelsCustomOutputReference; putCustom(value: AccessContextManagerAccessLevelsAccessLevelsCustom): void; resetCustom(): void; get customInput(): AccessContextManagerAccessLevelsAccessLevelsCustom | undefined; } export declare class AccessContextManagerAccessLevelsAccessLevelsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: AccessContextManagerAccessLevelsAccessLevels[] | 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): AccessContextManagerAccessLevelsAccessLevelsOutputReference; } export interface AccessContextManagerAccessLevelsTimeouts { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#create AccessContextManagerAccessLevels#create} */ readonly create?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#delete AccessContextManagerAccessLevels#delete} */ readonly delete?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#update AccessContextManagerAccessLevels#update} */ readonly update?: string; } export declare function accessContextManagerAccessLevelsTimeoutsToTerraform(struct?: AccessContextManagerAccessLevelsTimeouts | cdktf.IResolvable): any; export declare function accessContextManagerAccessLevelsTimeoutsToHclTerraform(struct?: AccessContextManagerAccessLevelsTimeouts | cdktf.IResolvable): any; export declare class AccessContextManagerAccessLevelsTimeoutsOutputReference 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(): AccessContextManagerAccessLevelsTimeouts | cdktf.IResolvable | undefined; set internalValue(value: AccessContextManagerAccessLevelsTimeouts | 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/access_context_manager_access_levels google_access_context_manager_access_levels} */ export declare class AccessContextManagerAccessLevels extends cdktf.TerraformResource { static readonly tfResourceType = "google_access_context_manager_access_levels"; /** * Generates CDKTF code for importing a AccessContextManagerAccessLevels 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 AccessContextManagerAccessLevels to import * @param importFromId The id of the existing AccessContextManagerAccessLevels that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/access_context_manager_access_levels#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the AccessContextManagerAccessLevels 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/access_context_manager_access_levels google_access_context_manager_access_levels} 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 AccessContextManagerAccessLevelsConfig */ constructor(scope: Construct, id: string, config: AccessContextManagerAccessLevelsConfig); private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string | undefined; private _parent?; get parent(): string; set parent(value: string); get parentInput(): string | undefined; private _accessLevels; get accessLevels(): AccessContextManagerAccessLevelsAccessLevelsList; putAccessLevels(value: AccessContextManagerAccessLevelsAccessLevels[] | cdktf.IResolvable): void; resetAccessLevels(): void; get accessLevelsInput(): cdktf.IResolvable | AccessContextManagerAccessLevelsAccessLevels[] | undefined; private _timeouts; get timeouts(): AccessContextManagerAccessLevelsTimeoutsOutputReference; putTimeouts(value: AccessContextManagerAccessLevelsTimeouts): void; resetTimeouts(): void; get timeoutsInput(): cdktf.IResolvable | AccessContextManagerAccessLevelsTimeouts | undefined; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }