UNPKG

cloudflare

Version:

The official TypeScript library for the Cloudflare API

135 lines • 5.23 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Configuration = exports.BaseConfiguration = void 0; const tslib_1 = require("../../../internal/tslib.js"); // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. const resource_1 = require("../../../core/resource.js"); const CredentialsAPI = tslib_1.__importStar(require("./credentials.js")); const credentials_1 = require("./credentials.js"); const pagination_1 = require("../../../core/pagination.js"); const path_1 = require("../../../internal/utils/path.js"); var BaseConfiguration = /* @__PURE__ */ (() => { class BaseConfiguration extends resource_1.APIResource { /** * Creates a JWT validation configuration for the zone. * * @example * ```ts * const tokenConfig = * await client.tokenValidation.configuration.create({ * zone_id: '023e105f4ecef8ad9ca31a8372d0c353', * credentials: { * keys: [ * { * alg: 'RS256', * e: 'e', * kid: 'kid', * kty: 'RSA', * n: 'n', * }, * ], * }, * description: * 'Long description for Token Validation Configuration', * title: 'Example Token Validation Configuration', * token_sources: [ * 'http.request.headers["x-auth"][0]', * 'http.request.cookies["Authorization"][0]', * ], * token_type: 'JWT', * }); * ``` */ create(params, options) { const { zone_id, ...body } = params; return this._client.post((0, path_1.path) `/zones/${zone_id}/token_validation/config`, { body, ...options })._thenUnwrap((obj) => obj.result); } /** * Lists the JWT validation configurations defined for the zone. * * @example * ```ts * // Automatically fetches more pages as needed. * for await (const tokenConfig of client.tokenValidation.configuration.list( * { zone_id: '023e105f4ecef8ad9ca31a8372d0c353' }, * )) { * // ... * } * ``` */ list(params, options) { const { zone_id, ...query } = params; return this._client.getAPIList((0, path_1.path) `/zones/${zone_id}/token_validation/config`, (pagination_1.V4PagePaginationArray), { query, ...options }); } /** * Deletes a JWT validation configuration from the zone. * * @example * ```ts * const configuration = * await client.tokenValidation.configuration.delete( * '4a7ee8d3-dd63-4ceb-9d5f-c27831854ce7', * { zone_id: '023e105f4ecef8ad9ca31a8372d0c353' }, * ); * ``` */ delete(configID, params, options) { const { zone_id } = params; return this._client.delete((0, path_1.path) `/zones/${zone_id}/token_validation/config/${configID}`, options)._thenUnwrap((obj) => obj.result); } /** * Updates only the supplied fields on a JWT validation configuration. * * @example * ```ts * const response = * await client.tokenValidation.configuration.edit( * '4a7ee8d3-dd63-4ceb-9d5f-c27831854ce7', * { zone_id: '023e105f4ecef8ad9ca31a8372d0c353' }, * ); * ``` */ edit(configID, params, options) { const { zone_id, ...body } = params; return this._client.patch((0, path_1.path) `/zones/${zone_id}/token_validation/config/${configID}`, { body, ...options, })._thenUnwrap((obj) => obj.result); } /** * Returns a JWT validation configuration by ID. * * @example * ```ts * const tokenConfig = * await client.tokenValidation.configuration.get( * '4a7ee8d3-dd63-4ceb-9d5f-c27831854ce7', * { zone_id: '023e105f4ecef8ad9ca31a8372d0c353' }, * ); * ``` */ get(configID, params, options) { const { zone_id } = params; return this._client.get((0, path_1.path) `/zones/${zone_id}/token_validation/config/${configID}`, options)._thenUnwrap((obj) => obj.result); } } BaseConfiguration._key = Object.freeze([ 'tokenValidation', 'configuration', ]); return BaseConfiguration; })(); exports.BaseConfiguration = BaseConfiguration; var Configuration = /* @__PURE__ */ (() => { class Configuration extends BaseConfiguration { constructor() { super(...arguments); this.credentials = new CredentialsAPI.Credentials(this._client); } } Configuration.Credentials = credentials_1.Credentials; Configuration.BaseCredentials = credentials_1.BaseCredentials; return Configuration; })(); exports.Configuration = Configuration; //# sourceMappingURL=configuration.js.map