import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface DlcAttachDataMaskPolicyConfig extends cdktf.TerraformMetaArguments { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/dlc_attach_data_mask_policy#id DlcAttachDataMaskPolicy#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; /** * data_mask_strategy_policy_set block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/dlc_attach_data_mask_policy#data_mask_strategy_policy_set DlcAttachDataMaskPolicy#data_mask_strategy_policy_set} */ readonly dataMaskStrategyPolicySet?: DlcAttachDataMaskPolicyDataMaskStrategyPolicySet; } export interface DlcAttachDataMaskPolicyDataMaskStrategyPolicySetPolicyInfo { /** * The name of the data source to be authorized. For administrator-level authorization, only * is allowed (representing all resources at this level). For data source-level and database-level authorization, only COSDataCatalog or * is allowed. For table-level authorization, custom data sources can be specified. Defaults to DataLakeCatalog if not specified. Note: For custom data sources, DLC can only manage a subset of permissions provided by the user during data source integration. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/dlc_attach_data_mask_policy#catalog DlcAttachDataMaskPolicy#catalog} */ readonly catalog: string; /** * The name of the column to be authorized. Use * to represent all columns. For administrator-level authorization, only * is allowed. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/dlc_attach_data_mask_policy#column DlcAttachDataMaskPolicy#column} */ readonly column?: string; /** * The name of the database to be authorized. Use * to represent all databases under the current Catalog. For administrator-level authorization, only * is allowed. For data connection-level authorization, leave it empty. For other types, specify the database name. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/dlc_attach_data_mask_policy#database DlcAttachDataMaskPolicy#database} */ readonly database: string; /** * The name of the table to be authorized. Use * to represent all tables under the current Database. For administrator-level authorization, only * is allowed. For data connection-level and database-level authorization, leave it empty. For other types, specify the table name. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/dlc_attach_data_mask_policy#table DlcAttachDataMaskPolicy#table} */ readonly table: string; } export declare function dlcAttachDataMaskPolicyDataMaskStrategyPolicySetPolicyInfoToTerraform(struct?: DlcAttachDataMaskPolicyDataMaskStrategyPolicySetPolicyInfoOutputReference | DlcAttachDataMaskPolicyDataMaskStrategyPolicySetPolicyInfo): any; export declare function dlcAttachDataMaskPolicyDataMaskStrategyPolicySetPolicyInfoToHclTerraform(struct?: DlcAttachDataMaskPolicyDataMaskStrategyPolicySetPolicyInfoOutputReference | DlcAttachDataMaskPolicyDataMaskStrategyPolicySetPolicyInfo): any; export declare class DlcAttachDataMaskPolicyDataMaskStrategyPolicySetPolicyInfoOutputReference 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(): DlcAttachDataMaskPolicyDataMaskStrategyPolicySetPolicyInfo | undefined; set internalValue(value: DlcAttachDataMaskPolicyDataMaskStrategyPolicySetPolicyInfo | undefined); private _catalog?; get catalog(): string; set catalog(value: string); get catalogInput(): string; private _column?; get column(): string; set column(value: string); resetColumn(): void; get columnInput(): string; private _database?; get database(): string; set database(value: string); get databaseInput(): string; private _table?; get table(): string; set table(value: string); get tableInput(): string; } export interface DlcAttachDataMaskPolicyDataMaskStrategyPolicySet { /** * The type of the bound field. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/dlc_attach_data_mask_policy#column_type DlcAttachDataMaskPolicy#column_type} */ readonly columnType?: string; /** * The ID of the data masking strategy. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/dlc_attach_data_mask_policy#data_mask_strategy_id DlcAttachDataMaskPolicy#data_mask_strategy_id} */ readonly dataMaskStrategyId?: string; /** * policy_info block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/dlc_attach_data_mask_policy#policy_info DlcAttachDataMaskPolicy#policy_info} */ readonly policyInfo?: DlcAttachDataMaskPolicyDataMaskStrategyPolicySetPolicyInfo; } export declare function dlcAttachDataMaskPolicyDataMaskStrategyPolicySetToTerraform(struct?: DlcAttachDataMaskPolicyDataMaskStrategyPolicySetOutputReference | DlcAttachDataMaskPolicyDataMaskStrategyPolicySet): any; export declare function dlcAttachDataMaskPolicyDataMaskStrategyPolicySetToHclTerraform(struct?: DlcAttachDataMaskPolicyDataMaskStrategyPolicySetOutputReference | DlcAttachDataMaskPolicyDataMaskStrategyPolicySet): any; export declare class DlcAttachDataMaskPolicyDataMaskStrategyPolicySetOutputReference 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(): DlcAttachDataMaskPolicyDataMaskStrategyPolicySet | undefined; set internalValue(value: DlcAttachDataMaskPolicyDataMaskStrategyPolicySet | undefined); private _columnType?; get columnType(): string; set columnType(value: string); resetColumnType(): void; get columnTypeInput(): string; private _dataMaskStrategyId?; get dataMaskStrategyId(): string; set dataMaskStrategyId(value: string); resetDataMaskStrategyId(): void; get dataMaskStrategyIdInput(): string; private _policyInfo; get policyInfo(): DlcAttachDataMaskPolicyDataMaskStrategyPolicySetPolicyInfoOutputReference; putPolicyInfo(value: DlcAttachDataMaskPolicyDataMaskStrategyPolicySetPolicyInfo): void; resetPolicyInfo(): void; get policyInfoInput(): DlcAttachDataMaskPolicyDataMaskStrategyPolicySetPolicyInfo; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/dlc_attach_data_mask_policy tencentcloud_dlc_attach_data_mask_policy} */ export declare class DlcAttachDataMaskPolicy extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_dlc_attach_data_mask_policy"; /** * Generates CDKTF code for importing a DlcAttachDataMaskPolicy 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 DlcAttachDataMaskPolicy to import * @param importFromId The id of the existing DlcAttachDataMaskPolicy that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/dlc_attach_data_mask_policy#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the DlcAttachDataMaskPolicy 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/dlc_attach_data_mask_policy tencentcloud_dlc_attach_data_mask_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 DlcAttachDataMaskPolicyConfig = {} */ constructor(scope: Construct, id: string, config?: DlcAttachDataMaskPolicyConfig); private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _dataMaskStrategyPolicySet; get dataMaskStrategyPolicySet(): DlcAttachDataMaskPolicyDataMaskStrategyPolicySetOutputReference; putDataMaskStrategyPolicySet(value: DlcAttachDataMaskPolicyDataMaskStrategyPolicySet): void; resetDataMaskStrategyPolicySet(): void; get dataMaskStrategyPolicySetInput(): DlcAttachDataMaskPolicyDataMaskStrategyPolicySet; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }