import * as pulumi from "@pulumi/pulumi"; /** * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as cloudflare from "@pulumi/cloudflare"; * * const exampleMagicNetworkMonitoringRule = new cloudflare.MagicNetworkMonitoringRule("example_magic_network_monitoring_rule", { * accountId: "6f91088a406011ed95aed352566e8d4c", * duration: "1m", * name: "my_rule_1", * automaticAdvertisement: true, * bandwidth: 1000, * packetThreshold: 10000, * prefixes: ["203.0.113.1/32"], * }); * ``` * * ## Import * * ```sh * $ pulumi import cloudflare:index/magicNetworkMonitoringRule:MagicNetworkMonitoringRule example '/' * ``` */ export declare class MagicNetworkMonitoringRule extends pulumi.CustomResource { /** * Get an existing MagicNetworkMonitoringRule resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: MagicNetworkMonitoringRuleState, opts?: pulumi.CustomResourceOptions): MagicNetworkMonitoringRule; /** * Returns true if the given object is an instance of MagicNetworkMonitoringRule. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is MagicNetworkMonitoringRule; readonly accountId: pulumi.Output; /** * Toggle on if you would like Cloudflare to automatically advertise the IP Prefixes within the rule via Magic Transit when the rule is triggered. Only available for users of Magic Transit. */ readonly automaticAdvertisement: pulumi.Output; /** * The number of bits per second for the rule. When this value is exceeded for the set duration, an alert notification is sent. Minimum of 1 and no maximum. */ readonly bandwidth: pulumi.Output; /** * The number of bits per second for the rule. When this value is exceeded for the set duration, an alert notification is sent. Minimum of 1 and no maximum. */ readonly bandwidthThreshold: pulumi.Output; /** * The amount of time that the rule threshold must be exceeded to send an alert notification. The final value must be equivalent to one of the following 8 values ["1m","5m","10m","15m","20m","30m","45m","60m"]. * Available values: "1m", "5m", "10m", "15m", "20m", "30m", "45m", "60m". */ readonly duration: pulumi.Output; /** * The name of the rule. Must be unique. Supports characters A-Z, a-z, 0-9, underscore (_), dash (-), period (.), and tilde (~). You can’t have a space in the rule name. Max 256 characters. */ readonly name: pulumi.Output; /** * The number of packets per second for the rule. When this value is exceeded for the set duration, an alert notification is sent. Minimum of 1 and no maximum. */ readonly packetThreshold: pulumi.Output; /** * Prefix match type to be applied for a prefix auto advertisement when using an advancedDdos rule. * Available values: "exact", "subnet", "supernet". */ readonly prefixMatch: pulumi.Output; readonly prefixes: pulumi.Output; /** * MNM rule type. * Available values: "threshold", "zscore", "advancedDdos". */ readonly type: pulumi.Output; /** * Level of sensitivity set for zscore rules. * Available values: "low", "medium", "high". */ readonly zscoreSensitivity: pulumi.Output; /** * Target of the zscore rule analysis. * Available values: "bits", "packets". */ readonly zscoreTarget: pulumi.Output; /** * Create a MagicNetworkMonitoringRule resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: MagicNetworkMonitoringRuleArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering MagicNetworkMonitoringRule resources. */ export interface MagicNetworkMonitoringRuleState { accountId?: pulumi.Input; /** * Toggle on if you would like Cloudflare to automatically advertise the IP Prefixes within the rule via Magic Transit when the rule is triggered. Only available for users of Magic Transit. */ automaticAdvertisement?: pulumi.Input; /** * The number of bits per second for the rule. When this value is exceeded for the set duration, an alert notification is sent. Minimum of 1 and no maximum. */ bandwidth?: pulumi.Input; /** * The number of bits per second for the rule. When this value is exceeded for the set duration, an alert notification is sent. Minimum of 1 and no maximum. */ bandwidthThreshold?: pulumi.Input; /** * The amount of time that the rule threshold must be exceeded to send an alert notification. The final value must be equivalent to one of the following 8 values ["1m","5m","10m","15m","20m","30m","45m","60m"]. * Available values: "1m", "5m", "10m", "15m", "20m", "30m", "45m", "60m". */ duration?: pulumi.Input; /** * The name of the rule. Must be unique. Supports characters A-Z, a-z, 0-9, underscore (_), dash (-), period (.), and tilde (~). You can’t have a space in the rule name. Max 256 characters. */ name?: pulumi.Input; /** * The number of packets per second for the rule. When this value is exceeded for the set duration, an alert notification is sent. Minimum of 1 and no maximum. */ packetThreshold?: pulumi.Input; /** * Prefix match type to be applied for a prefix auto advertisement when using an advancedDdos rule. * Available values: "exact", "subnet", "supernet". */ prefixMatch?: pulumi.Input; prefixes?: pulumi.Input[]>; /** * MNM rule type. * Available values: "threshold", "zscore", "advancedDdos". */ type?: pulumi.Input; /** * Level of sensitivity set for zscore rules. * Available values: "low", "medium", "high". */ zscoreSensitivity?: pulumi.Input; /** * Target of the zscore rule analysis. * Available values: "bits", "packets". */ zscoreTarget?: pulumi.Input; } /** * The set of arguments for constructing a MagicNetworkMonitoringRule resource. */ export interface MagicNetworkMonitoringRuleArgs { accountId: pulumi.Input; /** * Toggle on if you would like Cloudflare to automatically advertise the IP Prefixes within the rule via Magic Transit when the rule is triggered. Only available for users of Magic Transit. */ automaticAdvertisement?: pulumi.Input; /** * The number of bits per second for the rule. When this value is exceeded for the set duration, an alert notification is sent. Minimum of 1 and no maximum. */ bandwidth?: pulumi.Input; /** * The amount of time that the rule threshold must be exceeded to send an alert notification. The final value must be equivalent to one of the following 8 values ["1m","5m","10m","15m","20m","30m","45m","60m"]. * Available values: "1m", "5m", "10m", "15m", "20m", "30m", "45m", "60m". */ duration?: pulumi.Input; /** * The name of the rule. Must be unique. Supports characters A-Z, a-z, 0-9, underscore (_), dash (-), period (.), and tilde (~). You can’t have a space in the rule name. Max 256 characters. */ name: pulumi.Input; /** * The number of packets per second for the rule. When this value is exceeded for the set duration, an alert notification is sent. Minimum of 1 and no maximum. */ packetThreshold?: pulumi.Input; prefixes?: pulumi.Input[]>; }