import { APIResource } from "../../../core/resource.mjs";
import { APIPromise } from "../../../core/api-promise.mjs";
import { RequestOptions } from "../../../internal/request-options.mjs";
/**
 * @deprecated Please use the [Schema Validation Operations Settings](https://developers.cloudflare.com/api/resources/schema_validation/subresources/settings/subresources/operations/) APIs instead
 */
export declare class BaseSchemaValidation extends APIResource {
    static readonly _key: readonly ['apiGateway', 'operations', 'schemaValidation'];
    /**
     * Updates operation-level schema validation settings on the zone. Deprecated; use
     * `/zones/{zone_id}/schema_validation/settings/operations/{operation_id}` instead.
     *
     * @deprecated Use [Schema Validation API](https://developers.cloudflare.com/api/resources/schema_validation/) instead.
     */
    update(operationID: string, params: SchemaValidationUpdateParams, options?: RequestOptions): APIPromise<SchemaValidationUpdateResponse>;
    /**
     * Updates multiple operation-level schema validation settings on the zone.
     * Deprecated; use `/zones/{zone_id}/schema_validation/settings/operations`
     * instead.
     *
     * @deprecated Use [Schema Validation API](https://developers.cloudflare.com/api/resources/schema_validation/) instead.
     */
    edit(params: SchemaValidationEditParams, options?: RequestOptions): APIPromise<SettingsMultipleRequest>;
    /**
     * Retrieves operation-level schema validation settings on the zone. Deprecated;
     * use `/zones/{zone_id}/schema_validation/settings/operations/{operation_id}`
     * instead.
     *
     * @deprecated Use [Schema Validation API](https://developers.cloudflare.com/api/resources/schema_validation/) instead.
     */
    get(operationID: string, params: SchemaValidationGetParams, options?: RequestOptions): APIPromise<SchemaValidationGetResponse>;
}
/**
 * @deprecated Please use the [Schema Validation Operations Settings](https://developers.cloudflare.com/api/resources/schema_validation/subresources/settings/subresources/operations/) APIs instead
 */
export declare class SchemaValidation extends BaseSchemaValidation {
}
export type SettingsMultipleRequest = {
    [key: string]: SettingsMultipleRequest.item;
};
export declare namespace SettingsMultipleRequest {
    /**
     * Operation ID to mitigation action mappings
     */
    interface item {
        /**
         * When set, this applies a mitigation action to this operation
         *
         * - `log` log request when request does not conform to schema for this operation
         * - `block` deny access to the site when request does not conform to schema for
         *   this operation
         * - `none` will skip mitigation for this operation
         * - `null` indicates that no operation level mitigation is in place, see Zone
         *   Level Schema Validation Settings for mitigation action that will be applied
         */
        mitigation_action?: 'log' | 'block' | 'none' | null;
    }
}
export type SettingsMultipleRequestParam = {
    [key: string]: SettingsMultipleRequestParam.item;
};
export declare namespace SettingsMultipleRequestParam {
    /**
     * Operation ID to mitigation action mappings
     */
    interface item {
        /**
         * When set, this applies a mitigation action to this operation
         *
         * - `log` log request when request does not conform to schema for this operation
         * - `block` deny access to the site when request does not conform to schema for
         *   this operation
         * - `none` will skip mitigation for this operation
         * - `null` indicates that no operation level mitigation is in place, see Zone
         *   Level Schema Validation Settings for mitigation action that will be applied
         */
        mitigation_action?: 'log' | 'block' | 'none' | null;
    }
}
export interface SchemaValidationUpdateResponse {
    /**
     * When set, this applies a mitigation action to this operation
     *
     * - `log` log request when request does not conform to schema for this operation
     * - `block` deny access to the site when request does not conform to schema for
     *   this operation
     * - `none` will skip mitigation for this operation
     * - `null` indicates that no operation level mitigation is in place, see Zone
     *   Level Schema Validation Settings for mitigation action that will be applied
     */
    mitigation_action?: 'log' | 'block' | 'none' | null;
    /**
     * UUID.
     */
    operation_id?: string;
}
export interface SchemaValidationGetResponse {
    /**
     * When set, this applies a mitigation action to this operation
     *
     * - `log` log request when request does not conform to schema for this operation
     * - `block` deny access to the site when request does not conform to schema for
     *   this operation
     * - `none` will skip mitigation for this operation
     * - `null` indicates that no operation level mitigation is in place, see Zone
     *   Level Schema Validation Settings for mitigation action that will be applied
     */
    mitigation_action?: 'log' | 'block' | 'none' | null;
    /**
     * UUID.
     */
    operation_id?: string;
}
export interface SchemaValidationUpdateParams {
    /**
     * Path param: Identifier.
     */
    zone_id: string;
    /**
     * Body param: When set, this applies a mitigation action to this operation
     *
     * - `log` log request when request does not conform to schema for this operation
     * - `block` deny access to the site when request does not conform to schema for
     *   this operation
     * - `none` will skip mitigation for this operation
     * - `null` indicates that no operation level mitigation is in place, see Zone
     *   Level Schema Validation Settings for mitigation action that will be applied
     */
    mitigation_action?: 'log' | 'block' | 'none' | null;
}
export interface SchemaValidationEditParams {
    /**
     * Path param: Identifier.
     */
    zone_id: string;
    /**
     * Body param
     */
    settings_multiple_request: SettingsMultipleRequestParam;
}
export interface SchemaValidationGetParams {
    /**
     * Identifier.
     */
    zone_id: string;
}
export declare namespace SchemaValidation {
    export { type SettingsMultipleRequest as SettingsMultipleRequest, type SchemaValidationUpdateResponse as SchemaValidationUpdateResponse, type SchemaValidationGetResponse as SchemaValidationGetResponse, type SchemaValidationUpdateParams as SchemaValidationUpdateParams, type SchemaValidationEditParams as SchemaValidationEditParams, type SchemaValidationGetParams as SchemaValidationGetParams, };
}
//# sourceMappingURL=schema-validation.d.mts.map