import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface TcmAccessLogConfigConfig extends cdktf.TerraformMetaArguments { /** * Third party grpc server address. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcm_access_log_config#address TcmAccessLogConfig#address} */ readonly address?: string; /** * Whether enable log. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcm_access_log_config#enable TcmAccessLogConfig#enable} */ readonly enable?: boolean | cdktf.IResolvable; /** * Whether enable third party grpc server. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcm_access_log_config#enable_server TcmAccessLogConfig#enable_server} */ readonly enableServer?: boolean | cdktf.IResolvable; /** * Whether enable stdout. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcm_access_log_config#enable_stdout TcmAccessLogConfig#enable_stdout} */ readonly enableStdout?: boolean | cdktf.IResolvable; /** * Log encoding, TEXT or JSON. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcm_access_log_config#encoding TcmAccessLogConfig#encoding} */ readonly encoding?: string; /** * Log format. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcm_access_log_config#format TcmAccessLogConfig#format} */ readonly format?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcm_access_log_config#id TcmAccessLogConfig#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; /** * Mesh ID. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcm_access_log_config#mesh_name TcmAccessLogConfig#mesh_name} */ readonly meshName: string; /** * Log template, istio/trace/custome. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcm_access_log_config#template TcmAccessLogConfig#template} */ readonly template?: string; /** * cls block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcm_access_log_config#cls TcmAccessLogConfig#cls} */ readonly cls?: TcmAccessLogConfigCls; /** * selected_range block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcm_access_log_config#selected_range TcmAccessLogConfig#selected_range} */ readonly selectedRange?: TcmAccessLogConfigSelectedRange; } export interface TcmAccessLogConfigCls { /** * Whether enable CLS. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcm_access_log_config#enable TcmAccessLogConfig#enable} */ readonly enable: boolean | cdktf.IResolvable; /** * Log set of CLS. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcm_access_log_config#log_set TcmAccessLogConfig#log_set} */ readonly logSet?: string; /** * Log topic of CLS. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcm_access_log_config#topic TcmAccessLogConfig#topic} */ readonly topic?: string; } export declare function tcmAccessLogConfigClsToTerraform(struct?: TcmAccessLogConfigClsOutputReference | TcmAccessLogConfigCls): any; export declare function tcmAccessLogConfigClsToHclTerraform(struct?: TcmAccessLogConfigClsOutputReference | TcmAccessLogConfigCls): any; export declare class TcmAccessLogConfigClsOutputReference 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(): TcmAccessLogConfigCls | undefined; set internalValue(value: TcmAccessLogConfigCls | undefined); private _enable?; get enable(): boolean | cdktf.IResolvable; set enable(value: boolean | cdktf.IResolvable); get enableInput(): any; private _logSet?; get logSet(): string; set logSet(value: string); resetLogSet(): void; get logSetInput(): string; private _topic?; get topic(): string; set topic(value: string); resetTopic(): void; get topicInput(): string; } export interface TcmAccessLogConfigSelectedRangeItems { /** * Ingress gateway list. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcm_access_log_config#gateways TcmAccessLogConfig#gateways} */ readonly gateways?: string[]; /** * Namespace. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcm_access_log_config#namespace TcmAccessLogConfig#namespace} */ readonly namespace?: string; } export declare function tcmAccessLogConfigSelectedRangeItemsToTerraform(struct?: TcmAccessLogConfigSelectedRangeItems | cdktf.IResolvable): any; export declare function tcmAccessLogConfigSelectedRangeItemsToHclTerraform(struct?: TcmAccessLogConfigSelectedRangeItems | cdktf.IResolvable): any; export declare class TcmAccessLogConfigSelectedRangeItemsOutputReference 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(): TcmAccessLogConfigSelectedRangeItems | cdktf.IResolvable | undefined; set internalValue(value: TcmAccessLogConfigSelectedRangeItems | cdktf.IResolvable | undefined); private _gateways?; get gateways(): string[]; set gateways(value: string[]); resetGateways(): void; get gatewaysInput(): string[]; private _namespace?; get namespace(): string; set namespace(value: string); resetNamespace(): void; get namespaceInput(): string; } export declare class TcmAccessLogConfigSelectedRangeItemsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: TcmAccessLogConfigSelectedRangeItems[] | 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): TcmAccessLogConfigSelectedRangeItemsOutputReference; } export interface TcmAccessLogConfigSelectedRange { /** * Select all if true, default false. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcm_access_log_config#all TcmAccessLogConfig#all} */ readonly all?: boolean | cdktf.IResolvable; /** * items block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcm_access_log_config#items TcmAccessLogConfig#items} */ readonly items?: TcmAccessLogConfigSelectedRangeItems[] | cdktf.IResolvable; } export declare function tcmAccessLogConfigSelectedRangeToTerraform(struct?: TcmAccessLogConfigSelectedRangeOutputReference | TcmAccessLogConfigSelectedRange): any; export declare function tcmAccessLogConfigSelectedRangeToHclTerraform(struct?: TcmAccessLogConfigSelectedRangeOutputReference | TcmAccessLogConfigSelectedRange): any; export declare class TcmAccessLogConfigSelectedRangeOutputReference 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(): TcmAccessLogConfigSelectedRange | undefined; set internalValue(value: TcmAccessLogConfigSelectedRange | undefined); private _all?; get all(): boolean | cdktf.IResolvable; set all(value: boolean | cdktf.IResolvable); resetAll(): void; get allInput(): any; private _items; get items(): TcmAccessLogConfigSelectedRangeItemsList; putItems(value: TcmAccessLogConfigSelectedRangeItems[] | cdktf.IResolvable): void; resetItems(): void; get itemsInput(): any; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcm_access_log_config tencentcloud_tcm_access_log_config} */ export declare class TcmAccessLogConfig extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_tcm_access_log_config"; /** * Generates CDKTF code for importing a TcmAccessLogConfig 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 TcmAccessLogConfig to import * @param importFromId The id of the existing TcmAccessLogConfig that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcm_access_log_config#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the TcmAccessLogConfig 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/tcm_access_log_config tencentcloud_tcm_access_log_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 TcmAccessLogConfigConfig */ constructor(scope: Construct, id: string, config: TcmAccessLogConfigConfig); private _address?; get address(): string; set address(value: string); resetAddress(): void; get addressInput(): string; private _enable?; get enable(): boolean | cdktf.IResolvable; set enable(value: boolean | cdktf.IResolvable); resetEnable(): void; get enableInput(): any; private _enableServer?; get enableServer(): boolean | cdktf.IResolvable; set enableServer(value: boolean | cdktf.IResolvable); resetEnableServer(): void; get enableServerInput(): any; private _enableStdout?; get enableStdout(): boolean | cdktf.IResolvable; set enableStdout(value: boolean | cdktf.IResolvable); resetEnableStdout(): void; get enableStdoutInput(): any; private _encoding?; get encoding(): string; set encoding(value: string); resetEncoding(): void; get encodingInput(): string; private _format?; get format(): string; set format(value: string); resetFormat(): void; get formatInput(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _meshName?; get meshName(): string; set meshName(value: string); get meshNameInput(): string; private _template?; get template(): string; set template(value: string); resetTemplate(): void; get templateInput(): string; private _cls; get cls(): TcmAccessLogConfigClsOutputReference; putCls(value: TcmAccessLogConfigCls): void; resetCls(): void; get clsInput(): TcmAccessLogConfigCls; private _selectedRange; get selectedRange(): TcmAccessLogConfigSelectedRangeOutputReference; putSelectedRange(value: TcmAccessLogConfigSelectedRange): void; resetSelectedRange(): void; get selectedRangeInput(): TcmAccessLogConfigSelectedRange; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }