// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. import { APIResource } from '../../core/resource'; import { APIPromise } from '../../core/api-promise'; import { buildHeaders } from '../../internal/headers'; import { RequestOptions } from '../../internal/request-options'; import { path } from '../../internal/utils/path'; export class BaseManagedTransforms extends APIResource { static override readonly _key: readonly ['managedTransforms'] = Object.freeze([ 'managedTransforms', ] as const); /** * Fetches a list of all Managed Transforms. */ list( params: ManagedTransformListParams, options?: RequestOptions, ): APIPromise { const { zone_id } = params; return ( this._client.get(path`/zones/${zone_id}/managed_headers`, options) as APIPromise<{ result: ManagedTransformListResponse; }> )._thenUnwrap((obj) => obj.result); } /** * Disables all Managed Transforms. */ delete(params: ManagedTransformDeleteParams, options?: RequestOptions): APIPromise { const { zone_id } = params; return this._client.delete(path`/zones/${zone_id}/managed_headers`, { ...options, headers: buildHeaders([{ Accept: '*/*' }, options?.headers]), }); } /** * Updates the status of one or more Managed Transforms. */ edit( params: ManagedTransformEditParams, options?: RequestOptions, ): APIPromise { const { zone_id, ...body } = params; return ( this._client.patch(path`/zones/${zone_id}/managed_headers`, { body, ...options }) as APIPromise<{ result: ManagedTransformEditResponse; }> )._thenUnwrap((obj) => obj.result); } } export class ManagedTransforms extends BaseManagedTransforms {} /** * A result. */ export interface ManagedTransformListResponse { /** * The list of Managed Request Transforms. */ managed_request_headers: Array; /** * The list of Managed Response Transforms. */ managed_response_headers: Array; } export namespace ManagedTransformListResponse { /** * A Managed Transform object. */ export interface ManagedRequestHeader { /** * The human-readable identifier of the Managed Transform. */ id: string; /** * Whether the Managed Transform is enabled. */ enabled: boolean; /** * Whether the Managed Transform conflicts with the currently-enabled Managed * Transforms. */ has_conflict: boolean; /** * The Managed Transforms that this Managed Transform conflicts with. */ conflicts_with?: Array; } /** * A Managed Transform object. */ export interface ManagedResponseHeader { /** * The human-readable identifier of the Managed Transform. */ id: string; /** * Whether the Managed Transform is enabled. */ enabled: boolean; /** * Whether the Managed Transform conflicts with the currently-enabled Managed * Transforms. */ has_conflict: boolean; /** * The Managed Transforms that this Managed Transform conflicts with. */ conflicts_with?: Array; } } /** * A result. */ export interface ManagedTransformEditResponse { /** * The list of Managed Request Transforms. */ managed_request_headers: Array; /** * The list of Managed Response Transforms. */ managed_response_headers: Array; } export namespace ManagedTransformEditResponse { /** * A Managed Transform object. */ export interface ManagedRequestHeader { /** * The human-readable identifier of the Managed Transform. */ id: string; /** * Whether the Managed Transform is enabled. */ enabled: boolean; /** * Whether the Managed Transform conflicts with the currently-enabled Managed * Transforms. */ has_conflict: boolean; /** * The Managed Transforms that this Managed Transform conflicts with. */ conflicts_with?: Array; } /** * A Managed Transform object. */ export interface ManagedResponseHeader { /** * The human-readable identifier of the Managed Transform. */ id: string; /** * Whether the Managed Transform is enabled. */ enabled: boolean; /** * Whether the Managed Transform conflicts with the currently-enabled Managed * Transforms. */ has_conflict: boolean; /** * The Managed Transforms that this Managed Transform conflicts with. */ conflicts_with?: Array; } } export interface ManagedTransformListParams { /** * The unique ID of the zone. */ zone_id: string; } export interface ManagedTransformDeleteParams { /** * The unique ID of the zone. */ zone_id: string; } export interface ManagedTransformEditParams { /** * Path param: The unique ID of the zone. */ zone_id: string; /** * Body param: The list of Managed Request Transforms. */ managed_request_headers?: Array; /** * Body param: The list of Managed Response Transforms. */ managed_response_headers?: Array; } export namespace ManagedTransformEditParams { /** * A Managed Transform object. */ export interface ManagedRequestHeader { /** * The human-readable identifier of the Managed Transform. */ id: string; /** * Whether the Managed Transform is enabled. */ enabled: boolean; } /** * A Managed Transform object. */ export interface ManagedResponseHeader { /** * The human-readable identifier of the Managed Transform. */ id: string; /** * Whether the Managed Transform is enabled. */ enabled: boolean; } } export declare namespace ManagedTransforms { export { type ManagedTransformListResponse as ManagedTransformListResponse, type ManagedTransformEditResponse as ManagedTransformEditResponse, type ManagedTransformListParams as ManagedTransformListParams, type ManagedTransformDeleteParams as ManagedTransformDeleteParams, type ManagedTransformEditParams as ManagedTransformEditParams, }; }