import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface AsScheduleConfig extends cdktf.TerraformMetaArguments { /** * The desired number of CVM instances that should be running in the group. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/as_schedule#desired_capacity AsSchedule#desired_capacity} */ readonly desiredCapacity: number; /** * This flag disables the normal update of the DesiredCapacityproperty that would otherwise occur when a scheduled scaling task is triggered. * Specifies whether the scheduled task triggers proactive modification of the DesiredCapacity when the value is True. DesiredCapacity may be modified by the minSize and maxSize mechanism. * The following cases assume that DisableUpdateDesiredCapacity is True: * - When scheduled task triggered, the original DesiredCapacity is 5. The scheduled task changes the minSize to 10, the maxSize to 20, and the DesiredCapacity to 15. Since the DesiredCapacity update is disabled, 15 does not take effect. However, the original DesiredCapacity 5 is less than minSize 10, so the final new DesiredCapacity is 10. * - When scheduled task triggered, the original DesiredCapacity is 25. The scheduled task changes the minSize to 10 and the maxSize to 20, and the DesiredCapacity to 15. Since the DesiredCapacity update is disabled, 15 does not take effect. However, the original DesiredCapacity 25 is greater than the maxSize 20, so the final new DesiredCapacity is 20. * - When scheduled task triggered, the original DesiredCapacity is 13. The scheduled task changes the minSize to 10 and the maxSize to 20, and the DesiredCapacity to 15. Since the DesiredCapacity update is disabled, 15 does not take effect, and the DesiredCapacity is still 13. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/as_schedule#disable_update_desired_capacity AsSchedule#disable_update_desired_capacity} */ readonly disableUpdateDesiredCapacity?: boolean | cdktf.IResolvable; /** * The time for this action to end, in "YYYY-MM-DDThh:mm:ss+08:00" format (UTC+8). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/as_schedule#end_time AsSchedule#end_time} */ readonly endTime?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/as_schedule#id AsSchedule#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; /** * The maximum size for the Auto Scaling group. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/as_schedule#max_size AsSchedule#max_size} */ readonly maxSize: number; /** * The minimum size for the Auto Scaling group. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/as_schedule#min_size AsSchedule#min_size} */ readonly minSize: number; /** * The time when recurring future actions will start. Start time is specified by the user following the Unix cron syntax format. And this argument should be set with end_time together. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/as_schedule#recurrence AsSchedule#recurrence} */ readonly recurrence?: string; /** * ID of a scaling group. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/as_schedule#scaling_group_id AsSchedule#scaling_group_id} */ readonly scalingGroupId: string; /** * The name of this scaling action. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/as_schedule#schedule_action_name AsSchedule#schedule_action_name} */ readonly scheduleActionName: string; /** * The time for this action to start, in "YYYY-MM-DDThh:mm:ss+08:00" format (UTC+8). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/as_schedule#start_time AsSchedule#start_time} */ readonly startTime: string; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/as_schedule tencentcloud_as_schedule} */ export declare class AsSchedule extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_as_schedule"; /** * Generates CDKTF code for importing a AsSchedule 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 AsSchedule to import * @param importFromId The id of the existing AsSchedule that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/as_schedule#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the AsSchedule 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/as_schedule tencentcloud_as_schedule} 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 AsScheduleConfig */ constructor(scope: Construct, id: string, config: AsScheduleConfig); private _desiredCapacity?; get desiredCapacity(): number; set desiredCapacity(value: number); get desiredCapacityInput(): number; private _disableUpdateDesiredCapacity?; get disableUpdateDesiredCapacity(): boolean | cdktf.IResolvable; set disableUpdateDesiredCapacity(value: boolean | cdktf.IResolvable); resetDisableUpdateDesiredCapacity(): void; get disableUpdateDesiredCapacityInput(): any; private _endTime?; get endTime(): string; set endTime(value: string); resetEndTime(): void; get endTimeInput(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _maxSize?; get maxSize(): number; set maxSize(value: number); get maxSizeInput(): number; private _minSize?; get minSize(): number; set minSize(value: number); get minSizeInput(): number; private _recurrence?; get recurrence(): string; set recurrence(value: string); resetRecurrence(): void; get recurrenceInput(): string; private _scalingGroupId?; get scalingGroupId(): string; set scalingGroupId(value: string); get scalingGroupIdInput(): string; private _scheduleActionName?; get scheduleActionName(): string; set scheduleActionName(value: string); get scheduleActionNameInput(): string; private _startTime?; get startTime(): string; set startTime(value: string); get startTimeInput(): string; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }