cloudflare
Version:
The official TypeScript library for the Cloudflare API
200 lines • 6.13 kB
text/typescript
import { APIResource } from "../../../../../core/resource.mjs";
import { APIPromise } from "../../../../../core/api-promise.mjs";
import { RequestOptions } from "../../../../../internal/request-options.mjs";
export declare class BaseItems extends APIResource {
static readonly _key: readonly [
'DDoSProtection',
'advancedTCPProtection',
'tcpFlowProtection',
'rules',
'items'
];
/**
* Delete a TCP Flow Protection rule specified by the given UUID.
*
* @example
* ```ts
* const item =
* await client.DDoSProtection.advancedTCPProtection.tcpFlowProtection.rules.items.delete(
* 'f174e90a-fafe-4643-bbbc-4a0ed4fc8415',
* { account_id: '023e105f4ecef8ad9ca31a8372d0c353' },
* );
* ```
*/
delete(ruleID: string, params: ItemDeleteParams, options?: RequestOptions): APIPromise<ItemDeleteResponse>;
/**
* Update a TCP Flow Protection rule specified by the given UUID.
*
* @example
* ```ts
* const response =
* await client.DDoSProtection.advancedTCPProtection.tcpFlowProtection.rules.items.edit(
* 'f174e90a-fafe-4643-bbbc-4a0ed4fc8415',
* { account_id: '023e105f4ecef8ad9ca31a8372d0c353' },
* );
* ```
*/
edit(ruleID: string, params: ItemEditParams, options?: RequestOptions): APIPromise<ItemEditResponse>;
/**
* Get a TCP Flow Protection rule specified by the given UUID.
*
* @example
* ```ts
* const item =
* await client.DDoSProtection.advancedTCPProtection.tcpFlowProtection.rules.items.get(
* 'f174e90a-fafe-4643-bbbc-4a0ed4fc8415',
* { account_id: '023e105f4ecef8ad9ca31a8372d0c353' },
* );
* ```
*/
get(ruleID: string, params: ItemGetParams, options?: RequestOptions): APIPromise<ItemGetResponse>;
}
export declare class Items extends BaseItems {
}
export interface ItemDeleteResponse {
errors: Array<ItemDeleteResponse.Error>;
messages: Array<ItemDeleteResponse.Message>;
/**
* Whether the API call was successful.
*/
success: true;
}
export declare namespace ItemDeleteResponse {
interface Error {
code: number;
message: string;
documentation_url?: string;
source?: Error.Source;
}
namespace Error {
interface Source {
pointer?: string;
}
}
interface Message {
code: number;
message: string;
documentation_url?: string;
source?: Message.Source;
}
namespace Message {
interface Source {
pointer?: string;
}
}
}
export interface ItemEditResponse {
/**
* The unique ID of the TCP Flow Protection rule.
*/
id: string;
/**
* The burst sensitivity. Must be one of 'low', 'medium', 'high'.
*/
burst_sensitivity: string;
/**
* The creation timestamp of the TCP Flow Protection rule.
*/
created_on: string;
/**
* The mode for TCP Flow Protection. Must be one of 'enabled', 'disabled',
* 'monitoring'.
*/
mode: string;
/**
* The last modification timestamp of the TCP Flow Protection rule.
*/
modified_on: string;
/**
* The name of the TCP Flow Protection rule. Value is relative to the 'scope'
* setting. For 'global' scope, name should be 'global'. For either the 'region' or
* 'datacenter' scope, name should be the actual name of the region or datacenter,
* e.g., 'wnam' or 'lax'.
*/
name: string;
/**
* The rate sensitivity. Must be one of 'low', 'medium', 'high'.
*/
rate_sensitivity: string;
/**
* The scope for the TCP Flow Protection rule. Must be one of 'global', 'region',
* or 'datacenter'.
*/
scope: string;
}
export interface ItemGetResponse {
/**
* The unique ID of the TCP Flow Protection rule.
*/
id: string;
/**
* The burst sensitivity. Must be one of 'low', 'medium', 'high'.
*/
burst_sensitivity: string;
/**
* The creation timestamp of the TCP Flow Protection rule.
*/
created_on: string;
/**
* The mode for TCP Flow Protection. Must be one of 'enabled', 'disabled',
* 'monitoring'.
*/
mode: string;
/**
* The last modification timestamp of the TCP Flow Protection rule.
*/
modified_on: string;
/**
* The name of the TCP Flow Protection rule. Value is relative to the 'scope'
* setting. For 'global' scope, name should be 'global'. For either the 'region' or
* 'datacenter' scope, name should be the actual name of the region or datacenter,
* e.g., 'wnam' or 'lax'.
*/
name: string;
/**
* The rate sensitivity. Must be one of 'low', 'medium', 'high'.
*/
rate_sensitivity: string;
/**
* The scope for the TCP Flow Protection rule. Must be one of 'global', 'region',
* or 'datacenter'.
*/
scope: string;
}
export interface ItemDeleteParams {
/**
* The ID of the account.
*/
account_id: string;
}
export interface ItemEditParams {
/**
* Path param: The ID of the account.
*/
account_id: string;
/**
* Body param: The new burst sensitivity. Optional. Must be one of 'low', 'medium',
* 'high'.
*/
burst_sensitivity?: string;
/**
* Body param: The new mode for TCP Flow Protection. Optional. Must be one of
* 'enabled', 'disabled', 'monitoring'.
*/
mode?: string;
/**
* Body param: The new rate sensitivity. Optional. Must be one of 'low', 'medium',
* 'high'.
*/
rate_sensitivity?: string;
}
export interface ItemGetParams {
/**
* The ID of the account.
*/
account_id: string;
}
export declare namespace Items {
export { type ItemDeleteResponse as ItemDeleteResponse, type ItemEditResponse as ItemEditResponse, type ItemGetResponse as ItemGetResponse, type ItemDeleteParams as ItemDeleteParams, type ItemEditParams as ItemEditParams, type ItemGetParams as ItemGetParams, };
}
//# sourceMappingURL=items.d.mts.map