/**
 * Cloudflare SECURITY-CENTER API
 *
 * Generated from Cloudflare TypeScript SDK.
 * DO NOT EDIT - regenerate with: bun scripts/generate.ts --service security-center
 */
import * as Schema from "effect/Schema";
import type * as HttpClient from "effect/unstable/http/HttpClient";
import * as API from "../client/api.ts";
import type { Credentials } from "../credentials.ts";
import { type DefaultErrors } from "../errors.ts";
interface ListInsightsBaseRequest {
}
export interface ListInsightsForAccountRequest extends ListInsightsBaseRequest {
    /** Path param: The Account ID to use for this endpoint. */
    accountId: string;
}
export interface ListInsightsForZoneRequest extends ListInsightsBaseRequest {
    /** Path param: The Zone ID to use for this endpoint. */
    zoneId: string;
}
export declare const ListInsightsForAccountRequest: Schema.Schema<ListInsightsForAccountRequest>;
export declare const ListInsightsForZoneRequest: Schema.Schema<ListInsightsForZoneRequest>;
export interface ListInsightsResponse {
    result: {
        items?: {
            count?: number | null;
            issues?: {
                id?: string | null;
                dismissed?: boolean | null;
                issueClass?: string | null;
                issueType?: "compliance_violation" | "email_security" | "exposed_infrastructure" | "insecure_configuration" | "weak_authentication" | "configuration_suggestion" | null;
                payload?: {
                    detectionMethod?: string | null;
                    zoneTag?: string | null;
                } | null;
                resolveLink?: string | null;
                resolveText?: string | null;
                severity?: "Low" | "Moderate" | "Critical" | null;
                since?: string | null;
                subject?: string | null;
                timestamp?: string | null;
            }[] | null;
            page?: number | null;
            perPage?: number | null;
        }[] | null;
    };
    resultInfo?: {
        count?: number | null;
        page?: number | null;
        perPage?: number | null;
        totalCount?: number | null;
    } | null;
}
export declare const ListInsightsResponse: Schema.Schema<ListInsightsResponse>;
export type ListInsightsError = DefaultErrors;
export declare const listInsightsForAccount: API.PaginatedOperationMethod<ListInsightsForAccountRequest, ListInsightsResponse, ListInsightsError, Credentials | HttpClient.HttpClient>;
export declare const listInsightsForZone: API.PaginatedOperationMethod<ListInsightsForZoneRequest, ListInsightsResponse, ListInsightsError, Credentials | HttpClient.HttpClient>;
interface DismissInsightBaseRequest {
    issueId: string;
    /** Body param: */
    dismiss?: boolean;
}
export interface DismissInsightForAccountRequest extends DismissInsightBaseRequest {
    /** Path param: The Account ID to use for this endpoint. */
    accountId: string;
}
export interface DismissInsightForZoneRequest extends DismissInsightBaseRequest {
    /** Path param: The Zone ID to use for this endpoint. */
    zoneId: string;
}
export declare const DismissInsightForAccountRequest: Schema.Schema<DismissInsightForAccountRequest>;
export declare const DismissInsightForZoneRequest: Schema.Schema<DismissInsightForZoneRequest>;
export interface DismissInsightResponse {
    errors: {
        code: number;
        message: string;
        documentationUrl?: string | null;
        source?: {
            pointer?: string | null;
        } | null;
    }[];
    messages: {
        code: number;
        message: string;
        documentationUrl?: string | null;
        source?: {
            pointer?: string | null;
        } | null;
    }[];
    /** Whether the API call was successful. */
    success: true;
}
export declare const DismissInsightResponse: Schema.Schema<DismissInsightResponse>;
export type DismissInsightError = DefaultErrors;
export declare const dismissInsightForAccount: API.OperationMethod<DismissInsightForAccountRequest, DismissInsightResponse, DismissInsightError, Credentials | HttpClient.HttpClient>;
export declare const dismissInsightForZone: API.OperationMethod<DismissInsightForZoneRequest, DismissInsightResponse, DismissInsightError, Credentials | HttpClient.HttpClient>;
interface GetInsightClassBaseRequest {
}
export interface GetInsightClassForAccountRequest extends GetInsightClassBaseRequest {
    /** Path param: The Account ID to use for this endpoint. */
    accountId: string;
}
export interface GetInsightClassForZoneRequest extends GetInsightClassBaseRequest {
    /** Path param: The Zone ID to use for this endpoint. */
    zoneId: string;
}
export declare const GetInsightClassForAccountRequest: Schema.Schema<GetInsightClassForAccountRequest>;
export declare const GetInsightClassForZoneRequest: Schema.Schema<GetInsightClassForZoneRequest>;
export type GetInsightClassResponse = {
    count?: number | null;
    value?: string | null;
}[];
export declare const GetInsightClassResponse: Schema.Schema<GetInsightClassResponse>;
export type GetInsightClassError = DefaultErrors;
export declare const getInsightClassForAccount: API.OperationMethod<GetInsightClassForAccountRequest, GetInsightClassResponse, GetInsightClassError, Credentials | HttpClient.HttpClient>;
export declare const getInsightClassForZone: API.OperationMethod<GetInsightClassForZoneRequest, GetInsightClassResponse, GetInsightClassError, Credentials | HttpClient.HttpClient>;
interface GetInsightSeverityBaseRequest {
}
export interface GetInsightSeverityForAccountRequest extends GetInsightSeverityBaseRequest {
    /** Path param: The Account ID to use for this endpoint. */
    accountId: string;
}
export interface GetInsightSeverityForZoneRequest extends GetInsightSeverityBaseRequest {
    /** Path param: The Zone ID to use for this endpoint. */
    zoneId: string;
}
export declare const GetInsightSeverityForAccountRequest: Schema.Schema<GetInsightSeverityForAccountRequest>;
export declare const GetInsightSeverityForZoneRequest: Schema.Schema<GetInsightSeverityForZoneRequest>;
export type GetInsightSeverityResponse = {
    count?: number | null;
    value?: string | null;
}[];
export declare const GetInsightSeverityResponse: Schema.Schema<GetInsightSeverityResponse>;
export type GetInsightSeverityError = DefaultErrors;
export declare const getInsightSeverityForAccount: API.OperationMethod<GetInsightSeverityForAccountRequest, GetInsightSeverityResponse, GetInsightSeverityError, Credentials | HttpClient.HttpClient>;
export declare const getInsightSeverityForZone: API.OperationMethod<GetInsightSeverityForZoneRequest, GetInsightSeverityResponse, GetInsightSeverityError, Credentials | HttpClient.HttpClient>;
interface GetInsightTypeBaseRequest {
}
export interface GetInsightTypeForAccountRequest extends GetInsightTypeBaseRequest {
    /** Path param: The Account ID to use for this endpoint. */
    accountId: string;
}
export interface GetInsightTypeForZoneRequest extends GetInsightTypeBaseRequest {
    /** Path param: The Zone ID to use for this endpoint. */
    zoneId: string;
}
export declare const GetInsightTypeForAccountRequest: Schema.Schema<GetInsightTypeForAccountRequest>;
export declare const GetInsightTypeForZoneRequest: Schema.Schema<GetInsightTypeForZoneRequest>;
export type GetInsightTypeResponse = {
    count?: number | null;
    value?: string | null;
}[];
export declare const GetInsightTypeResponse: Schema.Schema<GetInsightTypeResponse>;
export type GetInsightTypeError = DefaultErrors;
export declare const getInsightTypeForAccount: API.OperationMethod<GetInsightTypeForAccountRequest, GetInsightTypeResponse, GetInsightTypeError, Credentials | HttpClient.HttpClient>;
export declare const getInsightTypeForZone: API.OperationMethod<GetInsightTypeForZoneRequest, GetInsightTypeResponse, GetInsightTypeError, Credentials | HttpClient.HttpClient>;
export {};
//# sourceMappingURL=security-center.d.ts.map