cloudflare
Version:
The official TypeScript library for the Cloudflare API
101 lines • 4.56 kB
TypeScript
import * as Core from 'cloudflare/core';
import { APIResource } from 'cloudflare/resource';
import * as RulesAPI from 'cloudflare/resources/magic-network-monitoring/rules/rules';
import * as AdvertisementsAPI from 'cloudflare/resources/magic-network-monitoring/rules/advertisements';
import { SinglePage } from 'cloudflare/pagination';
export declare class Rules extends APIResource {
advertisements: AdvertisementsAPI.Advertisements;
/**
* Create network monitoring rules for account. Currently only supports creating a
* single rule per API request.
*/
create(params: RuleCreateParams, options?: Core.RequestOptions): Core.APIPromise<MagicNetworkMonitoringRule | null>;
/**
* Update network monitoring rules for account.
*/
update(params: RuleUpdateParams, options?: Core.RequestOptions): Core.APIPromise<MagicNetworkMonitoringRule | null>;
/**
* Lists network monitoring rules for account.
*/
list(params: RuleListParams, options?: Core.RequestOptions): Core.PagePromise<MagicNetworkMonitoringRulesSinglePage, MagicNetworkMonitoringRule | null>;
/**
* Delete a network monitoring rule for account.
*/
delete(ruleId: string, params: RuleDeleteParams, options?: Core.RequestOptions): Core.APIPromise<MagicNetworkMonitoringRule | null>;
/**
* Update a network monitoring rule for account.
*/
edit(ruleId: string, params: RuleEditParams, options?: Core.RequestOptions): Core.APIPromise<MagicNetworkMonitoringRule | null>;
/**
* List a single network monitoring rule for account.
*/
get(ruleId: string, params: RuleGetParams, options?: Core.RequestOptions): Core.APIPromise<MagicNetworkMonitoringRule | null>;
}
export declare class MagicNetworkMonitoringRulesSinglePage extends SinglePage<MagicNetworkMonitoringRule | null> {
}
export interface MagicNetworkMonitoringRule {
/**
* 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.
*/
automatic_advertisement: boolean | null;
/**
* 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"]. The format is
* AhBmCsDmsEusFns where A, B, C, D, E and F durations are optional; however at
* least one unit must be provided.
*/
duration: string;
/**
* 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: string;
prefixes: Array<string>;
id?: string;
/**
* 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_threshold?: number;
/**
* 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.
*/
packet_threshold?: number;
}
export interface RuleCreateParams {
account_id: string;
}
export interface RuleUpdateParams {
account_id: string;
}
export interface RuleListParams {
account_id: string;
}
export interface RuleDeleteParams {
account_id: string;
}
export interface RuleEditParams {
account_id: string;
}
export interface RuleGetParams {
account_id: string;
}
export declare namespace Rules {
export import MagicNetworkMonitoringRule = RulesAPI.MagicNetworkMonitoringRule;
export import MagicNetworkMonitoringRulesSinglePage = RulesAPI.MagicNetworkMonitoringRulesSinglePage;
export import RuleCreateParams = RulesAPI.RuleCreateParams;
export import RuleUpdateParams = RulesAPI.RuleUpdateParams;
export import RuleListParams = RulesAPI.RuleListParams;
export import RuleDeleteParams = RulesAPI.RuleDeleteParams;
export import RuleEditParams = RulesAPI.RuleEditParams;
export import RuleGetParams = RulesAPI.RuleGetParams;
export import Advertisements = AdvertisementsAPI.Advertisements;
export import MagicNetworkMonitoringRuleAdvertisable = AdvertisementsAPI.MagicNetworkMonitoringRuleAdvertisable;
export import AdvertisementEditParams = AdvertisementsAPI.AdvertisementEditParams;
}
//# sourceMappingURL=rules.d.ts.map