import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface SqlserverMigrationConfig extends cdktf.TerraformMetaArguments { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/sqlserver_migration#id SqlserverMigration#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; /** * Name of the migration task. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/sqlserver_migration#migrate_name SqlserverMigration#migrate_name} */ readonly migrateName: string; /** * Migration type (1 structure migration 2 data migration 3 incremental synchronization). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/sqlserver_migration#migrate_type SqlserverMigration#migrate_type} */ readonly migrateType: number; /** * Type of migration source 1 TencentDB for SQLServer 2 Cloud server self-built SQLServer database 4 SQLServer backup and restore 5 SQLServer backup and restore (COS mode). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/sqlserver_migration#source_type SqlserverMigration#source_type} */ readonly sourceType: number; /** * migrate_db_set block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/sqlserver_migration#migrate_db_set SqlserverMigration#migrate_db_set} */ readonly migrateDbSet?: SqlserverMigrationMigrateDbSet[] | cdktf.IResolvable; /** * rename_restore block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/sqlserver_migration#rename_restore SqlserverMigration#rename_restore} */ readonly renameRestore?: SqlserverMigrationRenameRestore[] | cdktf.IResolvable; /** * source block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/sqlserver_migration#source SqlserverMigration#source} */ readonly source: SqlserverMigrationSource; /** * target block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/sqlserver_migration#target SqlserverMigration#target} */ readonly target: SqlserverMigrationTarget; } export interface SqlserverMigrationMigrateDbSet { /** * Name of the migration database. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/sqlserver_migration#db_name SqlserverMigration#db_name} */ readonly dbName?: string; } export declare function sqlserverMigrationMigrateDbSetToTerraform(struct?: SqlserverMigrationMigrateDbSet | cdktf.IResolvable): any; export declare function sqlserverMigrationMigrateDbSetToHclTerraform(struct?: SqlserverMigrationMigrateDbSet | cdktf.IResolvable): any; export declare class SqlserverMigrationMigrateDbSetOutputReference 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(): SqlserverMigrationMigrateDbSet | cdktf.IResolvable | undefined; set internalValue(value: SqlserverMigrationMigrateDbSet | cdktf.IResolvable | undefined); private _dbName?; get dbName(): string; set dbName(value: string); resetDbName(): void; get dbNameInput(): string; } export declare class SqlserverMigrationMigrateDbSetList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: SqlserverMigrationMigrateDbSet[] | 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): SqlserverMigrationMigrateDbSetOutputReference; } export interface SqlserverMigrationRenameRestore { /** * When the new name of the library is used for offline migration, if it is not filled in, it will be named according to OldName. OldName and NewName cannot be filled in at the same time. OldName and NewName must be filled in and cannot be duplicate when used for cloning database. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/sqlserver_migration#new_name SqlserverMigration#new_name} */ readonly newName?: string; /** * The name of the library. If oldName does not exist, a failure is returned.It can be left blank when used for offline migration tasks. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/sqlserver_migration#old_name SqlserverMigration#old_name} */ readonly oldName?: string; } export declare function sqlserverMigrationRenameRestoreToTerraform(struct?: SqlserverMigrationRenameRestore | cdktf.IResolvable): any; export declare function sqlserverMigrationRenameRestoreToHclTerraform(struct?: SqlserverMigrationRenameRestore | cdktf.IResolvable): any; export declare class SqlserverMigrationRenameRestoreOutputReference 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(): SqlserverMigrationRenameRestore | cdktf.IResolvable | undefined; set internalValue(value: SqlserverMigrationRenameRestore | cdktf.IResolvable | undefined); private _newName?; get newName(): string; set newName(value: string); resetNewName(): void; get newNameInput(): string; private _oldName?; get oldName(): string; set oldName(value: string); resetOldName(): void; get oldNameInput(): string; } export declare class SqlserverMigrationRenameRestoreList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: SqlserverMigrationRenameRestore[] | 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): SqlserverMigrationRenameRestoreOutputReference; } export interface SqlserverMigrationSource { /** * ID of the migration source Cvm, used when MigrateType=2 (cloud server self-built SQL Server database). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/sqlserver_migration#cvm_id SqlserverMigration#cvm_id} */ readonly cvmId?: string; /** * The ID of the migration source instance, which is used when MigrateType=1 (TencentDB for SQLServers). The format is mssql-si2823jyl. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/sqlserver_migration#instance_id SqlserverMigration#instance_id} */ readonly instanceId?: string; /** * Migrate the intranet IP of the self-built database of the source Cvm, and use it when MigrateType=2 (self-built SQL Server database of the cloud server). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/sqlserver_migration#ip SqlserverMigration#ip} */ readonly ip?: string; /** * Password, MigrateType=1 or MigrateType=2. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/sqlserver_migration#password SqlserverMigration#password} */ readonly password?: string; /** * The port number of the self-built database of the migration source Cvm, which is used when MigrateType=2 (self-built SQL Server database of the cloud server). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/sqlserver_migration#port SqlserverMigration#port} */ readonly port?: number; /** * The subnet ID under the Vpc of the source Cvm is used when MigrateType=2 (ECS self-built SQL Server database). The format is as follows subnet-h9extioi. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/sqlserver_migration#subnet_id SqlserverMigration#subnet_id} */ readonly subnetId?: string; /** * The source backup address for offline migration. MigrateType=4 or MigrateType=5. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/sqlserver_migration#url SqlserverMigration#url} */ readonly url?: string[]; /** * The source backup password for offline migration, MigrateType=4 or MigrateType=5. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/sqlserver_migration#url_password SqlserverMigration#url_password} */ readonly urlPassword?: string; /** * User name, MigrateType=1 or MigrateType=2. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/sqlserver_migration#user_name SqlserverMigration#user_name} */ readonly userName?: string; /** * The Vpc network ID of the migration source Cvm is used when MigrateType=2 (cloud server self-built SQL Server database). The format is as follows vpc-6ys9ont9. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/sqlserver_migration#vpc_id SqlserverMigration#vpc_id} */ readonly vpcId?: string; } export declare function sqlserverMigrationSourceToTerraform(struct?: SqlserverMigrationSourceOutputReference | SqlserverMigrationSource): any; export declare function sqlserverMigrationSourceToHclTerraform(struct?: SqlserverMigrationSourceOutputReference | SqlserverMigrationSource): any; export declare class SqlserverMigrationSourceOutputReference 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(): SqlserverMigrationSource | undefined; set internalValue(value: SqlserverMigrationSource | undefined); private _cvmId?; get cvmId(): string; set cvmId(value: string); resetCvmId(): void; get cvmIdInput(): string; private _instanceId?; get instanceId(): string; set instanceId(value: string); resetInstanceId(): void; get instanceIdInput(): string; private _ip?; get ip(): string; set ip(value: string); resetIp(): void; get ipInput(): string; private _password?; get password(): string; set password(value: string); resetPassword(): void; get passwordInput(): string; private _port?; get port(): number; set port(value: number); resetPort(): void; get portInput(): number; private _subnetId?; get subnetId(): string; set subnetId(value: string); resetSubnetId(): void; get subnetIdInput(): string; private _url?; get url(): string[]; set url(value: string[]); resetUrl(): void; get urlInput(): string[]; private _urlPassword?; get urlPassword(): string; set urlPassword(value: string); resetUrlPassword(): void; get urlPasswordInput(): string; private _userName?; get userName(): string; set userName(value: string); resetUserName(): void; get userNameInput(): string; private _vpcId?; get vpcId(): string; set vpcId(value: string); resetVpcId(): void; get vpcIdInput(): string; } export interface SqlserverMigrationTarget { /** * The ID of the migration target instance, in the format mssql-si2823jyl. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/sqlserver_migration#instance_id SqlserverMigration#instance_id} */ readonly instanceId?: string; /** * Password of the migration target instance. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/sqlserver_migration#password SqlserverMigration#password} */ readonly password?: string; /** * User name of the migration target instance. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/sqlserver_migration#user_name SqlserverMigration#user_name} */ readonly userName?: string; } export declare function sqlserverMigrationTargetToTerraform(struct?: SqlserverMigrationTargetOutputReference | SqlserverMigrationTarget): any; export declare function sqlserverMigrationTargetToHclTerraform(struct?: SqlserverMigrationTargetOutputReference | SqlserverMigrationTarget): any; export declare class SqlserverMigrationTargetOutputReference 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(): SqlserverMigrationTarget | undefined; set internalValue(value: SqlserverMigrationTarget | undefined); private _instanceId?; get instanceId(): string; set instanceId(value: string); resetInstanceId(): void; get instanceIdInput(): string; private _password?; get password(): string; set password(value: string); resetPassword(): void; get passwordInput(): string; private _userName?; get userName(): string; set userName(value: string); resetUserName(): void; get userNameInput(): string; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/sqlserver_migration tencentcloud_sqlserver_migration} */ export declare class SqlserverMigration extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_sqlserver_migration"; /** * Generates CDKTF code for importing a SqlserverMigration 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 SqlserverMigration to import * @param importFromId The id of the existing SqlserverMigration that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/sqlserver_migration#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the SqlserverMigration 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/sqlserver_migration tencentcloud_sqlserver_migration} 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 SqlserverMigrationConfig */ constructor(scope: Construct, id: string, config: SqlserverMigrationConfig); private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _migrateName?; get migrateName(): string; set migrateName(value: string); get migrateNameInput(): string; private _migrateType?; get migrateType(): number; set migrateType(value: number); get migrateTypeInput(): number; private _sourceType?; get sourceType(): number; set sourceType(value: number); get sourceTypeInput(): number; private _migrateDbSet; get migrateDbSet(): SqlserverMigrationMigrateDbSetList; putMigrateDbSet(value: SqlserverMigrationMigrateDbSet[] | cdktf.IResolvable): void; resetMigrateDbSet(): void; get migrateDbSetInput(): any; private _renameRestore; get renameRestore(): SqlserverMigrationRenameRestoreList; putRenameRestore(value: SqlserverMigrationRenameRestore[] | cdktf.IResolvable): void; resetRenameRestore(): void; get renameRestoreInput(): any; private _source; get source(): SqlserverMigrationSourceOutputReference; putSource(value: SqlserverMigrationSource): void; get sourceInput(): SqlserverMigrationSource; private _target; get target(): SqlserverMigrationTargetOutputReference; putTarget(value: SqlserverMigrationTarget): void; get targetInput(): SqlserverMigrationTarget; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }