import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface CkafkaAclRuleConfig extends cdktf.TerraformMetaArguments { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ckafka_acl_rule#id CkafkaAclRule#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; /** * instance id. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ckafka_acl_rule#instance_id CkafkaAclRule#instance_id} */ readonly instanceId: string; /** * Whether the preset ACL rule is applied to the newly added topic. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ckafka_acl_rule#is_applied CkafkaAclRule#is_applied} */ readonly isApplied?: number; /** * A value representing the prefix that the prefix matches. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ckafka_acl_rule#pattern CkafkaAclRule#pattern} */ readonly pattern?: string; /** * Match type, currently supports prefix matching and preset strategy, enumeration value list{PREFIXED/PRESET}. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ckafka_acl_rule#pattern_type CkafkaAclRule#pattern_type} */ readonly patternType: string; /** * Acl resource type, currently only supports Topic, enumeration value list{Topic}. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ckafka_acl_rule#resource_type CkafkaAclRule#resource_type} */ readonly resourceType: string; /** * rule name. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ckafka_acl_rule#rule_name CkafkaAclRule#rule_name} */ readonly ruleName: string; /** * rule_list block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ckafka_acl_rule#rule_list CkafkaAclRule#rule_list} */ readonly ruleList: CkafkaAclRuleRuleListStruct[] | cdktf.IResolvable; } export interface CkafkaAclRuleRuleListStruct { /** * The default is *, which means that any host can be accessed. Currently, ckafka does not support host and ip network segment. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ckafka_acl_rule#host CkafkaAclRule#host} */ readonly host: string; /** * Acl operation mode, enumeration value (all operations All, read Read, write Write). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ckafka_acl_rule#operation CkafkaAclRule#operation} */ readonly operation: string; /** * permission type, (Deny|Allow). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ckafka_acl_rule#permission_type CkafkaAclRule#permission_type} */ readonly permissionType: string; /** * User list, the default is User:, which means that any user can access, and the current user can only be the user included in the user list. The input format needs to be prefixed with [User:]. For example, user A is passed in as User:A. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ckafka_acl_rule#principal CkafkaAclRule#principal} */ readonly principal: string; } export declare function ckafkaAclRuleRuleListStructToTerraform(struct?: CkafkaAclRuleRuleListStruct | cdktf.IResolvable): any; export declare function ckafkaAclRuleRuleListStructToHclTerraform(struct?: CkafkaAclRuleRuleListStruct | cdktf.IResolvable): any; export declare class CkafkaAclRuleRuleListStructOutputReference 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(): CkafkaAclRuleRuleListStruct | cdktf.IResolvable | undefined; set internalValue(value: CkafkaAclRuleRuleListStruct | cdktf.IResolvable | undefined); private _host?; get host(): string; set host(value: string); get hostInput(): string; private _operation?; get operation(): string; set operation(value: string); get operationInput(): string; private _permissionType?; get permissionType(): string; set permissionType(value: string); get permissionTypeInput(): string; private _principal?; get principal(): string; set principal(value: string); get principalInput(): string; } export declare class CkafkaAclRuleRuleListStructList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: CkafkaAclRuleRuleListStruct[] | 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): CkafkaAclRuleRuleListStructOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ckafka_acl_rule tencentcloud_ckafka_acl_rule} */ export declare class CkafkaAclRule extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_ckafka_acl_rule"; /** * Generates CDKTF code for importing a CkafkaAclRule 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 CkafkaAclRule to import * @param importFromId The id of the existing CkafkaAclRule that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/ckafka_acl_rule#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the CkafkaAclRule 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/ckafka_acl_rule tencentcloud_ckafka_acl_rule} 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 CkafkaAclRuleConfig */ constructor(scope: Construct, id: string, config: CkafkaAclRuleConfig); private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _instanceId?; get instanceId(): string; set instanceId(value: string); get instanceIdInput(): string; private _isApplied?; get isApplied(): number; set isApplied(value: number); resetIsApplied(): void; get isAppliedInput(): number; private _pattern?; get pattern(): string; set pattern(value: string); resetPattern(): void; get patternInput(): string; private _patternType?; get patternType(): string; set patternType(value: string); get patternTypeInput(): string; private _resourceType?; get resourceType(): string; set resourceType(value: string); get resourceTypeInput(): string; private _ruleName?; get ruleName(): string; set ruleName(value: string); get ruleNameInput(): string; private _ruleList; get ruleList(): CkafkaAclRuleRuleListStructList; putRuleList(value: CkafkaAclRuleRuleListStruct[] | cdktf.IResolvable): void; get ruleListInput(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }