import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface MonitorPolicyGroupConfig extends cdktf.TerraformMetaArguments { /** * Policy group name, length should between 1 and 20. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/monitor_policy_group#group_name MonitorPolicyGroup#group_name} */ readonly groupName: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/monitor_policy_group#id MonitorPolicyGroup#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 and or relation of indicator alarm rule. Valid values: `0`, `1`. `0` represents or rule (if any rule is met, the alarm will be raised), `1` represents and rule (if all rules are met, the alarm will be raised).The default is 0. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/monitor_policy_group#is_union_rule MonitorPolicyGroup#is_union_rule} */ readonly isUnionRule?: number; /** * Policy view name, eg:`cvm_device`,`BANDWIDTHPACKAGE`, refer to `data.tencentcloud_monitor_policy_conditions(policy_view_name)`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/monitor_policy_group#policy_view_name MonitorPolicyGroup#policy_view_name} */ readonly policyViewName: string; /** * The project id to which the policy group belongs, default is `0`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/monitor_policy_group#project_id MonitorPolicyGroup#project_id} */ readonly projectId?: number; /** * Policy group's remark information. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/monitor_policy_group#remark MonitorPolicyGroup#remark} */ readonly remark: string; /** * conditions block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/monitor_policy_group#conditions MonitorPolicyGroup#conditions} */ readonly conditions?: MonitorPolicyGroupConditions[] | cdktf.IResolvable; /** * event_conditions block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/monitor_policy_group#event_conditions MonitorPolicyGroup#event_conditions} */ readonly eventConditions?: MonitorPolicyGroupEventConditions[] | cdktf.IResolvable; } export interface MonitorPolicyGroupBindingObjects { } export declare function monitorPolicyGroupBindingObjectsToTerraform(struct?: MonitorPolicyGroupBindingObjects): any; export declare function monitorPolicyGroupBindingObjectsToHclTerraform(struct?: MonitorPolicyGroupBindingObjects): any; export declare class MonitorPolicyGroupBindingObjectsOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @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(): MonitorPolicyGroupBindingObjects | undefined; set internalValue(value: MonitorPolicyGroupBindingObjects | undefined); get dimensionsJson(): any; get isShielded(): any; get region(): any; get uniqueId(): any; } export declare class MonitorPolicyGroupBindingObjectsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; /** * @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): MonitorPolicyGroupBindingObjectsOutputReference; } export interface MonitorPolicyGroupReceivers { } export declare function monitorPolicyGroupReceiversToTerraform(struct?: MonitorPolicyGroupReceivers): any; export declare function monitorPolicyGroupReceiversToHclTerraform(struct?: MonitorPolicyGroupReceivers): any; export declare class MonitorPolicyGroupReceiversOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @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(): MonitorPolicyGroupReceivers | undefined; set internalValue(value: MonitorPolicyGroupReceivers | undefined); get endTime(): any; get needSendNotice(): any; get notifyWay(): any; get personInterval(): any; get receiveLanguage(): any; get receiverGroupList(): any; get receiverType(): any; get receiverUserList(): any; get recoverNotify(): any; get roundInterval(): any; get roundNumber(): any; get sendFor(): any; get startTime(): any; get uidList(): any; } export declare class MonitorPolicyGroupReceiversList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; /** * @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): MonitorPolicyGroupReceiversOutputReference; } export interface MonitorPolicyGroupConditions { /** * Alarm sending cycle per second. <0 does not fire, `0` only fires once, and >0 fires every triggerTime second. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/monitor_policy_group#alarm_notify_period MonitorPolicyGroup#alarm_notify_period} */ readonly alarmNotifyPeriod: number; /** * Alarm sending convergence type. `0` continuous alarm, `1` index alarm. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/monitor_policy_group#alarm_notify_type MonitorPolicyGroup#alarm_notify_type} */ readonly alarmNotifyType: number; /** * Data aggregation cycle (unit of second), if the metric has a default value can not be filled, refer to `data.tencentcloud_monitor_policy_conditions(period_keys)`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/monitor_policy_group#calc_period MonitorPolicyGroup#calc_period} */ readonly calcPeriod?: number; /** * Compare type. Valid value ranges: [1~12]. `1` means more than, `2` means greater than or equal, `3` means less than, `4` means less than or equal to, `5` means equal, `6` means not equal, `7` means days rose, `8` means days fell, `9` means weeks rose, `10` means weeks fell, `11` means period rise, `12` means period fell, refer to `data.tencentcloud_monitor_policy_conditions(calc_type_keys)`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/monitor_policy_group#calc_type MonitorPolicyGroup#calc_type} */ readonly calcType?: number; /** * Threshold value, refer to `data.tencentcloud_monitor_policy_conditions(calc_value_*)`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/monitor_policy_group#calc_value MonitorPolicyGroup#calc_value} */ readonly calcValue?: number; /** * The rule triggers an alert that lasts for several detection cycles, refer to `data.tencentcloud_monitor_policy_conditions(period_num_keys)`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/monitor_policy_group#continue_period MonitorPolicyGroup#continue_period} */ readonly continuePeriod?: number; /** * Id of the metric, refer to `data.tencentcloud_monitor_policy_conditions(metric_id)`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/monitor_policy_group#metric_id MonitorPolicyGroup#metric_id} */ readonly metricId: number; } export declare function monitorPolicyGroupConditionsToTerraform(struct?: MonitorPolicyGroupConditions | cdktf.IResolvable): any; export declare function monitorPolicyGroupConditionsToHclTerraform(struct?: MonitorPolicyGroupConditions | cdktf.IResolvable): any; export declare class MonitorPolicyGroupConditionsOutputReference 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(): MonitorPolicyGroupConditions | cdktf.IResolvable | undefined; set internalValue(value: MonitorPolicyGroupConditions | cdktf.IResolvable | undefined); private _alarmNotifyPeriod?; get alarmNotifyPeriod(): number; set alarmNotifyPeriod(value: number); get alarmNotifyPeriodInput(): number; private _alarmNotifyType?; get alarmNotifyType(): number; set alarmNotifyType(value: number); get alarmNotifyTypeInput(): number; private _calcPeriod?; get calcPeriod(): number; set calcPeriod(value: number); resetCalcPeriod(): void; get calcPeriodInput(): number; private _calcType?; get calcType(): number; set calcType(value: number); resetCalcType(): void; get calcTypeInput(): number; private _calcValue?; get calcValue(): number; set calcValue(value: number); resetCalcValue(): void; get calcValueInput(): number; private _continuePeriod?; get continuePeriod(): number; set continuePeriod(value: number); resetContinuePeriod(): void; get continuePeriodInput(): number; private _metricId?; get metricId(): number; set metricId(value: number); get metricIdInput(): number; } export declare class MonitorPolicyGroupConditionsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: MonitorPolicyGroupConditions[] | 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): MonitorPolicyGroupConditionsOutputReference; } export interface MonitorPolicyGroupEventConditions { /** * Alarm sending cycle per second. <0 does not fire, `0` only fires once, and >0 fires every triggerTime second. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/monitor_policy_group#alarm_notify_period MonitorPolicyGroup#alarm_notify_period} */ readonly alarmNotifyPeriod: number; /** * Alarm sending convergence type. `0` continuous alarm, `1` index alarm. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/monitor_policy_group#alarm_notify_type MonitorPolicyGroup#alarm_notify_type} */ readonly alarmNotifyType: number; /** * The ID of this event metric, refer to `data.tencentcloud_monitor_policy_conditions(event_id). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/monitor_policy_group#event_id MonitorPolicyGroup#event_id} */ readonly eventId: number; } export declare function monitorPolicyGroupEventConditionsToTerraform(struct?: MonitorPolicyGroupEventConditions | cdktf.IResolvable): any; export declare function monitorPolicyGroupEventConditionsToHclTerraform(struct?: MonitorPolicyGroupEventConditions | cdktf.IResolvable): any; export declare class MonitorPolicyGroupEventConditionsOutputReference 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(): MonitorPolicyGroupEventConditions | cdktf.IResolvable | undefined; set internalValue(value: MonitorPolicyGroupEventConditions | cdktf.IResolvable | undefined); private _alarmNotifyPeriod?; get alarmNotifyPeriod(): number; set alarmNotifyPeriod(value: number); get alarmNotifyPeriodInput(): number; private _alarmNotifyType?; get alarmNotifyType(): number; set alarmNotifyType(value: number); get alarmNotifyTypeInput(): number; private _eventId?; get eventId(): number; set eventId(value: number); get eventIdInput(): number; } export declare class MonitorPolicyGroupEventConditionsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: MonitorPolicyGroupEventConditions[] | 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): MonitorPolicyGroupEventConditionsOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/monitor_policy_group tencentcloud_monitor_policy_group} */ export declare class MonitorPolicyGroup extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_monitor_policy_group"; /** * Generates CDKTF code for importing a MonitorPolicyGroup 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 MonitorPolicyGroup to import * @param importFromId The id of the existing MonitorPolicyGroup that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/monitor_policy_group#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the MonitorPolicyGroup 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/monitor_policy_group tencentcloud_monitor_policy_group} 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 MonitorPolicyGroupConfig */ constructor(scope: Construct, id: string, config: MonitorPolicyGroupConfig); private _bindingObjects; get bindingObjects(): MonitorPolicyGroupBindingObjectsList; get dimensionGroup(): any; private _groupName?; get groupName(): string; set groupName(value: string); get groupNameInput(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _isUnionRule?; get isUnionRule(): number; set isUnionRule(value: number); resetIsUnionRule(): void; get isUnionRuleInput(): number; get lastEditUin(): any; private _policyViewName?; get policyViewName(): string; set policyViewName(value: string); get policyViewNameInput(): string; private _projectId?; get projectId(): number; set projectId(value: number); resetProjectId(): void; get projectIdInput(): number; private _receivers; get receivers(): MonitorPolicyGroupReceiversList; private _remark?; get remark(): string; set remark(value: string); get remarkInput(): string; get supportRegions(): any; get updateTime(): any; private _conditions; get conditions(): MonitorPolicyGroupConditionsList; putConditions(value: MonitorPolicyGroupConditions[] | cdktf.IResolvable): void; resetConditions(): void; get conditionsInput(): any; private _eventConditions; get eventConditions(): MonitorPolicyGroupEventConditionsList; putEventConditions(value: MonitorPolicyGroupEventConditions[] | cdktf.IResolvable): void; resetEventConditions(): void; get eventConditionsInput(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }