UNPKG

cloudflare

Version:

The official TypeScript library for the Cloudflare API

108 lines 4.47 kB
import * as Core from 'cloudflare/core'; import { APIResource } from 'cloudflare/resource'; import * as UARulesAPI from 'cloudflare/resources/firewall/ua-rules'; import { V4PagePaginationArray, type V4PagePaginationArrayParams } from 'cloudflare/pagination'; export declare class UARules extends APIResource { /** * Creates a new User Agent Blocking rule in a zone. */ create(zoneIdentifier: string, body: UARuleCreateParams, options?: Core.RequestOptions): Core.APIPromise<UARuleCreateResponse>; /** * Updates an existing User Agent Blocking rule. */ update(zoneIdentifier: string, id: string, body: UARuleUpdateParams, options?: Core.RequestOptions): Core.APIPromise<UARuleUpdateResponse>; /** * Fetches User Agent Blocking rules in a zone. You can filter the results using * several optional parameters. */ list(zoneIdentifier: string, query?: UARuleListParams, options?: Core.RequestOptions): Core.PagePromise<UARuleListResponsesV4PagePaginationArray, UARuleListResponse>; list(zoneIdentifier: string, options?: Core.RequestOptions): Core.PagePromise<UARuleListResponsesV4PagePaginationArray, UARuleListResponse>; /** * Deletes an existing User Agent Blocking rule. */ delete(zoneIdentifier: string, id: string, body: UARuleDeleteParams, options?: Core.RequestOptions): Core.APIPromise<UARuleDeleteResponse>; /** * Fetches the details of a User Agent Blocking rule. */ get(zoneIdentifier: string, id: string, options?: Core.RequestOptions): Core.APIPromise<UARuleGetResponse>; } export declare class UARuleListResponsesV4PagePaginationArray extends V4PagePaginationArray<UARuleListResponse> { } export type UARuleCreateResponse = unknown | string | null; export type UARuleUpdateResponse = unknown | string | null; export interface UARuleListResponse { /** * The unique identifier of the User Agent Blocking rule. */ id?: string; /** * The configuration object for the current rule. */ configuration?: UARuleListResponse.Configuration; /** * An informative summary of the rule. */ description?: string; /** * The action to apply to a matched request. */ mode?: 'block' | 'challenge' | 'js_challenge' | 'managed_challenge'; /** * When true, indicates that the rule is currently paused. */ paused?: boolean; } export declare namespace UARuleListResponse { /** * The configuration object for the current rule. */ interface Configuration { /** * The configuration target for this rule. You must set the target to `ua` for User * Agent Blocking rules. */ target?: string; /** * The exact user agent string to match. This value will be compared to the * received `User-Agent` HTTP header value. */ value?: string; } } export interface UARuleDeleteResponse { /** * The unique identifier of the User Agent Blocking rule. */ id?: string; } export type UARuleGetResponse = unknown | string | null; export type UARuleCreateParams = unknown; export type UARuleUpdateParams = unknown; export interface UARuleListParams extends V4PagePaginationArrayParams { /** * A string to search for in the description of existing rules. */ description?: string; /** * A string to search for in the description of existing rules. */ description_search?: string; /** * A string to search for in the user agent values of existing rules. */ ua_search?: string; } export type UARuleDeleteParams = unknown; export declare namespace UARules { export import UARuleCreateResponse = UARulesAPI.UARuleCreateResponse; export import UARuleUpdateResponse = UARulesAPI.UARuleUpdateResponse; export import UARuleListResponse = UARulesAPI.UARuleListResponse; export import UARuleDeleteResponse = UARulesAPI.UARuleDeleteResponse; export import UARuleGetResponse = UARulesAPI.UARuleGetResponse; export import UARuleListResponsesV4PagePaginationArray = UARulesAPI.UARuleListResponsesV4PagePaginationArray; export import UARuleCreateParams = UARulesAPI.UARuleCreateParams; export import UARuleUpdateParams = UARulesAPI.UARuleUpdateParams; export import UARuleListParams = UARulesAPI.UARuleListParams; export import UARuleDeleteParams = UARulesAPI.UARuleDeleteParams; } //# sourceMappingURL=ua-rules.d.ts.map