import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface ClsCosShipperConfig extends cdktf.TerraformMetaArguments { /** * Destination bucket in the shipping rule to be created. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#bucket ClsCosShipper#bucket} */ readonly bucket: string; /** * End time for data shipping, which cannot be set to a future time. If you do not specify this parameter, it indicates continuous data shipping. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#end_time ClsCosShipper#end_time} */ readonly endTime?: number; /** * Naming a shipping file. Valid values: 0 (by random number); 1 (by shipping time). Default value: 0. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#filename_mode ClsCosShipper#filename_mode} */ readonly filenameMode?: number; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#id ClsCosShipper#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; /** * Shipping time interval in seconds. Default value: 300. Value range: 300~900. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#interval ClsCosShipper#interval} */ readonly interval?: number; /** * Maximum size of a file to be shipped, in MB. Default value: 256. Value range: 100~256. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#max_size ClsCosShipper#max_size} */ readonly maxSize?: number; /** * Partition rule of shipped log, which can be represented in strftime time format. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#partition ClsCosShipper#partition} */ readonly partition?: string; /** * Prefix of the shipping directory in the shipping rule to be created. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#prefix ClsCosShipper#prefix} */ readonly prefix: string; /** * Shipping rule name. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#shipper_name ClsCosShipper#shipper_name} */ readonly shipperName: string; /** * Start time for data shipping, which cannot be earlier than the lifecycle start time of the log topic. If you do not specify this parameter, it will be set to the time when you create the data shipping task. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#start_time ClsCosShipper#start_time} */ readonly startTime?: number; /** * COS bucket storage type. support: STANDARD_IA, ARCHIVE, DEEP_ARCHIVE, STANDARD, MAZ_STANDARD, MAZ_STANDARD_IA, INTELLIGENT_TIERING. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#storage_type ClsCosShipper#storage_type} */ readonly storageType?: string; /** * ID of the log topic to which the shipping rule to be created belongs. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#topic_id ClsCosShipper#topic_id} */ readonly topicId: string; /** * compress block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#compress ClsCosShipper#compress} */ readonly compress?: ClsCosShipperCompress; /** * content block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#content ClsCosShipper#content} */ readonly content?: ClsCosShipperContent; /** * filter_rules block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#filter_rules ClsCosShipper#filter_rules} */ readonly filterRules?: ClsCosShipperFilterRules[] | cdktf.IResolvable; } export interface ClsCosShipperCompress { /** * Compression format. Valid values: gzip, lzop, none (no compression). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#format ClsCosShipper#format} */ readonly format: string; } export declare function clsCosShipperCompressToTerraform(struct?: ClsCosShipperCompressOutputReference | ClsCosShipperCompress): any; export declare function clsCosShipperCompressToHclTerraform(struct?: ClsCosShipperCompressOutputReference | ClsCosShipperCompress): any; export declare class ClsCosShipperCompressOutputReference 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(): ClsCosShipperCompress | undefined; set internalValue(value: ClsCosShipperCompress | undefined); private _format?; get format(): string; set format(value: string); get formatInput(): string; } export interface ClsCosShipperContentCsv { /** * Field delimiter. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#delimiter ClsCosShipper#delimiter} */ readonly delimiter: string; /** * Field delimiter. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#escape_char ClsCosShipper#escape_char} */ readonly escapeChar: string; /** * Names of keys.Note: this field may return null, indicating that no valid values can be obtained. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#keys ClsCosShipper#keys} */ readonly keys: string[]; /** * Content used to populate non-existing fields. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#non_existing_field ClsCosShipper#non_existing_field} */ readonly nonExistingField: string; /** * Whether to print key on the first row of the CSV file. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#print_key ClsCosShipper#print_key} */ readonly printKey: boolean | cdktf.IResolvable; } export declare function clsCosShipperContentCsvToTerraform(struct?: ClsCosShipperContentCsvOutputReference | ClsCosShipperContentCsv): any; export declare function clsCosShipperContentCsvToHclTerraform(struct?: ClsCosShipperContentCsvOutputReference | ClsCosShipperContentCsv): any; export declare class ClsCosShipperContentCsvOutputReference 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(): ClsCosShipperContentCsv | undefined; set internalValue(value: ClsCosShipperContentCsv | undefined); private _delimiter?; get delimiter(): string; set delimiter(value: string); get delimiterInput(): string; private _escapeChar?; get escapeChar(): string; set escapeChar(value: string); get escapeCharInput(): string; private _keys?; get keys(): string[]; set keys(value: string[]); get keysInput(): string[]; private _nonExistingField?; get nonExistingField(): string; set nonExistingField(value: string); get nonExistingFieldInput(): string; private _printKey?; get printKey(): boolean | cdktf.IResolvable; set printKey(value: boolean | cdktf.IResolvable); get printKeyInput(): any; } export interface ClsCosShipperContentJson { /** * Enablement flag. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#enable_tag ClsCosShipper#enable_tag} */ readonly enableTag: boolean | cdktf.IResolvable; /** * Metadata information list * Note: this field may return null, indicating that no valid values can be obtained.. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#meta_fields ClsCosShipper#meta_fields} */ readonly metaFields: string[]; } export declare function clsCosShipperContentJsonToTerraform(struct?: ClsCosShipperContentJsonOutputReference | ClsCosShipperContentJson): any; export declare function clsCosShipperContentJsonToHclTerraform(struct?: ClsCosShipperContentJsonOutputReference | ClsCosShipperContentJson): any; export declare class ClsCosShipperContentJsonOutputReference 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(): ClsCosShipperContentJson | undefined; set internalValue(value: ClsCosShipperContentJson | undefined); private _enableTag?; get enableTag(): boolean | cdktf.IResolvable; set enableTag(value: boolean | cdktf.IResolvable); get enableTagInput(): any; private _metaFields?; get metaFields(): string[]; set metaFields(value: string[]); get metaFieldsInput(): string[]; } export interface ClsCosShipperContent { /** * Content format. Valid values: json, csv. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#format ClsCosShipper#format} */ readonly format: string; /** * csv block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#csv ClsCosShipper#csv} */ readonly csv?: ClsCosShipperContentCsv; /** * json block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#json ClsCosShipper#json} */ readonly json?: ClsCosShipperContentJson; } export declare function clsCosShipperContentToTerraform(struct?: ClsCosShipperContentOutputReference | ClsCosShipperContent): any; export declare function clsCosShipperContentToHclTerraform(struct?: ClsCosShipperContentOutputReference | ClsCosShipperContent): any; export declare class ClsCosShipperContentOutputReference 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(): ClsCosShipperContent | undefined; set internalValue(value: ClsCosShipperContent | undefined); private _format?; get format(): string; set format(value: string); get formatInput(): string; private _csv; get csv(): ClsCosShipperContentCsvOutputReference; putCsv(value: ClsCosShipperContentCsv): void; resetCsv(): void; get csvInput(): ClsCosShipperContentCsv; private _json; get json(): ClsCosShipperContentJsonOutputReference; putJson(value: ClsCosShipperContentJson): void; resetJson(): void; get jsonInput(): ClsCosShipperContentJson; } export interface ClsCosShipperFilterRules { /** * Filter rule key. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#key ClsCosShipper#key} */ readonly key: string; /** * Filter rule. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#regex ClsCosShipper#regex} */ readonly regex: string; /** * Filter rule value. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#value ClsCosShipper#value} */ readonly value: string; } export declare function clsCosShipperFilterRulesToTerraform(struct?: ClsCosShipperFilterRules | cdktf.IResolvable): any; export declare function clsCosShipperFilterRulesToHclTerraform(struct?: ClsCosShipperFilterRules | cdktf.IResolvable): any; export declare class ClsCosShipperFilterRulesOutputReference 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(): ClsCosShipperFilterRules | cdktf.IResolvable | undefined; set internalValue(value: ClsCosShipperFilterRules | cdktf.IResolvable | undefined); private _key?; get key(): string; set key(value: string); get keyInput(): string; private _regex?; get regex(): string; set regex(value: string); get regexInput(): string; private _value?; get value(): string; set value(value: string); get valueInput(): string; } export declare class ClsCosShipperFilterRulesList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: ClsCosShipperFilterRules[] | 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): ClsCosShipperFilterRulesOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper tencentcloud_cls_cos_shipper} */ export declare class ClsCosShipper extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_cls_cos_shipper"; /** * Generates CDKTF code for importing a ClsCosShipper 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 ClsCosShipper to import * @param importFromId The id of the existing ClsCosShipper that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/cls_cos_shipper#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the ClsCosShipper 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/cls_cos_shipper tencentcloud_cls_cos_shipper} 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 ClsCosShipperConfig */ constructor(scope: Construct, id: string, config: ClsCosShipperConfig); private _bucket?; get bucket(): string; set bucket(value: string); get bucketInput(): string; private _endTime?; get endTime(): number; set endTime(value: number); resetEndTime(): void; get endTimeInput(): number; private _filenameMode?; get filenameMode(): number; set filenameMode(value: number); resetFilenameMode(): void; get filenameModeInput(): number; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _interval?; get interval(): number; set interval(value: number); resetInterval(): void; get intervalInput(): number; private _maxSize?; get maxSize(): number; set maxSize(value: number); resetMaxSize(): void; get maxSizeInput(): number; private _partition?; get partition(): string; set partition(value: string); resetPartition(): void; get partitionInput(): string; private _prefix?; get prefix(): string; set prefix(value: string); get prefixInput(): string; private _shipperName?; get shipperName(): string; set shipperName(value: string); get shipperNameInput(): string; private _startTime?; get startTime(): number; set startTime(value: number); resetStartTime(): void; get startTimeInput(): number; private _storageType?; get storageType(): string; set storageType(value: string); resetStorageType(): void; get storageTypeInput(): string; private _topicId?; get topicId(): string; set topicId(value: string); get topicIdInput(): string; private _compress; get compress(): ClsCosShipperCompressOutputReference; putCompress(value: ClsCosShipperCompress): void; resetCompress(): void; get compressInput(): ClsCosShipperCompress; private _content; get content(): ClsCosShipperContentOutputReference; putContent(value: ClsCosShipperContent): void; resetContent(): void; get contentInput(): ClsCosShipperContent; private _filterRules; get filterRules(): ClsCosShipperFilterRulesList; putFilterRules(value: ClsCosShipperFilterRules[] | cdktf.IResolvable): void; resetFilterRules(): void; get filterRulesInput(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }