import * as $dara from '@darabonba/typescript'; export declare class ListNotificationPoliciesResponseBodyPageBeanNotificationPoliciesGroupRule extends $dara.Model { /** * @remarks * The time interval of grouping. Unit: seconds. Default value: 30. * * @example * 30 */ groupInterval?: number; /** * @remarks * The waiting time for grouping. Unit: seconds. Default value: 5. * * @example * 5 */ groupWait?: number; /** * @remarks * An array of alert event group objects. * * * If you do not specify the groupingFields field, all alerts will be sent to contacts based on `alertname`. * * If you specify the groupingFields field, alerts with the same field will be sent to contacts in one notification. */ groupingFields?: string[]; static names(): { [key: string]: string; }; static types(): { [key: string]: any; }; validate(): void; constructor(map?: { [key: string]: any; }); } export declare class ListNotificationPoliciesResponseBodyPageBeanNotificationPoliciesMatchingRulesMatchingConditions extends $dara.Model { /** * @remarks * The key of the matching condition. * * @example * altertname */ key?: string; /** * @remarks * The logical operator of the matching condition. Valid values: * * * `eq`: equal to * * `neq`: not equal to * * `in`: contains * * `nin`: does not contain * * `re`: regular expression match * * `nre`: regular expression mismatch * * @example * eq */ operator?: string; /** * @remarks * The value of the matching condition. * * @example * test */ value?: string; static names(): { [key: string]: string; }; static types(): { [key: string]: any; }; validate(): void; constructor(map?: { [key: string]: any; }); } export declare class ListNotificationPoliciesResponseBodyPageBeanNotificationPoliciesMatchingRules extends $dara.Model { /** * @remarks * The matching conditions. */ matchingConditions?: ListNotificationPoliciesResponseBodyPageBeanNotificationPoliciesMatchingRulesMatchingConditions[]; static names(): { [key: string]: string; }; static types(): { [key: string]: any; }; validate(): void; constructor(map?: { [key: string]: any; }); } export declare class ListNotificationPoliciesResponseBodyPageBeanNotificationPoliciesNotifyRuleNotifyObjects extends $dara.Model { /** * @remarks * The notification methods specified for a contact. */ notifyChannels?: string[]; /** * @remarks * The ID of the notification object. * * @example * 123 */ notifyObjectId?: number; /** * @remarks * The name of the notification object. * * @example * test */ notifyObjectName?: string; /** * @remarks * The type of the notification object. Valid values: * * - CONTACT: an individual contact * - CONTACT_GROUP: a contact group * - DING_ROBOT: an instant messaging (IM) chatbot * - CONTACT_SCHEDULE: a person on duty based on an established schedule * * @example * CONTACT */ notifyObjectType?: string; static names(): { [key: string]: string; }; static types(): { [key: string]: any; }; validate(): void; constructor(map?: { [key: string]: any; }); } export declare class ListNotificationPoliciesResponseBodyPageBeanNotificationPoliciesNotifyRule extends $dara.Model { /** * @remarks * The notification method. */ notifyChannels?: string[]; /** * @remarks * The end time of the notification window. * * @example * 23:59 */ notifyEndTime?: string; /** * @remarks * The notification objects. */ notifyObjects?: ListNotificationPoliciesResponseBodyPageBeanNotificationPoliciesNotifyRuleNotifyObjects[]; /** * @remarks * The start time of the notification window. * * @example * 00:00 */ notifyStartTime?: string; static names(): { [key: string]: string; }; static types(): { [key: string]: any; }; validate(): void; constructor(map?: { [key: string]: any; }); } export declare class ListNotificationPoliciesResponseBodyPageBeanNotificationPoliciesNotifyTemplate extends $dara.Model { /** * @remarks * The content of the alert notification sent by email. * * @example * Alert name: {{ .commonLabels.alertname }}{{if .commonLabels.clustername }} Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} Application name: {{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} Notification policy: {{ .dispatchRuleName }} Alert time: {{ .startTime }} Alert content: {{ for .alerts }} {{.annotations.message}} {{if .generatorURL }} \\Link\\ {{end}} {{end}} */ emailContent?: string; /** * @remarks * The content of the alert resolution notification sent by email. * * @example * Alert name: {{ .commonLabels.alertname }}{{if .commonLabels.clustername }} Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} Application name: {{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} Notification policy: {{ .dispatchRuleName }} Alert resolution time: {{ .endTime }} Alert content: {{ for .alerts }} {{.annotations.message}} {{if .generatorURL }} \\Link\\ {{end}} {{end}} */ emailRecoverContent?: string; /** * @remarks * The title of the alert resolution notification sent by email. * * @example * {{ .commonLabels.alertname }} */ emailRecoverTitle?: string; /** * @remarks * The title of the alert notification sent by email. * * @example * {{ .commonLabels.alertname }} */ emailTitle?: string; /** * @remarks * The content of the alert notification sent by an IM chatbot. * * @example * {{if .commonLabels.clustername }} > Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} > Application name: {{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }}{{ for .alerts }}> {{.annotations.message}} {{if .generatorURL }} [Link]\\({{.generatorURL}}) {{ end }} {{if eq "true" .labels._aliyun_arms_is_denoise_filtered }} (Suspected noise) {{end}} {{end}} */ robotContent?: string; /** * @remarks * The content of the alert notification sent by text message. * * @example * \\Notification on the occurrence of a {{ .level }} alert. Alert name: {{ .commonLabels.alertname }}{{if .commonLabels.clustername }} Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} Application name: {{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} Notification policy: {{ .dispatchRuleName }} Alert time: {{ .startTime }} Alert content: {{ for .alerts }} {{.annotations.message}} {{ end }}\\ */ smsContent?: string; /** * @remarks * The content of the alert resolution notification sent by text message. * * @example * \\Alert resolution notification. Alert name: {{ .commonLabels.alertname }}{{if .commonLabels.clustername }} Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} Application name: {{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} Notification policy: {{ .dispatchRuleName }} Alert resolution time: {{ .endTime }} Alert content: {{ for .alerts }} {{.annotations.message}} {{ end }}\\ */ smsRecoverContent?: string; /** * @remarks * The content of the alert notification sent by phone. * * @example * \\Alert name: {{ .commonLabels.alertname }}{{if .commonLabels.clustername }} Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} Application name: {{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} Notification policy: {{ .dispatchRuleName }} Alert time: {{ .startTime }} Alert content: {{ for .alerts }} {{.annotations.message}} {{ end }}\\ */ ttsContent?: string; /** * @remarks * The content of the alert resolution notification sent by phone. * * @example * \\Alert name: {{ .commonLabels.alertname }}{{if .commonLabels.clustername }} Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} Application name: {{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} Notification policy: {{ .dispatchRuleName }} Alert resolution time: {{ .endTime }} Alert content: {{ for .alerts }} {{.annotations.message}} {{ end }}\\ */ ttsRecoverContent?: string; static names(): { [key: string]: string; }; static types(): { [key: string]: any; }; validate(): void; constructor(map?: { [key: string]: any; }); } export declare class ListNotificationPoliciesResponseBodyPageBeanNotificationPolicies extends $dara.Model { /** * @remarks * Indicates whether simple mode is enabled. * * @example * true */ directedMode?: boolean; /** * @remarks * The ID of the escalation policy. * * @example * 123 */ escalationPolicyId?: number; /** * @remarks * The grouping rule for alert events. */ groupRule?: ListNotificationPoliciesResponseBodyPageBeanNotificationPoliciesGroupRule; /** * @remarks * The ID of the notification policy. * * @example * 1234 */ id?: number; /** * @remarks * The integration ID of the ticket system to which alerts are pushed. * * @example * 34 */ integrationId?: number; /** * @remarks * The matching rules for alert events. */ matchingRules?: ListNotificationPoliciesResponseBodyPageBeanNotificationPoliciesMatchingRules[]; /** * @remarks * The name of the notification policy. * * @example * notificationpolicy_test */ name?: string; /** * @remarks * The notification rule. */ notifyRule?: ListNotificationPoliciesResponseBodyPageBeanNotificationPoliciesNotifyRule; /** * @remarks * The notification template. */ notifyTemplate?: ListNotificationPoliciesResponseBodyPageBeanNotificationPoliciesNotifyTemplate; /** * @remarks * Indicates whether the system resends notifications for a long-lasting unresolved alert. Valid values: * * - `true` (default): The system resends notifications for a long-lasting unresolved alert at a specified time interval. * - `false`: The system resends notifications for a long-lasting unresolved alert based on an escalation policy. * * @example * true */ repeat?: boolean; /** * @remarks * The time interval at which a notification is resent for a long-lasting unresolved alert. Unit: seconds. * * @example * 600 */ repeatInterval?: number; /** * @remarks * Indicates whether the status of an alert automatically changes to Resolved when all events related to the alert change to the Restored state. The system sends a notification to the alert contacts when the alert status changes to Resolved. * * - `true` (default): The system sends a notification. * - `false`: The system does not send a notification. * * @example * true */ sendRecoverMessage?: boolean; /** * @remarks * Indicates whether the notification policy is enabled. Valid values: enable and disable. * * @example * enable */ state?: string; static names(): { [key: string]: string; }; static types(): { [key: string]: any; }; validate(): void; constructor(map?: { [key: string]: any; }); } export declare class ListNotificationPoliciesResponseBodyPageBean extends $dara.Model { /** * @remarks * The queried notification policies. */ notificationPolicies?: ListNotificationPoliciesResponseBodyPageBeanNotificationPolicies[]; /** * @remarks * The number of the page returned. * * @example * 1 */ page?: number; /** * @remarks * The number of entries that are returned on each page. * * @example * 20 */ size?: number; /** * @remarks * The number of notification policies that are returned. * * @example * 24 */ total?: number; static names(): { [key: string]: string; }; static types(): { [key: string]: any; }; validate(): void; constructor(map?: { [key: string]: any; }); } export declare class ListNotificationPoliciesResponseBody extends $dara.Model { /** * @remarks * The returned pages. */ pageBean?: ListNotificationPoliciesResponseBodyPageBean; /** * @remarks * The ID of the request. * * @example * 78901766-3806-4E96-8E47-CFEF59E4**** */ requestId?: string; static names(): { [key: string]: string; }; static types(): { [key: string]: any; }; validate(): void; constructor(map?: { [key: string]: any; }); }