UNPKG

cloudflare

Version:

The official TypeScript library for the Cloudflare API

114 lines • 4.38 kB
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. import { APIResource } from "../../core/resource.mjs"; import * as ReverseDNSAPI from "./reverse-dns.mjs"; import { BaseReverseDNS, ReverseDNS, } from "./reverse-dns.mjs"; import * as AnalyticsAPI from "./analytics/analytics.mjs"; import { Analytics, BaseAnalytics } from "./analytics/analytics.mjs"; import { V4PagePaginationArray } from "../../core/pagination.mjs"; import { path } from "../../internal/utils/path.mjs"; export var BaseDNSFirewall = /* @__PURE__ */ (() => { class BaseDNSFirewall extends APIResource { /** * Create a DNS Firewall cluster * * @example * ```ts * const dnsFirewall = await client.dnsFirewall.create({ * account_id: '023e105f4ecef8ad9ca31a8372d0c353', * name: 'My Awesome DNS Firewall cluster', * upstream_ips: [ * '192.0.2.1', * '198.51.100.1', * '2001:DB8:100::CF', * ], * }); * ``` */ create(params, options) { const { account_id, ...body } = params; return this._client.post(path `/accounts/${account_id}/dns_firewall`, { body, ...options })._thenUnwrap((obj) => obj.result); } /** * List DNS Firewall clusters for an account * * @example * ```ts * // Automatically fetches more pages as needed. * for await (const dnsFirewallListResponse of client.dnsFirewall.list( * { account_id: '023e105f4ecef8ad9ca31a8372d0c353' }, * )) { * // ... * } * ``` */ list(params, options) { const { account_id, ...query } = params; return this._client.getAPIList(path `/accounts/${account_id}/dns_firewall`, (V4PagePaginationArray), { query, ...options }); } /** * Delete a DNS Firewall cluster * * @example * ```ts * const dnsFirewall = await client.dnsFirewall.delete( * '023e105f4ecef8ad9ca31a8372d0c353', * { account_id: '023e105f4ecef8ad9ca31a8372d0c353' }, * ); * ``` */ delete(dnsFirewallID, params, options) { const { account_id } = params; return this._client.delete(path `/accounts/${account_id}/dns_firewall/${dnsFirewallID}`, options)._thenUnwrap((obj) => obj.result); } /** * Modify the configuration of a DNS Firewall cluster * * @example * ```ts * const response = await client.dnsFirewall.edit( * '023e105f4ecef8ad9ca31a8372d0c353', * { account_id: '023e105f4ecef8ad9ca31a8372d0c353' }, * ); * ``` */ edit(dnsFirewallID, params, options) { const { account_id, ...body } = params; return this._client.patch(path `/accounts/${account_id}/dns_firewall/${dnsFirewallID}`, { body, ...options, })._thenUnwrap((obj) => obj.result); } /** * Show a single DNS Firewall cluster for an account * * @example * ```ts * const dnsFirewall = await client.dnsFirewall.get( * '023e105f4ecef8ad9ca31a8372d0c353', * { account_id: '023e105f4ecef8ad9ca31a8372d0c353' }, * ); * ``` */ get(dnsFirewallID, params, options) { const { account_id } = params; return this._client.get(path `/accounts/${account_id}/dns_firewall/${dnsFirewallID}`, options)._thenUnwrap((obj) => obj.result); } } BaseDNSFirewall._key = Object.freeze(['dnsFirewall']); return BaseDNSFirewall; })(); export var DNSFirewall = /* @__PURE__ */ (() => { class DNSFirewall extends BaseDNSFirewall { constructor() { super(...arguments); this.analytics = new AnalyticsAPI.Analytics(this._client); this.reverseDNS = new ReverseDNSAPI.ReverseDNS(this._client); } } DNSFirewall.Analytics = Analytics; DNSFirewall.BaseAnalytics = BaseAnalytics; DNSFirewall.ReverseDNS = ReverseDNS; DNSFirewall.BaseReverseDNS = BaseReverseDNS; return DNSFirewall; })(); //# sourceMappingURL=dns-firewall.mjs.map