import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface WedataProjectConfig extends cdktf.TerraformMetaArguments { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/wedata_project#id WedataProject#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; /** * List of bound resource group IDs. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/wedata_project#resource_ids WedataProject#resource_ids} */ readonly resourceIds?: string[]; /** * Item status: 0: disabled, 1: enabled. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/wedata_project#status WedataProject#status} */ readonly status?: number; /** * dlc_info block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/wedata_project#dlc_info WedataProject#dlc_info} */ readonly dlcInfo?: WedataProjectDlcInfo; /** * project block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/wedata_project#project WedataProject#project} */ readonly project: WedataProjectProject; } export interface WedataProjectDlcInfo { /** * Access account (only effective for standard mode projects and required for standard mode), used to submit DLC tasks. * It is recommended to use a specified sub-account and set corresponding database table permissions for the sub-account; task runner mode may cause task failure when the responsible person leaves; main account mode is not easy for permission control when multiple projects have different permissions. * * Enum values: * - TASK_RUNNER (Task Runner) * - OWNER (Main Account Mode) * - SUB (Sub Account Mode). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/wedata_project#access_account WedataProject#access_account} */ readonly accessAccount?: string; /** * DLC resource name (need to add role Uin to DLC, otherwise may not be able to obtain resources). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/wedata_project#compute_resources WedataProject#compute_resources} */ readonly computeResources: string[]; /** * Specify the default database for DLC cluster. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/wedata_project#default_database WedataProject#default_database} */ readonly defaultDatabase: string; /** * DLC region. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/wedata_project#region WedataProject#region} */ readonly region: string; /** * Cluster configuration tag (only effective for standard mode projects and required for standard mode). Enum values: * - Prod (Production environment) * - Dev (Development environment). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/wedata_project#standard_mode_env_tag WedataProject#standard_mode_env_tag} */ readonly standardModeEnvTag?: string; /** * Sub-account ID (only effective for standard mode projects), when AccessAccount is in sub-account mode, the sub-account ID information needs to be specified, other modes do not need to be specified. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/wedata_project#sub_account_uin WedataProject#sub_account_uin} */ readonly subAccountUin?: string; } export declare function wedataProjectDlcInfoToTerraform(struct?: WedataProjectDlcInfoOutputReference | WedataProjectDlcInfo): any; export declare function wedataProjectDlcInfoToHclTerraform(struct?: WedataProjectDlcInfoOutputReference | WedataProjectDlcInfo): any; export declare class WedataProjectDlcInfoOutputReference 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(): WedataProjectDlcInfo | undefined; set internalValue(value: WedataProjectDlcInfo | undefined); private _accessAccount?; get accessAccount(): string; set accessAccount(value: string); resetAccessAccount(): void; get accessAccountInput(): string; private _computeResources?; get computeResources(): string[]; set computeResources(value: string[]); get computeResourcesInput(): string[]; private _defaultDatabase?; get defaultDatabase(): string; set defaultDatabase(value: string); get defaultDatabaseInput(): string; private _region?; get region(): string; set region(value: string); get regionInput(): string; private _standardModeEnvTag?; get standardModeEnvTag(): string; set standardModeEnvTag(value: string); resetStandardModeEnvTag(): void; get standardModeEnvTagInput(): string; private _subAccountUin?; get subAccountUin(): string; set subAccountUin(value: string); resetSubAccountUin(): void; get subAccountUinInput(): string; } export interface WedataProjectProject { /** * Project display name, can be Chinese name starting with a letter, can contain letters, numbers, and underscores, cannot exceed 32 characters. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/wedata_project#display_name WedataProject#display_name} */ readonly displayName: string; /** * Project mode, SIMPLE (default): Simple mode STANDARD: Standard mode. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/wedata_project#project_model WedataProject#project_model} */ readonly projectModel?: string; /** * Project identifier, English name starting with a letter, can contain letters, numbers, and underscores, cannot exceed 32 characters. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/wedata_project#project_name WedataProject#project_name} */ readonly projectName: string; } export declare function wedataProjectProjectToTerraform(struct?: WedataProjectProjectOutputReference | WedataProjectProject): any; export declare function wedataProjectProjectToHclTerraform(struct?: WedataProjectProjectOutputReference | WedataProjectProject): any; export declare class WedataProjectProjectOutputReference 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(): WedataProjectProject | undefined; set internalValue(value: WedataProjectProject | undefined); private _displayName?; get displayName(): string; set displayName(value: string); get displayNameInput(): string; private _projectModel?; get projectModel(): string; set projectModel(value: string); resetProjectModel(): void; get projectModelInput(): string; private _projectName?; get projectName(): string; set projectName(value: string); get projectNameInput(): string; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/wedata_project tencentcloud_wedata_project} */ export declare class WedataProject extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_wedata_project"; /** * Generates CDKTF code for importing a WedataProject 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 WedataProject to import * @param importFromId The id of the existing WedataProject that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/wedata_project#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the WedataProject 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/wedata_project tencentcloud_wedata_project} 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 WedataProjectConfig */ constructor(scope: Construct, id: string, config: WedataProjectConfig); private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; get projectId(): any; private _resourceIds?; get resourceIds(): string[]; set resourceIds(value: string[]); resetResourceIds(): void; get resourceIdsInput(): string[]; private _status?; get status(): number; set status(value: number); resetStatus(): void; get statusInput(): number; private _dlcInfo; get dlcInfo(): WedataProjectDlcInfoOutputReference; putDlcInfo(value: WedataProjectDlcInfo): void; resetDlcInfo(): void; get dlcInfoInput(): WedataProjectDlcInfo; private _project; get project(): WedataProjectProjectOutputReference; putProject(value: WedataProjectProject): void; get projectInput(): WedataProjectProject; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }