import { APIResource } from "../../resource.js"; import * as Core from "../../core.js"; import { SinglePage, V4PagePagination, type V4PagePaginationParams } from "../../pagination.js"; export declare class Mitigations extends APIResource { /** * List mitigations done to remediate the abuse report. */ list(reportId: string, params: MitigationListParams, options?: Core.RequestOptions): Core.PagePromise; /** * Request a review for mitigations on an account. */ review(reportId: string, params: MitigationReviewParams, options?: Core.RequestOptions): Core.PagePromise; } export declare class MitigationListResponsesV4PagePagination extends V4PagePagination { } export declare class MitigationReviewResponsesSinglePage extends SinglePage { } export interface MitigationListResponse { mitigations: Array; } export declare namespace MitigationListResponse { interface Mitigation { /** * ID of remediation. */ id: string; /** * Date when the mitigation will become active. Time in RFC 3339 format * (https://www.rfc-editor.org/rfc/rfc3339.html) */ effective_date: string; entity_id: string; entity_type: 'url_pattern' | 'account' | 'zone'; /** * The status of a mitigation */ status: 'pending' | 'active' | 'in_review' | 'cancelled' | 'removed'; /** * The type of mitigation */ type: 'legal_block' | 'misleading_interstitial' | 'phishing_interstitial' | 'network_block' | 'rate_limit_cache' | 'account_suspend' | 'redirect_video_stream'; } } export interface MitigationReviewResponse { /** * ID of remediation. */ id: string; /** * Date when the mitigation will become active. Time in RFC 3339 format * (https://www.rfc-editor.org/rfc/rfc3339.html) */ effective_date: string; entity_id: string; entity_type: 'url_pattern' | 'account' | 'zone'; /** * The status of a mitigation */ status: 'pending' | 'active' | 'in_review' | 'cancelled' | 'removed'; /** * The type of mitigation */ type: 'legal_block' | 'misleading_interstitial' | 'phishing_interstitial' | 'network_block' | 'rate_limit_cache' | 'account_suspend' | 'redirect_video_stream'; } export interface MitigationListParams extends V4PagePaginationParams { /** * Path param: Cloudflare Account ID */ account_id: string; /** * Query param: Returns mitigation that were dispatched after the given date */ effective_after?: string; /** * Query param: Returns mitigations that were dispatched before the given date */ effective_before?: string; /** * Query param: Filter by the type of entity the mitigation impacts. */ entity_type?: 'url_pattern' | 'account' | 'zone'; /** * Query param: A property to sort by, followed by the order */ sort?: 'type,asc' | 'type,desc' | 'effective_date,asc' | 'effective_date,desc' | 'status,asc' | 'status,desc' | 'entity_type,asc' | 'entity_type,desc'; /** * Query param: Filter by the status of the mitigation. */ status?: 'pending' | 'active' | 'in_review' | 'cancelled' | 'removed'; /** * Query param: Filter by the type of mitigation. This filter parameter can be * specified multiple times to include multiple types of mitigations in the result * set, e.g. ?type=rate_limit_cache&type=legal_block. */ type?: 'legal_block' | 'misleading_interstitial' | 'phishing_interstitial' | 'network_block' | 'rate_limit_cache' | 'account_suspend' | 'redirect_video_stream'; } export interface MitigationReviewParams { /** * Path param: Cloudflare Account ID */ account_id: string; /** * Body param: List of mitigations to appeal. */ appeals: Array; } export declare namespace MitigationReviewParams { interface Appeal { /** * ID of the mitigation to appeal. */ id: string; /** * Reason why the customer is appealing. */ reason: 'removed' | 'misclassified'; } } export declare namespace Mitigations { export { type MitigationListResponse as MitigationListResponse, type MitigationReviewResponse as MitigationReviewResponse, MitigationListResponsesV4PagePagination as MitigationListResponsesV4PagePagination, MitigationReviewResponsesSinglePage as MitigationReviewResponsesSinglePage, type MitigationListParams as MitigationListParams, type MitigationReviewParams as MitigationReviewParams, }; } //# sourceMappingURL=mitigations.d.ts.map