UNPKG

cloudflare

Version:

The official TypeScript library for the Cloudflare API

145 lines (117 loc) 3.2 kB
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. import { APIResource } from '../../resource'; import * as Core from '../../core'; import * as Shared from '../shared'; import { SinglePage } from '../../pagination'; export class Rules extends APIResource { /** * Put Rules */ update( params: RuleUpdateParams, options?: Core.RequestOptions, ): Core.PagePromise<RuleUpdateResponsesSinglePage, RuleUpdateResponse> { const { zone_id, ...body } = params; return this._client.getAPIList( `/zones/${zone_id}/snippets/snippet_rules`, RuleUpdateResponsesSinglePage, { body, method: 'put', ...options }, ); } /** * Rules */ list( params: RuleListParams, options?: Core.RequestOptions, ): Core.PagePromise<RuleListResponsesSinglePage, RuleListResponse> { const { zone_id } = params; return this._client.getAPIList( `/zones/${zone_id}/snippets/snippet_rules`, RuleListResponsesSinglePage, options, ); } /** * Delete All Rules */ delete(params: RuleDeleteParams, options?: Core.RequestOptions): Core.APIPromise<RuleDeleteResponse> { const { zone_id } = params; return this._client.delete(`/zones/${zone_id}/snippets/snippet_rules`, options); } } export class RuleUpdateResponsesSinglePage extends SinglePage<RuleUpdateResponse> {} export class RuleListResponsesSinglePage extends SinglePage<RuleListResponse> {} export interface RuleUpdateResponse { description?: string; enabled?: boolean; expression?: string; /** * Snippet identifying name */ snippet_name?: string; } export interface RuleListResponse { description?: string; enabled?: boolean; expression?: string; /** * Snippet identifying name */ snippet_name?: string; } export interface RuleDeleteResponse { errors: Array<Shared.ResponseInfo>; messages: Array<Shared.ResponseInfo>; /** * Whether the API call was successful */ success: true; } export interface RuleUpdateParams { /** * Path param: Identifier */ zone_id: string; /** * Body param: List of snippet rules */ rules?: Array<RuleUpdateParams.Rule>; } export namespace RuleUpdateParams { export interface Rule { description?: string; enabled?: boolean; expression?: string; /** * Snippet identifying name */ snippet_name?: string; } } export interface RuleListParams { /** * Identifier */ zone_id: string; } export interface RuleDeleteParams { /** * Identifier */ zone_id: string; } Rules.RuleUpdateResponsesSinglePage = RuleUpdateResponsesSinglePage; Rules.RuleListResponsesSinglePage = RuleListResponsesSinglePage; export declare namespace Rules { export { type RuleUpdateResponse as RuleUpdateResponse, type RuleListResponse as RuleListResponse, type RuleDeleteResponse as RuleDeleteResponse, RuleUpdateResponsesSinglePage as RuleUpdateResponsesSinglePage, RuleListResponsesSinglePage as RuleListResponsesSinglePage, type RuleUpdateParams as RuleUpdateParams, type RuleListParams as RuleListParams, type RuleDeleteParams as RuleDeleteParams, }; }