import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface CdnLogsUploaderPolicyConfig extends cdktf.TerraformMetaArguments { /** * Date format for logs. Default value is empty string. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/g-core/gcore/0.32.5/docs/resources/cdn_logs_uploader_policy#date_format CdnLogsUploaderPolicy#date_format} */ readonly dateFormat?: string; /** * Description of the policy. Default value is empty string. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/g-core/gcore/0.32.5/docs/resources/cdn_logs_uploader_policy#description CdnLogsUploaderPolicy#description} */ readonly description?: string; /** * Field delimiter for logs. Default value is \". * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/g-core/gcore/0.32.5/docs/resources/cdn_logs_uploader_policy#field_delimiter CdnLogsUploaderPolicy#field_delimiter} */ readonly fieldDelimiter?: string; /** * Field separator for logs. Default value is a space character. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/g-core/gcore/0.32.5/docs/resources/cdn_logs_uploader_policy#field_separator CdnLogsUploaderPolicy#field_separator} */ readonly fieldSeparator?: string; /** * List of fields to include in logs. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/g-core/gcore/0.32.5/docs/resources/cdn_logs_uploader_policy#fields CdnLogsUploaderPolicy#fields} */ readonly fields: string[]; /** * Template for log file name. Default value is "{{YYYY}}/{{MM}}/{{DD}}/{{HH}}/{{mm}}/{{ss}}/{{HOST}}_{{CNAME}}_access.log.gz". * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/g-core/gcore/0.32.5/docs/resources/cdn_logs_uploader_policy#file_name_template CdnLogsUploaderPolicy#file_name_template} */ readonly fileNameTemplate?: string; /** * Format type for logs. Default value is empty string. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/g-core/gcore/0.32.5/docs/resources/cdn_logs_uploader_policy#format_type CdnLogsUploaderPolicy#format_type} */ readonly formatType?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/g-core/gcore/0.32.5/docs/resources/cdn_logs_uploader_policy#id CdnLogsUploaderPolicy#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; /** * Include empty logs in the upload. Default value is false. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/g-core/gcore/0.32.5/docs/resources/cdn_logs_uploader_policy#include_empty_logs CdnLogsUploaderPolicy#include_empty_logs} */ readonly includeEmptyLogs?: boolean | cdktf.IResolvable; /** * Include logs from origin shielding in the upload. Default value is false. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/g-core/gcore/0.32.5/docs/resources/cdn_logs_uploader_policy#include_shield_logs CdnLogsUploaderPolicy#include_shield_logs} */ readonly includeShieldLogs?: boolean | cdktf.IResolvable; /** * Name of the policy. Default value is "Policy". * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/g-core/gcore/0.32.5/docs/resources/cdn_logs_uploader_policy#name CdnLogsUploaderPolicy#name} */ readonly name?: string; /** * Interval in minutes to retry failed uploads. Default value is 60. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/g-core/gcore/0.32.5/docs/resources/cdn_logs_uploader_policy#retry_interval_minutes CdnLogsUploaderPolicy#retry_interval_minutes} */ readonly retryIntervalMinutes?: number; /** * Interval in minutes to rotate logs. Default value is 5. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/g-core/gcore/0.32.5/docs/resources/cdn_logs_uploader_policy#rotate_interval_minutes CdnLogsUploaderPolicy#rotate_interval_minutes} */ readonly rotateIntervalMinutes?: number; /** * Threshold in lines to rotate logs. Default value is 0. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/g-core/gcore/0.32.5/docs/resources/cdn_logs_uploader_policy#rotate_threshold_lines CdnLogsUploaderPolicy#rotate_threshold_lines} */ readonly rotateThresholdLines?: number; /** * Threshold in MB to rotate logs. Default value is nil. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/g-core/gcore/0.32.5/docs/resources/cdn_logs_uploader_policy#rotate_threshold_mb CdnLogsUploaderPolicy#rotate_threshold_mb} */ readonly rotateThresholdMb?: number; /** * Tags allow for dynamic decoration of logs by adding predefined fields to the log format. These tags serve as customizable key-value pairs that can be included in log entries to enhance context and readability. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/g-core/gcore/0.32.5/docs/resources/cdn_logs_uploader_policy#tags CdnLogsUploaderPolicy#tags} */ readonly tags?: { [key: string]: string; }; } /** * Represents a {@link https://registry.terraform.io/providers/g-core/gcore/0.32.5/docs/resources/cdn_logs_uploader_policy gcore_cdn_logs_uploader_policy} */ export declare class CdnLogsUploaderPolicy extends cdktf.TerraformResource { static readonly tfResourceType = "gcore_cdn_logs_uploader_policy"; /** * Generates CDKTF code for importing a CdnLogsUploaderPolicy 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 CdnLogsUploaderPolicy to import * @param importFromId The id of the existing CdnLogsUploaderPolicy that should be imported. Refer to the {@link https://registry.terraform.io/providers/g-core/gcore/0.32.5/docs/resources/cdn_logs_uploader_policy#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the CdnLogsUploaderPolicy 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/g-core/gcore/0.32.5/docs/resources/cdn_logs_uploader_policy gcore_cdn_logs_uploader_policy} 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 CdnLogsUploaderPolicyConfig */ constructor(scope: Construct, id: string, config: CdnLogsUploaderPolicyConfig); private _dateFormat?; get dateFormat(): string; set dateFormat(value: string); resetDateFormat(): void; get dateFormatInput(): string; private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string; private _fieldDelimiter?; get fieldDelimiter(): string; set fieldDelimiter(value: string); resetFieldDelimiter(): void; get fieldDelimiterInput(): string; private _fieldSeparator?; get fieldSeparator(): string; set fieldSeparator(value: string); resetFieldSeparator(): void; get fieldSeparatorInput(): string; private _fields?; get fields(): string[]; set fields(value: string[]); get fieldsInput(): string[]; private _fileNameTemplate?; get fileNameTemplate(): string; set fileNameTemplate(value: string); resetFileNameTemplate(): void; get fileNameTemplateInput(): string; private _formatType?; get formatType(): string; set formatType(value: string); resetFormatType(): void; get formatTypeInput(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _includeEmptyLogs?; get includeEmptyLogs(): boolean | cdktf.IResolvable; set includeEmptyLogs(value: boolean | cdktf.IResolvable); resetIncludeEmptyLogs(): void; get includeEmptyLogsInput(): any; private _includeShieldLogs?; get includeShieldLogs(): boolean | cdktf.IResolvable; set includeShieldLogs(value: boolean | cdktf.IResolvable); resetIncludeShieldLogs(): void; get includeShieldLogsInput(): any; private _name?; get name(): string; set name(value: string); resetName(): void; get nameInput(): string; private _retryIntervalMinutes?; get retryIntervalMinutes(): number; set retryIntervalMinutes(value: number); resetRetryIntervalMinutes(): void; get retryIntervalMinutesInput(): number; private _rotateIntervalMinutes?; get rotateIntervalMinutes(): number; set rotateIntervalMinutes(value: number); resetRotateIntervalMinutes(): void; get rotateIntervalMinutesInput(): number; private _rotateThresholdLines?; get rotateThresholdLines(): number; set rotateThresholdLines(value: number); resetRotateThresholdLines(): void; get rotateThresholdLinesInput(): number; private _rotateThresholdMb?; get rotateThresholdMb(): number; set rotateThresholdMb(value: number); resetRotateThresholdMb(): void; get rotateThresholdMbInput(): number; private _tags?; get tags(): { [key: string]: string; }; set tags(value: { [key: string]: string; }); resetTags(): void; get tagsInput(): { [key: string]: string; }; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }