@cdktf/provider-google
Version:
Prebuilt google Provider for Terraform CDK (cdktf)
358 lines (357 loc) • 24.3 kB
TypeScript
/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: MPL-2.0
*/
import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface StorageControlProjectIntelligenceConfigConfig extends cdktf.TerraformMetaArguments {
/**
* Edition configuration of the Storage Intelligence resource. Valid values are INHERIT, TRIAL, DISABLED and STANDARD.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.1/docs/resources/storage_control_project_intelligence_config#edition_config StorageControlProjectIntelligenceConfig#edition_config}
*/
readonly editionConfig?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.1/docs/resources/storage_control_project_intelligence_config#id StorageControlProjectIntelligenceConfig#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;
/**
* Identifier of the GCP project. For GCP project, this field can be project name or project number.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.1/docs/resources/storage_control_project_intelligence_config#name StorageControlProjectIntelligenceConfig#name}
*/
readonly name: string;
/**
* filter block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.1/docs/resources/storage_control_project_intelligence_config#filter StorageControlProjectIntelligenceConfig#filter}
*/
readonly filter?: StorageControlProjectIntelligenceConfigFilter;
/**
* timeouts block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.1/docs/resources/storage_control_project_intelligence_config#timeouts StorageControlProjectIntelligenceConfig#timeouts}
*/
readonly timeouts?: StorageControlProjectIntelligenceConfigTimeouts;
}
export interface StorageControlProjectIntelligenceConfigEffectiveIntelligenceConfig {
}
export declare function storageControlProjectIntelligenceConfigEffectiveIntelligenceConfigToTerraform(struct?: StorageControlProjectIntelligenceConfigEffectiveIntelligenceConfig): any;
export declare function storageControlProjectIntelligenceConfigEffectiveIntelligenceConfigToHclTerraform(struct?: StorageControlProjectIntelligenceConfigEffectiveIntelligenceConfig): any;
export declare class StorageControlProjectIntelligenceConfigEffectiveIntelligenceConfigOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @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(): StorageControlProjectIntelligenceConfigEffectiveIntelligenceConfig | undefined;
set internalValue(value: StorageControlProjectIntelligenceConfigEffectiveIntelligenceConfig | undefined);
get effectiveEdition(): string;
get intelligenceConfig(): string;
}
export declare class StorageControlProjectIntelligenceConfigEffectiveIntelligenceConfigList extends cdktf.ComplexList {
protected terraformResource: cdktf.IInterpolatingParent;
protected terraformAttribute: string;
protected wrapsSet: boolean;
/**
* @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): StorageControlProjectIntelligenceConfigEffectiveIntelligenceConfigOutputReference;
}
export interface StorageControlProjectIntelligenceConfigTrialConfig {
}
export declare function storageControlProjectIntelligenceConfigTrialConfigToTerraform(struct?: StorageControlProjectIntelligenceConfigTrialConfig): any;
export declare function storageControlProjectIntelligenceConfigTrialConfigToHclTerraform(struct?: StorageControlProjectIntelligenceConfigTrialConfig): any;
export declare class StorageControlProjectIntelligenceConfigTrialConfigOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @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(): StorageControlProjectIntelligenceConfigTrialConfig | undefined;
set internalValue(value: StorageControlProjectIntelligenceConfigTrialConfig | undefined);
get expireTime(): string;
}
export declare class StorageControlProjectIntelligenceConfigTrialConfigList extends cdktf.ComplexList {
protected terraformResource: cdktf.IInterpolatingParent;
protected terraformAttribute: string;
protected wrapsSet: boolean;
/**
* @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): StorageControlProjectIntelligenceConfigTrialConfigOutputReference;
}
export interface StorageControlProjectIntelligenceConfigFilterExcludedCloudStorageBuckets {
/**
* List of bucket id regexes to exclude in the storage intelligence plan.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.1/docs/resources/storage_control_project_intelligence_config#bucket_id_regexes StorageControlProjectIntelligenceConfig#bucket_id_regexes}
*/
readonly bucketIdRegexes: string[];
}
export declare function storageControlProjectIntelligenceConfigFilterExcludedCloudStorageBucketsToTerraform(struct?: StorageControlProjectIntelligenceConfigFilterExcludedCloudStorageBucketsOutputReference | StorageControlProjectIntelligenceConfigFilterExcludedCloudStorageBuckets): any;
export declare function storageControlProjectIntelligenceConfigFilterExcludedCloudStorageBucketsToHclTerraform(struct?: StorageControlProjectIntelligenceConfigFilterExcludedCloudStorageBucketsOutputReference | StorageControlProjectIntelligenceConfigFilterExcludedCloudStorageBuckets): any;
export declare class StorageControlProjectIntelligenceConfigFilterExcludedCloudStorageBucketsOutputReference 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(): StorageControlProjectIntelligenceConfigFilterExcludedCloudStorageBuckets | undefined;
set internalValue(value: StorageControlProjectIntelligenceConfigFilterExcludedCloudStorageBuckets | undefined);
private _bucketIdRegexes?;
get bucketIdRegexes(): string[];
set bucketIdRegexes(value: string[]);
get bucketIdRegexesInput(): string[] | undefined;
}
export interface StorageControlProjectIntelligenceConfigFilterExcludedCloudStorageLocations {
/**
* List of locations.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.1/docs/resources/storage_control_project_intelligence_config#locations StorageControlProjectIntelligenceConfig#locations}
*/
readonly locations: string[];
}
export declare function storageControlProjectIntelligenceConfigFilterExcludedCloudStorageLocationsToTerraform(struct?: StorageControlProjectIntelligenceConfigFilterExcludedCloudStorageLocationsOutputReference | StorageControlProjectIntelligenceConfigFilterExcludedCloudStorageLocations): any;
export declare function storageControlProjectIntelligenceConfigFilterExcludedCloudStorageLocationsToHclTerraform(struct?: StorageControlProjectIntelligenceConfigFilterExcludedCloudStorageLocationsOutputReference | StorageControlProjectIntelligenceConfigFilterExcludedCloudStorageLocations): any;
export declare class StorageControlProjectIntelligenceConfigFilterExcludedCloudStorageLocationsOutputReference 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(): StorageControlProjectIntelligenceConfigFilterExcludedCloudStorageLocations | undefined;
set internalValue(value: StorageControlProjectIntelligenceConfigFilterExcludedCloudStorageLocations | undefined);
private _locations?;
get locations(): string[];
set locations(value: string[]);
get locationsInput(): string[] | undefined;
}
export interface StorageControlProjectIntelligenceConfigFilterIncludedCloudStorageBuckets {
/**
* List of bucket id regexes to exclude in the storage intelligence plan.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.1/docs/resources/storage_control_project_intelligence_config#bucket_id_regexes StorageControlProjectIntelligenceConfig#bucket_id_regexes}
*/
readonly bucketIdRegexes: string[];
}
export declare function storageControlProjectIntelligenceConfigFilterIncludedCloudStorageBucketsToTerraform(struct?: StorageControlProjectIntelligenceConfigFilterIncludedCloudStorageBucketsOutputReference | StorageControlProjectIntelligenceConfigFilterIncludedCloudStorageBuckets): any;
export declare function storageControlProjectIntelligenceConfigFilterIncludedCloudStorageBucketsToHclTerraform(struct?: StorageControlProjectIntelligenceConfigFilterIncludedCloudStorageBucketsOutputReference | StorageControlProjectIntelligenceConfigFilterIncludedCloudStorageBuckets): any;
export declare class StorageControlProjectIntelligenceConfigFilterIncludedCloudStorageBucketsOutputReference 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(): StorageControlProjectIntelligenceConfigFilterIncludedCloudStorageBuckets | undefined;
set internalValue(value: StorageControlProjectIntelligenceConfigFilterIncludedCloudStorageBuckets | undefined);
private _bucketIdRegexes?;
get bucketIdRegexes(): string[];
set bucketIdRegexes(value: string[]);
get bucketIdRegexesInput(): string[] | undefined;
}
export interface StorageControlProjectIntelligenceConfigFilterIncludedCloudStorageLocations {
/**
* List of locations.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.1/docs/resources/storage_control_project_intelligence_config#locations StorageControlProjectIntelligenceConfig#locations}
*/
readonly locations: string[];
}
export declare function storageControlProjectIntelligenceConfigFilterIncludedCloudStorageLocationsToTerraform(struct?: StorageControlProjectIntelligenceConfigFilterIncludedCloudStorageLocationsOutputReference | StorageControlProjectIntelligenceConfigFilterIncludedCloudStorageLocations): any;
export declare function storageControlProjectIntelligenceConfigFilterIncludedCloudStorageLocationsToHclTerraform(struct?: StorageControlProjectIntelligenceConfigFilterIncludedCloudStorageLocationsOutputReference | StorageControlProjectIntelligenceConfigFilterIncludedCloudStorageLocations): any;
export declare class StorageControlProjectIntelligenceConfigFilterIncludedCloudStorageLocationsOutputReference 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(): StorageControlProjectIntelligenceConfigFilterIncludedCloudStorageLocations | undefined;
set internalValue(value: StorageControlProjectIntelligenceConfigFilterIncludedCloudStorageLocations | undefined);
private _locations?;
get locations(): string[];
set locations(value: string[]);
get locationsInput(): string[] | undefined;
}
export interface StorageControlProjectIntelligenceConfigFilter {
/**
* excluded_cloud_storage_buckets block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.1/docs/resources/storage_control_project_intelligence_config#excluded_cloud_storage_buckets StorageControlProjectIntelligenceConfig#excluded_cloud_storage_buckets}
*/
readonly excludedCloudStorageBuckets?: StorageControlProjectIntelligenceConfigFilterExcludedCloudStorageBuckets;
/**
* excluded_cloud_storage_locations block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.1/docs/resources/storage_control_project_intelligence_config#excluded_cloud_storage_locations StorageControlProjectIntelligenceConfig#excluded_cloud_storage_locations}
*/
readonly excludedCloudStorageLocations?: StorageControlProjectIntelligenceConfigFilterExcludedCloudStorageLocations;
/**
* included_cloud_storage_buckets block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.1/docs/resources/storage_control_project_intelligence_config#included_cloud_storage_buckets StorageControlProjectIntelligenceConfig#included_cloud_storage_buckets}
*/
readonly includedCloudStorageBuckets?: StorageControlProjectIntelligenceConfigFilterIncludedCloudStorageBuckets;
/**
* included_cloud_storage_locations block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.1/docs/resources/storage_control_project_intelligence_config#included_cloud_storage_locations StorageControlProjectIntelligenceConfig#included_cloud_storage_locations}
*/
readonly includedCloudStorageLocations?: StorageControlProjectIntelligenceConfigFilterIncludedCloudStorageLocations;
}
export declare function storageControlProjectIntelligenceConfigFilterToTerraform(struct?: StorageControlProjectIntelligenceConfigFilterOutputReference | StorageControlProjectIntelligenceConfigFilter): any;
export declare function storageControlProjectIntelligenceConfigFilterToHclTerraform(struct?: StorageControlProjectIntelligenceConfigFilterOutputReference | StorageControlProjectIntelligenceConfigFilter): any;
export declare class StorageControlProjectIntelligenceConfigFilterOutputReference 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(): StorageControlProjectIntelligenceConfigFilter | undefined;
set internalValue(value: StorageControlProjectIntelligenceConfigFilter | undefined);
private _excludedCloudStorageBuckets;
get excludedCloudStorageBuckets(): StorageControlProjectIntelligenceConfigFilterExcludedCloudStorageBucketsOutputReference;
putExcludedCloudStorageBuckets(value: StorageControlProjectIntelligenceConfigFilterExcludedCloudStorageBuckets): void;
resetExcludedCloudStorageBuckets(): void;
get excludedCloudStorageBucketsInput(): StorageControlProjectIntelligenceConfigFilterExcludedCloudStorageBuckets | undefined;
private _excludedCloudStorageLocations;
get excludedCloudStorageLocations(): StorageControlProjectIntelligenceConfigFilterExcludedCloudStorageLocationsOutputReference;
putExcludedCloudStorageLocations(value: StorageControlProjectIntelligenceConfigFilterExcludedCloudStorageLocations): void;
resetExcludedCloudStorageLocations(): void;
get excludedCloudStorageLocationsInput(): StorageControlProjectIntelligenceConfigFilterExcludedCloudStorageLocations | undefined;
private _includedCloudStorageBuckets;
get includedCloudStorageBuckets(): StorageControlProjectIntelligenceConfigFilterIncludedCloudStorageBucketsOutputReference;
putIncludedCloudStorageBuckets(value: StorageControlProjectIntelligenceConfigFilterIncludedCloudStorageBuckets): void;
resetIncludedCloudStorageBuckets(): void;
get includedCloudStorageBucketsInput(): StorageControlProjectIntelligenceConfigFilterIncludedCloudStorageBuckets | undefined;
private _includedCloudStorageLocations;
get includedCloudStorageLocations(): StorageControlProjectIntelligenceConfigFilterIncludedCloudStorageLocationsOutputReference;
putIncludedCloudStorageLocations(value: StorageControlProjectIntelligenceConfigFilterIncludedCloudStorageLocations): void;
resetIncludedCloudStorageLocations(): void;
get includedCloudStorageLocationsInput(): StorageControlProjectIntelligenceConfigFilterIncludedCloudStorageLocations | undefined;
}
export interface StorageControlProjectIntelligenceConfigTimeouts {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.1/docs/resources/storage_control_project_intelligence_config#create StorageControlProjectIntelligenceConfig#create}
*/
readonly create?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.1/docs/resources/storage_control_project_intelligence_config#delete StorageControlProjectIntelligenceConfig#delete}
*/
readonly delete?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.1/docs/resources/storage_control_project_intelligence_config#update StorageControlProjectIntelligenceConfig#update}
*/
readonly update?: string;
}
export declare function storageControlProjectIntelligenceConfigTimeoutsToTerraform(struct?: StorageControlProjectIntelligenceConfigTimeouts | cdktf.IResolvable): any;
export declare function storageControlProjectIntelligenceConfigTimeoutsToHclTerraform(struct?: StorageControlProjectIntelligenceConfigTimeouts | cdktf.IResolvable): any;
export declare class StorageControlProjectIntelligenceConfigTimeoutsOutputReference 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(): StorageControlProjectIntelligenceConfigTimeouts | cdktf.IResolvable | undefined;
set internalValue(value: StorageControlProjectIntelligenceConfigTimeouts | 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.36.1/docs/resources/storage_control_project_intelligence_config google_storage_control_project_intelligence_config}
*/
export declare class StorageControlProjectIntelligenceConfig extends cdktf.TerraformResource {
static readonly tfResourceType = "google_storage_control_project_intelligence_config";
/**
* Generates CDKTF code for importing a StorageControlProjectIntelligenceConfig 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 StorageControlProjectIntelligenceConfig to import
* @param importFromId The id of the existing StorageControlProjectIntelligenceConfig that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/google/6.36.1/docs/resources/storage_control_project_intelligence_config#import import section} in the documentation of this resource for the id to use
* @param provider? Optional instance of the provider where the StorageControlProjectIntelligenceConfig 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.36.1/docs/resources/storage_control_project_intelligence_config google_storage_control_project_intelligence_config} 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 StorageControlProjectIntelligenceConfigConfig
*/
constructor(scope: Construct, id: string, config: StorageControlProjectIntelligenceConfigConfig);
private _editionConfig?;
get editionConfig(): string;
set editionConfig(value: string);
resetEditionConfig(): void;
get editionConfigInput(): string | undefined;
private _effectiveIntelligenceConfig;
get effectiveIntelligenceConfig(): StorageControlProjectIntelligenceConfigEffectiveIntelligenceConfigList;
private _id?;
get id(): string;
set id(value: string);
resetId(): void;
get idInput(): string | undefined;
private _name?;
get name(): string;
set name(value: string);
get nameInput(): string | undefined;
private _trialConfig;
get trialConfig(): StorageControlProjectIntelligenceConfigTrialConfigList;
get updateTime(): string;
private _filter;
get filter(): StorageControlProjectIntelligenceConfigFilterOutputReference;
putFilter(value: StorageControlProjectIntelligenceConfigFilter): void;
resetFilter(): void;
get filterInput(): StorageControlProjectIntelligenceConfigFilter | undefined;
private _timeouts;
get timeouts(): StorageControlProjectIntelligenceConfigTimeoutsOutputReference;
putTimeouts(value: StorageControlProjectIntelligenceConfigTimeouts): void;
resetTimeouts(): void;
get timeoutsInput(): cdktf.IResolvable | StorageControlProjectIntelligenceConfigTimeouts | undefined;
protected synthesizeAttributes(): {
[name: string]: any;
};
protected synthesizeHclAttributes(): {
[name: string]: any;
};
}