import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface CosBucketConfig extends cdktf.TerraformMetaArguments { /** * Enable bucket acceleration. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#acceleration_enable CosBucket#acceleration_enable} */ readonly accelerationEnable?: boolean | cdktf.IResolvable; /** * The canned ACL to apply. Valid values: private, public-read, and public-read-write. Defaults to private. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#acl CosBucket#acl} */ readonly acl?: string; /** * ACL XML body for multiple grant info. NOTE: this argument will overwrite `acl`. Check https://intl.cloud.tencent.com/document/product/436/7737 for more detail. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#acl_body CosBucket#acl_body} */ readonly aclBody?: string; /** * The name of a bucket to be created. Bucket format should be [custom name]-[appid], for example `mycos-1258798060`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#bucket CosBucket#bucket} */ readonly bucket: string; /** * CDC cluster ID. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#cdc_id CosBucket#cdc_id} */ readonly cdcId?: string; /** * Indicates whether to create a bucket of metadata acceleration. For more information, please refer to `https://www.tencentcloud.com/document/product/436/43305`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#chdfs_ofs CosBucket#chdfs_ofs} */ readonly chdfsOfs?: boolean | cdktf.IResolvable; /** * Enable intelligent tiering. NOTE: When intelligent tiering configuration is enabled, it cannot be turned off or modified. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#enable_intelligent_tiering CosBucket#enable_intelligent_tiering} */ readonly enableIntelligentTiering?: boolean | cdktf.IResolvable; /** * The server-side encryption algorithm to use. Valid values are `AES256`, `KMS` and `SM4`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#encryption_algorithm CosBucket#encryption_algorithm} */ readonly encryptionAlgorithm?: string; /** * Force cleanup all objects before delete bucket. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#force_clean CosBucket#force_clean} */ readonly forceClean?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#id CosBucket#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; /** * Specifies the limit of days for standard-tier data to low-frequency data in an intelligent tiered storage configuration, with optional days of 30, 60, 90. Default value is 30. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#intelligent_tiering_days CosBucket#intelligent_tiering_days} */ readonly intelligentTieringDays?: number; /** * Specify the access limit for converting standard layer data into low-frequency layer data in the configuration. The default value is once, which can be used in combination with the number of days to achieve the conversion effect. For example, if the parameter is set to 1 and the number of access days is 30, it means that objects with less than one visit in 30 consecutive days will be reduced from the standard layer to the low frequency layer. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#intelligent_tiering_request_frequent CosBucket#intelligent_tiering_request_frequent} */ readonly intelligentTieringRequestFrequent?: number; /** * The KMS Master Key ID. This value is valid only when `encryption_algorithm` is set to KMS. Set kms id to the specified value. If not specified, the default kms id is used. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#kms_id CosBucket#kms_id} */ readonly kmsId?: string; /** * Indicate the access log of this bucket to be saved or not. Default is `false`. If set `true`, the access log will be saved with `log_target_bucket`. To enable log, the full access of log service must be granted. [Full Access Role Policy](https://intl.cloud.tencent.com/document/product/436/16920). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#log_enable CosBucket#log_enable} */ readonly logEnable?: boolean | cdktf.IResolvable; /** * The prefix log name which saves the access log of this bucket per 5 minutes. Eg. `MyLogPrefix/`. The log access file format is `log_target_bucket`/`log_prefix`{YYYY}/{MM}/{DD}/{time}_{random}_{index}.gz. Only valid when `log_enable` is `true`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#log_prefix CosBucket#log_prefix} */ readonly logPrefix?: string; /** * The target bucket name which saves the access log of this bucket per 5 minutes. The log access file format is `log_target_bucket`/`log_prefix`{YYYY}/{MM}/{DD}/{time}_{random}_{index}.gz. Only valid when `log_enable` is `true`. User must have full access on this bucket. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#log_target_bucket CosBucket#log_target_bucket} */ readonly logTargetBucket?: string; /** * Indicates whether to create a bucket of multi available zone. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#multi_az CosBucket#multi_az} */ readonly multiAz?: boolean | cdktf.IResolvable; /** * Request initiator identifier, format: `qcs::cam::uin/:uin/`. NOTE: only `versioning_enable` is true can configure this argument. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#replica_role CosBucket#replica_role} */ readonly replicaRole?: string; /** * The tags of a bucket. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#tags CosBucket#tags} */ readonly tags?: { [key: string]: string; }; /** * Enable bucket versioning. NOTE: The `multi_az` feature is true for the current bucket, cannot disable version control. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#versioning_enable CosBucket#versioning_enable} */ readonly versioningEnable?: boolean | cdktf.IResolvable; /** * cors_rules block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#cors_rules CosBucket#cors_rules} */ readonly corsRules?: CosBucketCorsRules[] | cdktf.IResolvable; /** * lifecycle_rules block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#lifecycle_rules CosBucket#lifecycle_rules} */ readonly lifecycleRules?: CosBucketLifecycleRules[] | cdktf.IResolvable; /** * origin_domain_rules block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#origin_domain_rules CosBucket#origin_domain_rules} */ readonly originDomainRules?: CosBucketOriginDomainRules[] | cdktf.IResolvable; /** * origin_pull_rules block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#origin_pull_rules CosBucket#origin_pull_rules} */ readonly originPullRules?: CosBucketOriginPullRules[] | cdktf.IResolvable; /** * replica_rules block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#replica_rules CosBucket#replica_rules} */ readonly replicaRules?: CosBucketReplicaRules[] | cdktf.IResolvable; /** * website block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#website CosBucket#website} */ readonly website?: CosBucketWebsite; } export interface CosBucketCorsRules { /** * Specifies which headers are allowed. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#allowed_headers CosBucket#allowed_headers} */ readonly allowedHeaders: string[]; /** * Specifies which methods are allowed. Can be `GET`, `PUT`, `POST`, `DELETE` or `HEAD`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#allowed_methods CosBucket#allowed_methods} */ readonly allowedMethods: string[]; /** * Specifies which origins are allowed. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#allowed_origins CosBucket#allowed_origins} */ readonly allowedOrigins: string[]; /** * Specifies expose header in the response. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#expose_headers CosBucket#expose_headers} */ readonly exposeHeaders?: string[]; /** * Specifies time in seconds that browser can cache the response for a preflight request. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#max_age_seconds CosBucket#max_age_seconds} */ readonly maxAgeSeconds?: number; } export declare function cosBucketCorsRulesToTerraform(struct?: CosBucketCorsRules | cdktf.IResolvable): any; export declare function cosBucketCorsRulesToHclTerraform(struct?: CosBucketCorsRules | cdktf.IResolvable): any; export declare class CosBucketCorsRulesOutputReference 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(): CosBucketCorsRules | cdktf.IResolvable | undefined; set internalValue(value: CosBucketCorsRules | cdktf.IResolvable | undefined); private _allowedHeaders?; get allowedHeaders(): string[]; set allowedHeaders(value: string[]); get allowedHeadersInput(): string[]; private _allowedMethods?; get allowedMethods(): string[]; set allowedMethods(value: string[]); get allowedMethodsInput(): string[]; private _allowedOrigins?; get allowedOrigins(): string[]; set allowedOrigins(value: string[]); get allowedOriginsInput(): string[]; private _exposeHeaders?; get exposeHeaders(): string[]; set exposeHeaders(value: string[]); resetExposeHeaders(): void; get exposeHeadersInput(): string[]; private _maxAgeSeconds?; get maxAgeSeconds(): number; set maxAgeSeconds(value: number); resetMaxAgeSeconds(): void; get maxAgeSecondsInput(): number; } export declare class CosBucketCorsRulesList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: CosBucketCorsRules[] | 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): CosBucketCorsRulesOutputReference; } export interface CosBucketLifecycleRulesAbortIncompleteMultipartUpload { /** * Specifies the number of days after the multipart upload starts that the upload must be completed. The maximum value is 3650. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#days_after_initiation CosBucket#days_after_initiation} */ readonly daysAfterInitiation: number; } export declare function cosBucketLifecycleRulesAbortIncompleteMultipartUploadToTerraform(struct?: CosBucketLifecycleRulesAbortIncompleteMultipartUploadOutputReference | CosBucketLifecycleRulesAbortIncompleteMultipartUpload): any; export declare function cosBucketLifecycleRulesAbortIncompleteMultipartUploadToHclTerraform(struct?: CosBucketLifecycleRulesAbortIncompleteMultipartUploadOutputReference | CosBucketLifecycleRulesAbortIncompleteMultipartUpload): any; export declare class CosBucketLifecycleRulesAbortIncompleteMultipartUploadOutputReference 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(): CosBucketLifecycleRulesAbortIncompleteMultipartUpload | undefined; set internalValue(value: CosBucketLifecycleRulesAbortIncompleteMultipartUpload | undefined); private _daysAfterInitiation?; get daysAfterInitiation(): number; set daysAfterInitiation(value: number); get daysAfterInitiationInput(): number; } export interface CosBucketLifecycleRulesExpiration { /** * Specifies the date after which you want the corresponding action to take effect. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#date CosBucket#date} */ readonly date?: string; /** * Specifies the number of days after object creation when the specific rule action takes effect. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#days CosBucket#days} */ readonly days?: number; /** * Indicates whether the delete marker of an expired object will be removed. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#delete_marker CosBucket#delete_marker} */ readonly deleteMarker?: boolean | cdktf.IResolvable; } export declare function cosBucketLifecycleRulesExpirationToTerraform(struct?: CosBucketLifecycleRulesExpirationOutputReference | CosBucketLifecycleRulesExpiration): any; export declare function cosBucketLifecycleRulesExpirationToHclTerraform(struct?: CosBucketLifecycleRulesExpirationOutputReference | CosBucketLifecycleRulesExpiration): any; export declare class CosBucketLifecycleRulesExpirationOutputReference 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(): CosBucketLifecycleRulesExpiration | undefined; set internalValue(value: CosBucketLifecycleRulesExpiration | undefined); private _date?; get date(): string; set date(value: string); resetDate(): void; get dateInput(): string; private _days?; get days(): number; set days(value: number); resetDays(): void; get daysInput(): number; private _deleteMarker?; get deleteMarker(): boolean | cdktf.IResolvable; set deleteMarker(value: boolean | cdktf.IResolvable); resetDeleteMarker(): void; get deleteMarkerInput(): any; } export interface CosBucketLifecycleRulesNonCurrentExpiration { /** * Number of days after non current object creation when the specific rule action takes effect. The maximum value is 3650. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#non_current_days CosBucket#non_current_days} */ readonly nonCurrentDays?: number; } export declare function cosBucketLifecycleRulesNonCurrentExpirationToTerraform(struct?: CosBucketLifecycleRulesNonCurrentExpirationOutputReference | CosBucketLifecycleRulesNonCurrentExpiration): any; export declare function cosBucketLifecycleRulesNonCurrentExpirationToHclTerraform(struct?: CosBucketLifecycleRulesNonCurrentExpirationOutputReference | CosBucketLifecycleRulesNonCurrentExpiration): any; export declare class CosBucketLifecycleRulesNonCurrentExpirationOutputReference 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(): CosBucketLifecycleRulesNonCurrentExpiration | undefined; set internalValue(value: CosBucketLifecycleRulesNonCurrentExpiration | undefined); private _nonCurrentDays?; get nonCurrentDays(): number; set nonCurrentDays(value: number); resetNonCurrentDays(): void; get nonCurrentDaysInput(): number; } export interface CosBucketLifecycleRulesNonCurrentTransition { /** * Number of days after non current object creation when the specific rule action takes effect. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#non_current_days CosBucket#non_current_days} */ readonly nonCurrentDays?: number; /** * Specifies the storage class to which you want the non current object to transition. Available values include `STANDARD_IA`, `MAZ_STANDARD_IA`, `INTELLIGENT_TIERING`, `MAZ_INTELLIGENT_TIERING`, `ARCHIVE`, `DEEP_ARCHIVE`. For more information, please refer to: https://cloud.tencent.com/document/product/436/33417. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#storage_class CosBucket#storage_class} */ readonly storageClass: string; } export declare function cosBucketLifecycleRulesNonCurrentTransitionToTerraform(struct?: CosBucketLifecycleRulesNonCurrentTransition | cdktf.IResolvable): any; export declare function cosBucketLifecycleRulesNonCurrentTransitionToHclTerraform(struct?: CosBucketLifecycleRulesNonCurrentTransition | cdktf.IResolvable): any; export declare class CosBucketLifecycleRulesNonCurrentTransitionOutputReference 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(): CosBucketLifecycleRulesNonCurrentTransition | cdktf.IResolvable | undefined; set internalValue(value: CosBucketLifecycleRulesNonCurrentTransition | cdktf.IResolvable | undefined); private _nonCurrentDays?; get nonCurrentDays(): number; set nonCurrentDays(value: number); resetNonCurrentDays(): void; get nonCurrentDaysInput(): number; private _storageClass?; get storageClass(): string; set storageClass(value: string); get storageClassInput(): string; } export declare class CosBucketLifecycleRulesNonCurrentTransitionList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: CosBucketLifecycleRulesNonCurrentTransition[] | 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): CosBucketLifecycleRulesNonCurrentTransitionOutputReference; } export interface CosBucketLifecycleRulesTransition { /** * Specifies the date after which you want the corresponding action to take effect. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#date CosBucket#date} */ readonly date?: string; /** * Specifies the number of days after object creation when the specific rule action takes effect. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#days CosBucket#days} */ readonly days?: number; /** * Specifies the storage class to which you want the object to transition. Available values include `STANDARD_IA`, `MAZ_STANDARD_IA`, `INTELLIGENT_TIERING`, `MAZ_INTELLIGENT_TIERING`, `ARCHIVE`, `DEEP_ARCHIVE`. For more information, please refer to: https://cloud.tencent.com/document/product/436/33417. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#storage_class CosBucket#storage_class} */ readonly storageClass: string; } export declare function cosBucketLifecycleRulesTransitionToTerraform(struct?: CosBucketLifecycleRulesTransition | cdktf.IResolvable): any; export declare function cosBucketLifecycleRulesTransitionToHclTerraform(struct?: CosBucketLifecycleRulesTransition | cdktf.IResolvable): any; export declare class CosBucketLifecycleRulesTransitionOutputReference 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(): CosBucketLifecycleRulesTransition | cdktf.IResolvable | undefined; set internalValue(value: CosBucketLifecycleRulesTransition | cdktf.IResolvable | undefined); private _date?; get date(): string; set date(value: string); resetDate(): void; get dateInput(): string; private _days?; get days(): number; set days(value: number); resetDays(): void; get daysInput(): number; private _storageClass?; get storageClass(): string; set storageClass(value: string); get storageClassInput(): string; } export declare class CosBucketLifecycleRulesTransitionList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: CosBucketLifecycleRulesTransition[] | 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): CosBucketLifecycleRulesTransitionOutputReference; } export interface CosBucketLifecycleRules { /** * Object key prefix identifying one or more objects to which the rule applies. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#filter_prefix CosBucket#filter_prefix} */ readonly filterPrefix?: string; /** * A unique identifier for the rule. It can be up to 255 characters. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#id CosBucket#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; /** * abort_incomplete_multipart_upload block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#abort_incomplete_multipart_upload CosBucket#abort_incomplete_multipart_upload} */ readonly abortIncompleteMultipartUpload?: CosBucketLifecycleRulesAbortIncompleteMultipartUpload; /** * expiration block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#expiration CosBucket#expiration} */ readonly expiration?: CosBucketLifecycleRulesExpiration; /** * non_current_expiration block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#non_current_expiration CosBucket#non_current_expiration} */ readonly nonCurrentExpiration?: CosBucketLifecycleRulesNonCurrentExpiration; /** * non_current_transition block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#non_current_transition CosBucket#non_current_transition} */ readonly nonCurrentTransition?: CosBucketLifecycleRulesNonCurrentTransition[] | cdktf.IResolvable; /** * transition block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#transition CosBucket#transition} */ readonly transition?: CosBucketLifecycleRulesTransition[] | cdktf.IResolvable; } export declare function cosBucketLifecycleRulesToTerraform(struct?: CosBucketLifecycleRules | cdktf.IResolvable): any; export declare function cosBucketLifecycleRulesToHclTerraform(struct?: CosBucketLifecycleRules | cdktf.IResolvable): any; export declare class CosBucketLifecycleRulesOutputReference 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(): CosBucketLifecycleRules | cdktf.IResolvable | undefined; set internalValue(value: CosBucketLifecycleRules | cdktf.IResolvable | undefined); private _filterPrefix?; get filterPrefix(): string; set filterPrefix(value: string); resetFilterPrefix(): void; get filterPrefixInput(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _abortIncompleteMultipartUpload; get abortIncompleteMultipartUpload(): CosBucketLifecycleRulesAbortIncompleteMultipartUploadOutputReference; putAbortIncompleteMultipartUpload(value: CosBucketLifecycleRulesAbortIncompleteMultipartUpload): void; resetAbortIncompleteMultipartUpload(): void; get abortIncompleteMultipartUploadInput(): CosBucketLifecycleRulesAbortIncompleteMultipartUpload; private _expiration; get expiration(): CosBucketLifecycleRulesExpirationOutputReference; putExpiration(value: CosBucketLifecycleRulesExpiration): void; resetExpiration(): void; get expirationInput(): CosBucketLifecycleRulesExpiration; private _nonCurrentExpiration; get nonCurrentExpiration(): CosBucketLifecycleRulesNonCurrentExpirationOutputReference; putNonCurrentExpiration(value: CosBucketLifecycleRulesNonCurrentExpiration): void; resetNonCurrentExpiration(): void; get nonCurrentExpirationInput(): CosBucketLifecycleRulesNonCurrentExpiration; private _nonCurrentTransition; get nonCurrentTransition(): CosBucketLifecycleRulesNonCurrentTransitionList; putNonCurrentTransition(value: CosBucketLifecycleRulesNonCurrentTransition[] | cdktf.IResolvable): void; resetNonCurrentTransition(): void; get nonCurrentTransitionInput(): any; private _transition; get transition(): CosBucketLifecycleRulesTransitionList; putTransition(value: CosBucketLifecycleRulesTransition[] | cdktf.IResolvable): void; resetTransition(): void; get transitionInput(): any; } export declare class CosBucketLifecycleRulesList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: CosBucketLifecycleRules[] | 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): CosBucketLifecycleRulesOutputReference; } export interface CosBucketOriginDomainRules { /** * Specify domain host. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#domain CosBucket#domain} */ readonly domain: string; /** * Domain status, default: `ENABLED`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#status CosBucket#status} */ readonly status?: string; /** * Specify origin domain type, available values: `REST`, `WEBSITE`, `ACCELERATE`, default: `REST`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#type CosBucket#type} */ readonly type?: string; } export declare function cosBucketOriginDomainRulesToTerraform(struct?: CosBucketOriginDomainRules | cdktf.IResolvable): any; export declare function cosBucketOriginDomainRulesToHclTerraform(struct?: CosBucketOriginDomainRules | cdktf.IResolvable): any; export declare class CosBucketOriginDomainRulesOutputReference 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(): CosBucketOriginDomainRules | cdktf.IResolvable | undefined; set internalValue(value: CosBucketOriginDomainRules | cdktf.IResolvable | undefined); private _domain?; get domain(): string; set domain(value: string); get domainInput(): string; private _status?; get status(): string; set status(value: string); resetStatus(): void; get statusInput(): string; private _type?; get type(): string; set type(value: string); resetType(): void; get typeInput(): string; } export declare class CosBucketOriginDomainRulesList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: CosBucketOriginDomainRules[] | 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): CosBucketOriginDomainRulesOutputReference; } export interface CosBucketOriginPullRules { /** * Back to source mode. Allow value: Proxy, Mirror, Redirect. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#back_to_source_mode CosBucket#back_to_source_mode} */ readonly backToSourceMode?: string; /** * Specifies the custom headers that you can add for COS to access your origin server. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#custom_http_headers CosBucket#custom_http_headers} */ readonly customHttpHeaders?: { [key: string]: string; }; /** * Specifies the pass through headers when accessing the origin server. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#follow_http_headers CosBucket#follow_http_headers} */ readonly followHttpHeaders?: string[]; /** * Specifies whether to pass through COS request query string when accessing the origin server. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#follow_query_string CosBucket#follow_query_string} */ readonly followQueryString?: boolean | cdktf.IResolvable; /** * Specifies whether to follow 3XX redirect to another origin server to pull data from. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#follow_redirection CosBucket#follow_redirection} */ readonly followRedirection?: boolean | cdktf.IResolvable; /** * Allows only a domain name or IP address. You can optionally append a port number to the address. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#host CosBucket#host} */ readonly host: string; /** * Redirect code. Effective when `back_to_source_mode` is `Redirect`. ex: 301, 302, 307. Default is 302. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#http_redirect_code CosBucket#http_redirect_code} */ readonly httpRedirectCode?: string; /** * Triggers the origin-pull rule when the requested file name matches this prefix. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#prefix CosBucket#prefix} */ readonly prefix?: string; /** * Priority of origin-pull rules, do not set the same value for multiple rules. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#priority CosBucket#priority} */ readonly priority: number; /** * the protocol used for COS to access the specified origin server. The available value include `HTTP`, `HTTPS` and `FOLLOW`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#protocol CosBucket#protocol} */ readonly protocol?: string; /** * If `true`, COS will not return 3XX status code when pulling data from an origin server. Current available zone: ap-beijing, ap-shanghai, ap-singapore, ap-mumbai. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#sync_back_to_source CosBucket#sync_back_to_source} */ readonly syncBackToSource?: boolean | cdktf.IResolvable; } export declare function cosBucketOriginPullRulesToTerraform(struct?: CosBucketOriginPullRules | cdktf.IResolvable): any; export declare function cosBucketOriginPullRulesToHclTerraform(struct?: CosBucketOriginPullRules | cdktf.IResolvable): any; export declare class CosBucketOriginPullRulesOutputReference 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(): CosBucketOriginPullRules | cdktf.IResolvable | undefined; set internalValue(value: CosBucketOriginPullRules | cdktf.IResolvable | undefined); private _backToSourceMode?; get backToSourceMode(): string; set backToSourceMode(value: string); resetBackToSourceMode(): void; get backToSourceModeInput(): string; private _customHttpHeaders?; get customHttpHeaders(): { [key: string]: string; }; set customHttpHeaders(value: { [key: string]: string; }); resetCustomHttpHeaders(): void; get customHttpHeadersInput(): { [key: string]: string; }; private _followHttpHeaders?; get followHttpHeaders(): string[]; set followHttpHeaders(value: string[]); resetFollowHttpHeaders(): void; get followHttpHeadersInput(): string[]; private _followQueryString?; get followQueryString(): boolean | cdktf.IResolvable; set followQueryString(value: boolean | cdktf.IResolvable); resetFollowQueryString(): void; get followQueryStringInput(): any; private _followRedirection?; get followRedirection(): boolean | cdktf.IResolvable; set followRedirection(value: boolean | cdktf.IResolvable); resetFollowRedirection(): void; get followRedirectionInput(): any; private _host?; get host(): string; set host(value: string); get hostInput(): string; private _httpRedirectCode?; get httpRedirectCode(): string; set httpRedirectCode(value: string); resetHttpRedirectCode(): void; get httpRedirectCodeInput(): string; private _prefix?; get prefix(): string; set prefix(value: string); resetPrefix(): void; get prefixInput(): string; private _priority?; get priority(): number; set priority(value: number); get priorityInput(): number; private _protocol?; get protocol(): string; set protocol(value: string); resetProtocol(): void; get protocolInput(): string; private _syncBackToSource?; get syncBackToSource(): boolean | cdktf.IResolvable; set syncBackToSource(value: boolean | cdktf.IResolvable); resetSyncBackToSource(): void; get syncBackToSourceInput(): any; } export declare class CosBucketOriginPullRulesList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: CosBucketOriginPullRules[] | 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): CosBucketOriginPullRulesOutputReference; } export interface CosBucketReplicaRules { /** * Destination bucket identifier, format: `qcs::cos:::`. NOTE: destination bucket must enable versioning. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#destination_bucket CosBucket#destination_bucket} */ readonly destinationBucket: string; /** * Storage class of destination, available values: `STANDARD`, `INTELLIGENT_TIERING`, `STANDARD_IA`. default is following current class of destination. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#destination_storage_class CosBucket#destination_storage_class} */ readonly destinationStorageClass?: string; /** * Name of a specific rule. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#id CosBucket#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; /** * Prefix matching policy. Policies cannot overlap; otherwise, an error will be returned. To match the root directory, leave this parameter empty. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#prefix CosBucket#prefix} */ readonly prefix?: string; /** * Status identifier, available values: `Enabled`, `Disabled`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#status CosBucket#status} */ readonly status: string; } export declare function cosBucketReplicaRulesToTerraform(struct?: CosBucketReplicaRules | cdktf.IResolvable): any; export declare function cosBucketReplicaRulesToHclTerraform(struct?: CosBucketReplicaRules | cdktf.IResolvable): any; export declare class CosBucketReplicaRulesOutputReference 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(): CosBucketReplicaRules | cdktf.IResolvable | undefined; set internalValue(value: CosBucketReplicaRules | cdktf.IResolvable | undefined); private _destinationBucket?; get destinationBucket(): string; set destinationBucket(value: string); get destinationBucketInput(): string; private _destinationStorageClass?; get destinationStorageClass(): string; set destinationStorageClass(value: string); resetDestinationStorageClass(): void; get destinationStorageClassInput(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _prefix?; get prefix(): string; set prefix(value: string); resetPrefix(): void; get prefixInput(): string; private _status?; get status(): string; set status(value: string); get statusInput(): string; } export declare class CosBucketReplicaRulesList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: CosBucketReplicaRules[] | 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): CosBucketReplicaRulesOutputReference; } export interface CosBucketWebsiteRoutingRulesRules { /** * Specifies the error code as the match condition for the routing rule. Valid values: only 4xx return codes, such as 403 or 404. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#condition_error_code CosBucket#condition_error_code} */ readonly conditionErrorCode?: string; /** * Specifies the object key prefix as the match condition for the routing rule. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#condition_prefix CosBucket#condition_prefix} */ readonly conditionPrefix?: string; /** * Specifies the target protocol for the routing rule. Only HTTPS is supported. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#redirect_protocol CosBucket#redirect_protocol} */ readonly redirectProtocol?: string; /** * Specifies the target object key to replace the original object key in the request. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#redirect_replace_key CosBucket#redirect_replace_key} */ readonly redirectReplaceKey?: string; /** * Specifies the object key prefix to replace the original prefix in the request. You can set this parameter only if the condition is KeyPrefixEquals. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#redirect_replace_key_prefix CosBucket#redirect_replace_key_prefix} */ readonly redirectReplaceKeyPrefix?: string; } export declare function cosBucketWebsiteRoutingRulesRulesToTerraform(struct?: CosBucketWebsiteRoutingRulesRules | cdktf.IResolvable): any; export declare function cosBucketWebsiteRoutingRulesRulesToHclTerraform(struct?: CosBucketWebsiteRoutingRulesRules | cdktf.IResolvable): any; export declare class CosBucketWebsiteRoutingRulesRulesOutputReference 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(): CosBucketWebsiteRoutingRulesRules | cdktf.IResolvable | undefined; set internalValue(value: CosBucketWebsiteRoutingRulesRules | cdktf.IResolvable | undefined); private _conditionErrorCode?; get conditionErrorCode(): string; set conditionErrorCode(value: string); resetConditionErrorCode(): void; get conditionErrorCodeInput(): string; private _conditionPrefix?; get conditionPrefix(): string; set conditionPrefix(value: string); resetConditionPrefix(): void; get conditionPrefixInput(): string; private _redirectProtocol?; get redirectProtocol(): string; set redirectProtocol(value: string); resetRedirectProtocol(): void; get redirectProtocolInput(): string; private _redirectReplaceKey?; get redirectReplaceKey(): string; set redirectReplaceKey(value: string); resetRedirectReplaceKey(): void; get redirectReplaceKeyInput(): string; private _redirectReplaceKeyPrefix?; get redirectReplaceKeyPrefix(): string; set redirectReplaceKeyPrefix(value: string); resetRedirectReplaceKeyPrefix(): void; get redirectReplaceKeyPrefixInput(): string; } export declare class CosBucketWebsiteRoutingRulesRulesList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: CosBucketWebsiteRoutingRulesRules[] | 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): CosBucketWebsiteRoutingRulesRulesOutputReference; } export interface CosBucketWebsiteRoutingRules { /** * rules block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#rules CosBucket#rules} */ readonly rules: CosBucketWebsiteRoutingRulesRules[] | cdktf.IResolvable; } export declare function cosBucketWebsiteRoutingRulesToTerraform(struct?: CosBucketWebsiteRoutingRulesOutputReference | CosBucketWebsiteRoutingRules): any; export declare function cosBucketWebsiteRoutingRulesToHclTerraform(struct?: CosBucketWebsiteRoutingRulesOutputReference | CosBucketWebsiteRoutingRules): any; export declare class CosBucketWebsiteRoutingRulesOutputReference 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(): CosBucketWebsiteRoutingRules | undefined; set internalValue(value: CosBucketWebsiteRoutingRules | undefined); private _rules; get rules(): CosBucketWebsiteRoutingRulesRulesList; putRules(value: CosBucketWebsiteRoutingRulesRules[] | cdktf.IResolvable): void; get rulesInput(): any; } export interface CosBucketWebsite { /** * An absolute path to the document to return in case of a 4XX error. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#error_document CosBucket#error_document} */ readonly errorDocument?: string; /** * COS returns this index document when requests are made to the root domain or any of the subfolders. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#index_document CosBucket#index_document} */ readonly indexDocument?: string; /** * Redirects all request configurations. Valid values: http, https. Default is `http`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#redirect_all_requests_to CosBucket#redirect_all_requests_to} */ readonly redirectAllRequestsTo?: string; /** * routing_rules block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#routing_rules CosBucket#routing_rules} */ readonly routingRules?: CosBucketWebsiteRoutingRules; } export declare function cosBucketWebsiteToTerraform(struct?: CosBucketWebsiteOutputReference | CosBucketWebsite): any; export declare function cosBucketWebsiteToHclTerraform(struct?: CosBucketWebsiteOutputReference | CosBucketWebsite): any; export declare class CosBucketWebsiteOutputReference 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(): CosBucketWebsite | undefined; set internalValue(value: CosBucketWebsite | undefined); get endpoint(): any; private _errorDocument?; get errorDocument(): string; set errorDocument(value: string); resetErrorDocument(): void; get errorDocumentInput(): string; private _indexDocument?; get indexDocument(): string; set indexDocument(value: string); resetIndexDocument(): void; get indexDocumentInput(): string; private _redirectAllRequestsTo?; get redirectAllRequestsTo(): string; set redirectAllRequestsTo(value: string); resetRedirectAllRequestsTo(): void; get redirectAllRequestsToInput(): string; private _routingRules; get routingRules(): CosBucketWebsiteRoutingRulesOutputReference; putRoutingRules(value: CosBucketWebsiteRoutingRules): void; resetRoutingRules(): void; get routingRulesInput(): CosBucketWebsiteRoutingRules; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket tencentcloud_cos_bucket} */ export declare class CosBucket extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_cos_bucket"; /** * Generates CDKTF code for importing a CosBucket resource upon running "cdktf plan " * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the CosBucket to import * @param importFromId The id of the existing CosBucket that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the CosBucket to import is found */ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): any; /** * Create a new {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cos_bucket tencentcloud_cos_bucket} 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 CosBucketConfig */ constructor(scope: Construct, id: string, config: CosBucketConfig); private _accelerationEnable?; get accelerationEnable(): boolean | cdktf.IResolvable; set accelerationEnable(value: boolean | cdktf.IResolvable); resetAccelerationEnable(): void; get accelerationEnableInput(): any; private _acl?; get acl(): string; set acl(value: string); resetAcl(): void; get aclInput(): string; private _aclBody?; get aclBody(): string; set aclBody(value: string); resetAclBody(): void; get aclBodyInput(): string; private _bucket?; get bucket(): string; set bucket(value: string); get bucketInput(): string; private _cdcId?; get cdcId(): string; set cdcId(value: string); resetCdcId(): void; get cdcIdInput(): string; private _chdfsOfs?; get chdfsOfs(): boolean | cdktf.IResolvable; set chdfsOfs(value: boolean | cdktf.IResolvable); resetChdfsOfs(): void; get chdfsOfsInput(): any; get cosBucketUrl(): any; private _enableIntelligentTiering?; get enableIntelligentTiering(): boolean | cdktf.IResolvable; set enableIntelligentTiering(value: boolean | cdktf.IResolvable); resetEnableIntelligentTiering(): void; get enableIntelligentTieringInput(): any; private _encryptionAlgorithm?; get encryptionAlgorithm(): string; set encryptionAlgorithm(value: string); resetEncryptionAlgorithm(): void; get encryptionAlgorithmInput(): string; private _forceClean?; get forceClean(): boolean | cdktf.IResolvable; set forceClean(value: boolean | cdktf.IResolvable); resetForceClean(): void; get forceCleanInput(): any; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _intelligentTieringDays?; get intelligentTieringDays(): number; set intelligentTieringDays(value: number); resetIntelligentTieringDays(): void; get intelligentTieringDaysInput(): number; private _intelligentTieringRequestFrequent?; get intelligentTieringRequestFrequent(): number; set intelligentTieringRequestFrequent(value: number); resetIntelligentTieringRequestFrequent(): void; get intelligentTieringRequestFrequentInput(): number; private _kmsId?; get kmsId(): string; set kmsId(value: string); resetKmsId(): void; get kmsIdInput(): string; private _logEnable?; get logEnable(): boolean | cdktf.IResolvable; set logEnable(value: boolean | cdktf.IResolvable); resetLogEnable(): void; get logEnableInput(): any; private _logPrefix?; get logPrefix(): string; set logPrefix(value: string); resetLogPrefix(): void; get logPrefixInput(): string; private _logTargetBucket?; get logTargetBucket(): string; set logTargetBucket(value: string); resetLogTargetBucket(): void; get logTargetBucketInput(): string; private _multiAz?; get multiAz(): boolean | cdktf.IResolvable; set multiAz(value: boolean | cdktf.IResolvable); resetMultiAz(): void; get multiAzInput(): any; private _replicaRole?; get replicaRole(): string; set replicaRole(value: string); resetReplicaRole(): void; get replicaRoleInput(): string; private _tags?; get tags(): { [key: string]: string; }; set tags(value: { [key: string]: string; }); resetTags(): void; get tagsInput(): { [key: string]: string; }; private _versioningEnable?; get versioningEnable(): boolean | cdktf.IResolvable; set versioningEnable(value: boolean | cdktf.IResolvable); resetVersioningEnable(): void; get versioningEnableInput(): any; private _corsRules; get corsRules(): CosBucketCorsRulesList; putCorsRules(value: CosBucketCorsRules[] | cdktf.IResolvable): void; resetCorsRules(): void; get corsRulesInput(): any; private _lifecycleRules; get lifecycleRules(): CosBucketLifecycleRulesList; putLifecycleRules(value: CosBucketLifecycleRules[] | cdktf.IResolvable): void; resetLifecycleRules(): void; get lifecycleRulesInput(): any; private _originDomainRules; get originDomainRules(): CosBucketOriginDomainRulesList; putOriginDomainRules(value: CosBucketOriginDomainRules[] | cdktf.IResolvable): void; resetOriginDomainRules(): void; get originDomainRulesInput(): any; private _originPullRules; get originPullRules(): CosBucketOriginPullRulesList; putOriginPullRules(value: CosBucketOriginPullRules[] | cdktf.IResolvable): void; resetOriginPullRules(): void; get originPullRulesInput(): any; private _replicaRules; get replicaRules(): CosBucketReplicaRulesList; putReplicaRules(value: CosBucketReplicaRules[] | cdktf.IResolvable): void; resetReplicaRules(): void; get replicaRulesInput(): any; private _website; get website(): CosBucketWebsiteOutputReference; putWebsite(value: CosBucketWebsite): void; resetWebsite(): void; get websiteInput(): CosBucketWebsite; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }