/**
 * Cloudflare EMAIL-SECURITY API
 *
 * Generated from Cloudflare TypeScript SDK.
 * DO NOT EDIT - regenerate with: bun scripts/generate.ts --service email-security
 */
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";
export interface GetInvestigateRequest {
    postfixId: string;
    /** Account Identifier */
    accountId: string;
}
export declare const GetInvestigateRequest: Schema.Schema<GetInvestigateRequest>;
export interface GetInvestigateResponse {
    id: string;
    actionLog: unknown;
    clientRecipients: string[];
    detectionReasons: string[];
    isPhishSubmission: boolean;
    isQuarantined: boolean;
    /** The identifier of the message. */
    postfixId: string;
    properties: {
        allowlistedPattern?: string | null;
        allowlistedPatternType?: "quarantine_release" | "acceptable_sender" | "allowed_sender" | "allowed_recipient" | "domain_similarity" | "domain_recency" | "managed_acceptable_sender" | "outbound_ndr" | null;
        blocklistedMessage?: boolean | null;
        blocklistedPattern?: string | null;
        whitelistedPatternType?: "quarantine_release" | "acceptable_sender" | "allowed_sender" | "allowed_recipient" | "domain_similarity" | "domain_recency" | "managed_acceptable_sender" | "outbound_ndr" | null;
    };
    ts: string;
    alertId?: string | null;
    deliveryMode?: "DIRECT" | "BCC" | "JOURNAL" | "REVIEW_SUBMISSION" | "DMARC_UNVERIFIED" | "DMARC_FAILURE_REPORT" | "DMARC_AGGREGATE_REPORT" | "THREAT_INTEL_SUBMISSION" | "SIMULATION_SUBMISSION" | "API" | "RETRO_SCAN" | null;
    edfHash?: string | null;
    envelopeFrom?: string | null;
    envelopeTo?: string[] | null;
    finalDisposition?: "MALICIOUS" | "MALICIOUS-BEC" | "SUSPICIOUS" | "SPOOF" | "SPAM" | "BULK" | "ENCRYPTED" | "EXTERNAL" | "UNKNOWN" | "NONE" | null;
    findings?: {
        attachment?: string | null;
        detail?: string | null;
        detection?: "MALICIOUS" | "MALICIOUS-BEC" | "SUSPICIOUS" | "SPOOF" | "SPAM" | "BULK" | "ENCRYPTED" | "EXTERNAL" | "UNKNOWN" | "NONE" | null;
        field?: string | null;
        name?: string | null;
        portion?: string | null;
        reason?: string | null;
        score?: number | null;
        value?: string | null;
    }[] | null;
    from?: string | null;
    fromName?: string | null;
    htmltextStructureHash?: string | null;
    messageId?: string | null;
    postfixIdOutbound?: string | null;
    replyto?: string | null;
    sentDate?: string | null;
    subject?: string | null;
    threatCategories?: string[] | null;
    to?: string[] | null;
    toName?: string[] | null;
    validation?: {
        comment?: string | null;
        dkim?: "pass" | "neutral" | "fail" | "error" | "none" | null;
        dmarc?: "pass" | "neutral" | "fail" | "error" | "none" | null;
        spf?: "pass" | "neutral" | "fail" | "error" | "none" | null;
    } | null;
}
export declare const GetInvestigateResponse: Schema.Schema<GetInvestigateResponse>;
export type GetInvestigateError = DefaultErrors;
export declare const getInvestigate: API.OperationMethod<GetInvestigateRequest, GetInvestigateResponse, GetInvestigateError, Credentials | HttpClient.HttpClient>;
export interface ListInvestigatesRequest {
    /** Path param: Account Identifier */
    accountId: string;
    page?: number;
    perPage?: number;
    /** Query param: Determines if the message action log is included in the response. */
    actionLog?: boolean;
    /** Query param: */
    alertId?: string;
    /** Query param: */
    cursor?: string;
    /** Query param: Determines if the search results will include detections or not. */
    detectionsOnly?: boolean;
    /** Query param: The sender domains the search filters by. */
    domain?: string;
    /** Query param: The end of the search date range. Defaults to `now`. */
    end?: string;
    /** Query param: The dispositions the search filters by. */
    finalDisposition?: "MALICIOUS" | "SUSPICIOUS" | "SPOOF" | "SPAM" | "BULK" | "NONE";
    /** Query param: The message actions the search filters by. */
    messageAction?: "PREVIEW" | "QUARANTINE_RELEASED" | "MOVED";
    /** Query param: */
    messageId?: string;
    /** Query param: */
    metric?: string;
    /** Query param: The space-delimited term used in the query. The search is case-insensitive.  The content of the following email metadata fields are searched:  - alert_id - CC - From (envelope_from) - Fro */
    query?: string;
    /** Query param: */
    recipient?: string;
    /** Query param: */
    sender?: string;
    /** Query param: The beginning of the search date range. Defaults to `now - 30 days`. */
    start?: string;
    /** Query param: */
    subject?: string;
}
export declare const ListInvestigatesRequest: Schema.Schema<ListInvestigatesRequest>;
export interface ListInvestigatesResponse {
    result: {
        id: string;
        actionLog: unknown;
        clientRecipients: string[];
        detectionReasons: string[];
        isPhishSubmission: boolean;
        isQuarantined: boolean;
        postfixId: string;
        properties: {
            allowlistedPattern?: string | null;
            allowlistedPatternType?: "quarantine_release" | "acceptable_sender" | "allowed_sender" | "allowed_recipient" | "domain_similarity" | "domain_recency" | "managed_acceptable_sender" | "outbound_ndr" | null;
            blocklistedMessage?: boolean | null;
            blocklistedPattern?: string | null;
            whitelistedPatternType?: "quarantine_release" | "acceptable_sender" | "allowed_sender" | "allowed_recipient" | "domain_similarity" | "domain_recency" | "managed_acceptable_sender" | "outbound_ndr" | null;
        };
        ts: string;
        alertId?: string | null;
        deliveryMode?: "DIRECT" | "BCC" | "JOURNAL" | "REVIEW_SUBMISSION" | "DMARC_UNVERIFIED" | "DMARC_FAILURE_REPORT" | "DMARC_AGGREGATE_REPORT" | "THREAT_INTEL_SUBMISSION" | "SIMULATION_SUBMISSION" | "API" | "RETRO_SCAN" | null;
        edfHash?: string | null;
        envelopeFrom?: string | null;
        envelopeTo?: string[] | null;
        finalDisposition?: "MALICIOUS" | "MALICIOUS-BEC" | "SUSPICIOUS" | "SPOOF" | "SPAM" | "BULK" | "ENCRYPTED" | "EXTERNAL" | "UNKNOWN" | "NONE" | null;
        findings?: {
            attachment?: string | null;
            detail?: string | null;
            detection?: "MALICIOUS" | "MALICIOUS-BEC" | "SUSPICIOUS" | "SPOOF" | "SPAM" | "BULK" | "ENCRYPTED" | "EXTERNAL" | "UNKNOWN" | "NONE" | null;
            field?: string | null;
            name?: string | null;
            portion?: string | null;
            reason?: string | null;
            score?: number | null;
            value?: string | null;
        }[] | null;
        from?: string | null;
        fromName?: string | null;
        htmltextStructureHash?: string | null;
        messageId?: string | null;
        postfixIdOutbound?: string | null;
        replyto?: string | null;
        sentDate?: string | null;
        subject?: string | null;
        threatCategories?: string[] | null;
        to?: string[] | null;
        toName?: string[] | null;
        validation?: {
            comment?: string | null;
            dkim?: "pass" | "neutral" | "fail" | "error" | "none" | null;
            dmarc?: "pass" | "neutral" | "fail" | "error" | "none" | null;
            spf?: "pass" | "neutral" | "fail" | "error" | "none" | null;
        } | null;
    }[];
    resultInfo?: {
        count?: number | null;
        page?: number | null;
        perPage?: number | null;
        totalCount?: number | null;
    } | null;
}
export declare const ListInvestigatesResponse: Schema.Schema<ListInvestigatesResponse>;
export type ListInvestigatesError = DefaultErrors;
export declare const listInvestigates: API.PaginatedOperationMethod<ListInvestigatesRequest, ListInvestigatesResponse, ListInvestigatesError, Credentials | HttpClient.HttpClient>;
export interface GetInvestigateDetectionRequest {
    postfixId: string;
    /** Account Identifier */
    accountId: string;
}
export declare const GetInvestigateDetectionRequest: Schema.Schema<GetInvestigateDetectionRequest>;
export interface GetInvestigateDetectionResponse {
    action: string;
    attachments: {
        size: number;
        contentType?: string | null;
        detection?: "MALICIOUS" | "MALICIOUS-BEC" | "SUSPICIOUS" | "SPOOF" | "SPAM" | "BULK" | "ENCRYPTED" | "EXTERNAL" | "UNKNOWN" | "NONE" | null;
        encrypted?: boolean | null;
        name?: string | null;
    }[];
    headers: {
        name: string;
        value: string;
    }[];
    links: {
        href: string;
        text?: string | null;
    }[];
    senderInfo: {
        asName?: string | null;
        asNumber?: number | null;
        geo?: string | null;
        ip?: string | null;
        pld?: string | null;
    };
    threatCategories: {
        id: number;
        description?: string | null;
        name?: string | null;
    }[];
    validation: {
        comment?: string | null;
        dkim?: "pass" | "neutral" | "fail" | "error" | "none" | null;
        dmarc?: "pass" | "neutral" | "fail" | "error" | "none" | null;
        spf?: "pass" | "neutral" | "fail" | "error" | "none" | null;
    };
    finalDisposition?: "MALICIOUS" | "MALICIOUS-BEC" | "SUSPICIOUS" | "SPOOF" | "SPAM" | "BULK" | "ENCRYPTED" | "EXTERNAL" | "UNKNOWN" | "NONE" | null;
}
export declare const GetInvestigateDetectionResponse: Schema.Schema<GetInvestigateDetectionResponse>;
export type GetInvestigateDetectionError = DefaultErrors;
export declare const getInvestigateDetection: API.OperationMethod<GetInvestigateDetectionRequest, GetInvestigateDetectionResponse, GetInvestigateDetectionError, Credentials | HttpClient.HttpClient>;
export interface CreateInvestigateMoveRequest {
    postfixId: string;
    /** Path param: Account Identifier */
    accountId: string;
    /** Body param: */
    destination: "Inbox" | "JunkEmail" | "DeletedItems" | "RecoverableItemsDeletions" | "RecoverableItemsPurges";
}
export declare const CreateInvestigateMoveRequest: Schema.Schema<CreateInvestigateMoveRequest>;
export interface CreateInvestigateMoveResponse {
    result: {
        completedTimestamp: string;
        itemCount: number;
        success: boolean;
        destination?: string | null;
        messageId?: string | null;
        operation?: string | null;
        recipient?: string | null;
        status?: string | null;
    }[];
}
export declare const CreateInvestigateMoveResponse: Schema.Schema<CreateInvestigateMoveResponse>;
export type CreateInvestigateMoveError = DefaultErrors;
export declare const createInvestigateMove: API.PaginatedOperationMethod<CreateInvestigateMoveRequest, CreateInvestigateMoveResponse, CreateInvestigateMoveError, Credentials | HttpClient.HttpClient>;
export interface BulkInvestigateMoveRequest {
    /** Path param: Account Identifier */
    accountId: string;
    /** Body param: */
    destination: "Inbox" | "JunkEmail" | "DeletedItems" | "RecoverableItemsDeletions" | "RecoverableItemsPurges";
    /** Body param: */
    postfixIds: string[];
}
export declare const BulkInvestigateMoveRequest: Schema.Schema<BulkInvestigateMoveRequest>;
export interface BulkInvestigateMoveResponse {
    result: {
        completedTimestamp: string;
        itemCount: number;
        success: boolean;
        destination?: string | null;
        messageId?: string | null;
        operation?: string | null;
        recipient?: string | null;
        status?: string | null;
    }[];
}
export declare const BulkInvestigateMoveResponse: Schema.Schema<BulkInvestigateMoveResponse>;
export type BulkInvestigateMoveError = DefaultErrors;
export declare const bulkInvestigateMove: API.PaginatedOperationMethod<BulkInvestigateMoveRequest, BulkInvestigateMoveResponse, BulkInvestigateMoveError, Credentials | HttpClient.HttpClient>;
export interface GetInvestigatePreviewRequest {
    postfixId: string;
    /** Account Identifier */
    accountId: string;
}
export declare const GetInvestigatePreviewRequest: Schema.Schema<GetInvestigatePreviewRequest>;
export interface GetInvestigatePreviewResponse {
    /** A base64 encoded PNG image of the email. */
    screenshot: string;
}
export declare const GetInvestigatePreviewResponse: Schema.Schema<GetInvestigatePreviewResponse>;
export type GetInvestigatePreviewError = DefaultErrors;
export declare const getInvestigatePreview: API.OperationMethod<GetInvestigatePreviewRequest, GetInvestigatePreviewResponse, GetInvestigatePreviewError, Credentials | HttpClient.HttpClient>;
export interface CreateInvestigatePreviewRequest {
    /** Path param: Account Identifier */
    accountId: string;
    /** Body param: The identifier of the message. */
    postfixId: string;
}
export declare const CreateInvestigatePreviewRequest: Schema.Schema<CreateInvestigatePreviewRequest>;
export interface CreateInvestigatePreviewResponse {
    /** A base64 encoded PNG image of the email. */
    screenshot: string;
}
export declare const CreateInvestigatePreviewResponse: Schema.Schema<CreateInvestigatePreviewResponse>;
export type CreateInvestigatePreviewError = DefaultErrors;
export declare const createInvestigatePreview: API.OperationMethod<CreateInvestigatePreviewRequest, CreateInvestigatePreviewResponse, CreateInvestigatePreviewError, Credentials | HttpClient.HttpClient>;
export interface GetInvestigateRawRequest {
    postfixId: string;
    /** Account Identifier */
    accountId: string;
}
export declare const GetInvestigateRawRequest: Schema.Schema<GetInvestigateRawRequest>;
export interface GetInvestigateRawResponse {
    /** A UTF-8 encoded eml file of the email. */
    raw: string;
}
export declare const GetInvestigateRawResponse: Schema.Schema<GetInvestigateRawResponse>;
export type GetInvestigateRawError = DefaultErrors;
export declare const getInvestigateRaw: API.OperationMethod<GetInvestigateRawRequest, GetInvestigateRawResponse, GetInvestigateRawError, Credentials | HttpClient.HttpClient>;
export interface CreateInvestigateReclassifyRequest {
    postfixId: string;
    /** Path param: Account Identifier */
    accountId: string;
    /** Body param: */
    expectedDisposition: "NONE" | "BULK" | "MALICIOUS" | "SPAM" | "SPOOF" | "SUSPICIOUS";
    /** Body param: Base64 encoded content of the EML file */
    emlContent?: string;
    /** Body param: */
    escalatedSubmissionId?: string;
}
export declare const CreateInvestigateReclassifyRequest: Schema.Schema<CreateInvestigateReclassifyRequest>;
export type CreateInvestigateReclassifyResponse = unknown;
export declare const CreateInvestigateReclassifyResponse: Schema.Schema<CreateInvestigateReclassifyResponse>;
export type CreateInvestigateReclassifyError = DefaultErrors;
export declare const createInvestigateReclassify: API.OperationMethod<CreateInvestigateReclassifyRequest, CreateInvestigateReclassifyResponse, CreateInvestigateReclassifyError, Credentials | HttpClient.HttpClient>;
export interface BulkInvestigateReleaseRequest {
    /** Path param: Account Identifier */
    accountId: string;
    /** Body param: A list of messages identfied by their `postfix_id`s that should be released. */
    body: string[];
}
export declare const BulkInvestigateReleaseRequest: Schema.Schema<BulkInvestigateReleaseRequest>;
export interface BulkInvestigateReleaseResponse {
    result: {
        postfixId: string;
        delivered?: string[] | null;
        failed?: string[] | null;
        undelivered?: string[] | null;
    }[];
}
export declare const BulkInvestigateReleaseResponse: Schema.Schema<BulkInvestigateReleaseResponse>;
export type BulkInvestigateReleaseError = DefaultErrors;
export declare const bulkInvestigateRelease: API.PaginatedOperationMethod<BulkInvestigateReleaseRequest, BulkInvestigateReleaseResponse, BulkInvestigateReleaseError, Credentials | HttpClient.HttpClient>;
export interface GetInvestigateTraceRequest {
    postfixId: string;
    /** Account Identifier */
    accountId: string;
}
export declare const GetInvestigateTraceRequest: Schema.Schema<GetInvestigateTraceRequest>;
export interface GetInvestigateTraceResponse {
    inbound: {
        lines?: {
            lineno: number;
            message: string;
            ts: string;
        }[] | null;
        pending?: boolean | null;
    };
    outbound: {
        lines?: {
            lineno: number;
            message: string;
            ts: string;
        }[] | null;
        pending?: boolean | null;
    };
}
export declare const GetInvestigateTraceResponse: Schema.Schema<GetInvestigateTraceResponse>;
export type GetInvestigateTraceError = DefaultErrors;
export declare const getInvestigateTrace: API.OperationMethod<GetInvestigateTraceRequest, GetInvestigateTraceResponse, GetInvestigateTraceError, Credentials | HttpClient.HttpClient>;
export interface GetSettingAllowPolicyRequest {
    policyId: number;
    /** Account Identifier */
    accountId: string;
}
export declare const GetSettingAllowPolicyRequest: Schema.Schema<GetSettingAllowPolicyRequest>;
export interface GetSettingAllowPolicyResponse {
    /** The unique identifier for the allow policy. */
    id: number;
    createdAt: string;
    /** Messages from this sender will be exempted from Spam, Spoof and Bulk dispositions. Note: This will not exempt messages with Malicious or Suspicious dispositions. */
    isAcceptableSender: boolean;
    /** Messages to this recipient will bypass all detections. */
    isExemptRecipient: boolean;
    isRegex: boolean;
    /** Messages from this sender will bypass all detections and link following. */
    isTrustedSender: boolean;
    lastModified: string;
    pattern: string;
    patternType: "EMAIL" | "DOMAIN" | "IP" | "UNKNOWN";
    /** Enforce DMARC, SPF or DKIM authentication. When on, Email Security only honors policies that pass authentication. */
    verifySender: boolean;
    comments?: string | null;
    /** @deprecated */
    isRecipient?: boolean | null;
    /** @deprecated */
    isSender?: boolean | null;
    /** @deprecated */
    isSpoof?: boolean | null;
}
export declare const GetSettingAllowPolicyResponse: Schema.Schema<GetSettingAllowPolicyResponse>;
export type GetSettingAllowPolicyError = DefaultErrors;
export declare const getSettingAllowPolicy: API.OperationMethod<GetSettingAllowPolicyRequest, GetSettingAllowPolicyResponse, GetSettingAllowPolicyError, Credentials | HttpClient.HttpClient>;
export interface ListSettingAllowPoliciesRequest {
    /** Path param: Account Identifier */
    accountId: string;
    page?: number;
    perPage?: number;
    /** Query param: The sorting direction. */
    direction?: "asc" | "desc";
    /** Query param: */
    isAcceptableSender?: boolean;
    /** Query param: */
    isExemptRecipient?: boolean;
    /** Query param: */
    isRecipient?: boolean;
    /** Query param: */
    isSender?: boolean;
    /** Query param: */
    isSpoof?: boolean;
    /** Query param: */
    isTrustedSender?: boolean;
    /** Query param: The field to sort by. */
    order?: "pattern" | "created_at";
    /** Query param: */
    pattern?: string;
    /** Query param: */
    patternType?: "EMAIL" | "DOMAIN" | "IP" | "UNKNOWN";
    /** Query param: Allows searching in multiple properties of a record simultaneously. This parameter is intended for human users, not automation. Its exact behavior is intentionally left unspecified and is */
    search?: string;
    /** Query param: */
    verifySender?: boolean;
}
export declare const ListSettingAllowPoliciesRequest: Schema.Schema<ListSettingAllowPoliciesRequest>;
export interface ListSettingAllowPoliciesResponse {
    result: {
        id: number;
        createdAt: string;
        isAcceptableSender: boolean;
        isExemptRecipient: boolean;
        isRegex: boolean;
        isTrustedSender: boolean;
        lastModified: string;
        pattern: string;
        patternType: "EMAIL" | "DOMAIN" | "IP" | "UNKNOWN";
        verifySender: boolean;
        comments?: string | null;
        isRecipient?: boolean | null;
        isSender?: boolean | null;
        isSpoof?: boolean | null;
    }[];
    resultInfo?: {
        count?: number | null;
        page?: number | null;
        perPage?: number | null;
        totalCount?: number | null;
    } | null;
}
export declare const ListSettingAllowPoliciesResponse: Schema.Schema<ListSettingAllowPoliciesResponse>;
export type ListSettingAllowPoliciesError = DefaultErrors;
export declare const listSettingAllowPolicies: API.PaginatedOperationMethod<ListSettingAllowPoliciesRequest, ListSettingAllowPoliciesResponse, ListSettingAllowPoliciesError, Credentials | HttpClient.HttpClient>;
export interface CreateSettingAllowPolicyRequest {
    /** Path param: Account Identifier */
    accountId: string;
    /** Body param: Messages from this sender will be exempted from Spam, Spoof and Bulk dispositions. Note: This will not exempt messages with Malicious or Suspicious dispositions. */
    isAcceptableSender: boolean;
    /** Body param: Messages to this recipient will bypass all detections. */
    isExemptRecipient: boolean;
    /** Body param: */
    isRegex: boolean;
    /** Body param: Messages from this sender will bypass all detections and link following. */
    isTrustedSender: boolean;
    /** Body param: */
    pattern: string;
    /** Body param: */
    patternType: "EMAIL" | "DOMAIN" | "IP" | "UNKNOWN";
    /** Body param: Enforce DMARC, SPF or DKIM authentication. When on, Email Security only honors policies that pass authentication. */
    verifySender: boolean;
    /** Body param: */
    comments?: string | null;
    /** @deprecated Body param: */
    isRecipient?: boolean;
    /** @deprecated Body param: */
    isSender?: boolean;
    /** @deprecated Body param: */
    isSpoof?: boolean;
}
export declare const CreateSettingAllowPolicyRequest: Schema.Schema<CreateSettingAllowPolicyRequest>;
export interface CreateSettingAllowPolicyResponse {
    /** The unique identifier for the allow policy. */
    id: number;
    createdAt: string;
    /** Messages from this sender will be exempted from Spam, Spoof and Bulk dispositions. Note: This will not exempt messages with Malicious or Suspicious dispositions. */
    isAcceptableSender: boolean;
    /** Messages to this recipient will bypass all detections. */
    isExemptRecipient: boolean;
    isRegex: boolean;
    /** Messages from this sender will bypass all detections and link following. */
    isTrustedSender: boolean;
    lastModified: string;
    pattern: string;
    patternType: "EMAIL" | "DOMAIN" | "IP" | "UNKNOWN";
    /** Enforce DMARC, SPF or DKIM authentication. When on, Email Security only honors policies that pass authentication. */
    verifySender: boolean;
    comments?: string | null;
    /** @deprecated */
    isRecipient?: boolean | null;
    /** @deprecated */
    isSender?: boolean | null;
    /** @deprecated */
    isSpoof?: boolean | null;
}
export declare const CreateSettingAllowPolicyResponse: Schema.Schema<CreateSettingAllowPolicyResponse>;
export type CreateSettingAllowPolicyError = DefaultErrors;
export declare const createSettingAllowPolicy: API.OperationMethod<CreateSettingAllowPolicyRequest, CreateSettingAllowPolicyResponse, CreateSettingAllowPolicyError, Credentials | HttpClient.HttpClient>;
export interface PatchSettingAllowPolicyRequest {
    policyId: number;
    /** Path param: Account Identifier */
    accountId: string;
    /** Body param: */
    comments?: string | null;
    /** Body param: Messages from this sender will be exempted from Spam, Spoof and Bulk dispositions. Note: This will not exempt messages with Malicious or Suspicious dispositions. */
    isAcceptableSender?: boolean | null;
    /** Body param: Messages to this recipient will bypass all detections. */
    isExemptRecipient?: boolean | null;
    /** Body param: */
    isRegex?: boolean | null;
    /** Body param: Messages from this sender will bypass all detections and link following. */
    isTrustedSender?: boolean | null;
    /** Body param: */
    pattern?: string | null;
    /** Body param: */
    patternType?: "EMAIL" | "DOMAIN" | "IP" | "UNKNOWN" | null;
    /** Body param: Enforce DMARC, SPF or DKIM authentication. When on, Email Security only honors policies that pass authentication. */
    verifySender?: boolean | null;
}
export declare const PatchSettingAllowPolicyRequest: Schema.Schema<PatchSettingAllowPolicyRequest>;
export interface PatchSettingAllowPolicyResponse {
    /** The unique identifier for the allow policy. */
    id: number;
    createdAt: string;
    /** Messages from this sender will be exempted from Spam, Spoof and Bulk dispositions. Note: This will not exempt messages with Malicious or Suspicious dispositions. */
    isAcceptableSender: boolean;
    /** Messages to this recipient will bypass all detections. */
    isExemptRecipient: boolean;
    isRegex: boolean;
    /** Messages from this sender will bypass all detections and link following. */
    isTrustedSender: boolean;
    lastModified: string;
    pattern: string;
    patternType: "EMAIL" | "DOMAIN" | "IP" | "UNKNOWN";
    /** Enforce DMARC, SPF or DKIM authentication. When on, Email Security only honors policies that pass authentication. */
    verifySender: boolean;
    comments?: string | null;
    /** @deprecated */
    isRecipient?: boolean | null;
    /** @deprecated */
    isSender?: boolean | null;
    /** @deprecated */
    isSpoof?: boolean | null;
}
export declare const PatchSettingAllowPolicyResponse: Schema.Schema<PatchSettingAllowPolicyResponse>;
export type PatchSettingAllowPolicyError = DefaultErrors;
export declare const patchSettingAllowPolicy: API.OperationMethod<PatchSettingAllowPolicyRequest, PatchSettingAllowPolicyResponse, PatchSettingAllowPolicyError, Credentials | HttpClient.HttpClient>;
export interface DeleteSettingAllowPolicyRequest {
    policyId: number;
    /** Account Identifier */
    accountId: string;
}
export declare const DeleteSettingAllowPolicyRequest: Schema.Schema<DeleteSettingAllowPolicyRequest>;
export interface DeleteSettingAllowPolicyResponse {
    /** The unique identifier for the allow policy. */
    id: number;
}
export declare const DeleteSettingAllowPolicyResponse: Schema.Schema<DeleteSettingAllowPolicyResponse>;
export type DeleteSettingAllowPolicyError = DefaultErrors;
export declare const deleteSettingAllowPolicy: API.OperationMethod<DeleteSettingAllowPolicyRequest, DeleteSettingAllowPolicyResponse, DeleteSettingAllowPolicyError, Credentials | HttpClient.HttpClient>;
export interface GetSettingBlockSenderRequest {
    patternId: number;
    /** Account Identifier */
    accountId: string;
}
export declare const GetSettingBlockSenderRequest: Schema.Schema<GetSettingBlockSenderRequest>;
export interface GetSettingBlockSenderResponse {
    /** The unique identifier for the allow policy. */
    id: number;
    createdAt: string;
    isRegex: boolean;
    lastModified: string;
    pattern: string;
    patternType: "EMAIL" | "DOMAIN" | "IP" | "UNKNOWN";
    comments?: string | null;
}
export declare const GetSettingBlockSenderResponse: Schema.Schema<GetSettingBlockSenderResponse>;
export type GetSettingBlockSenderError = DefaultErrors;
export declare const getSettingBlockSender: API.OperationMethod<GetSettingBlockSenderRequest, GetSettingBlockSenderResponse, GetSettingBlockSenderError, Credentials | HttpClient.HttpClient>;
export interface ListSettingBlockSendersRequest {
    /** Path param: Account Identifier */
    accountId: string;
    page?: number;
    perPage?: number;
    /** Query param: The sorting direction. */
    direction?: "asc" | "desc";
    /** Query param: The field to sort by. */
    order?: "pattern" | "created_at";
    /** Query param: */
    pattern?: string;
    /** Query param: */
    patternType?: "EMAIL" | "DOMAIN" | "IP" | "UNKNOWN";
    /** Query param: Allows searching in multiple properties of a record simultaneously. This parameter is intended for human users, not automation. Its exact behavior is intentionally left unspecified and is */
    search?: string;
}
export declare const ListSettingBlockSendersRequest: Schema.Schema<ListSettingBlockSendersRequest>;
export interface ListSettingBlockSendersResponse {
    result: {
        id: number;
        createdAt: string;
        isRegex: boolean;
        lastModified: string;
        pattern: string;
        patternType: "EMAIL" | "DOMAIN" | "IP" | "UNKNOWN";
        comments?: string | null;
    }[];
    resultInfo?: {
        count?: number | null;
        page?: number | null;
        perPage?: number | null;
        totalCount?: number | null;
    } | null;
}
export declare const ListSettingBlockSendersResponse: Schema.Schema<ListSettingBlockSendersResponse>;
export type ListSettingBlockSendersError = DefaultErrors;
export declare const listSettingBlockSenders: API.PaginatedOperationMethod<ListSettingBlockSendersRequest, ListSettingBlockSendersResponse, ListSettingBlockSendersError, Credentials | HttpClient.HttpClient>;
export interface CreateSettingBlockSenderRequest {
    /** Path param: Account Identifier */
    accountId: string;
    /** Body param: */
    isRegex: boolean;
    /** Body param: */
    pattern: string;
    /** Body param: */
    patternType: "EMAIL" | "DOMAIN" | "IP" | "UNKNOWN";
    /** Body param: */
    comments?: string | null;
}
export declare const CreateSettingBlockSenderRequest: Schema.Schema<CreateSettingBlockSenderRequest>;
export interface CreateSettingBlockSenderResponse {
    /** The unique identifier for the allow policy. */
    id: number;
    createdAt: string;
    isRegex: boolean;
    lastModified: string;
    pattern: string;
    patternType: "EMAIL" | "DOMAIN" | "IP" | "UNKNOWN";
    comments?: string | null;
}
export declare const CreateSettingBlockSenderResponse: Schema.Schema<CreateSettingBlockSenderResponse>;
export type CreateSettingBlockSenderError = DefaultErrors;
export declare const createSettingBlockSender: API.OperationMethod<CreateSettingBlockSenderRequest, CreateSettingBlockSenderResponse, CreateSettingBlockSenderError, Credentials | HttpClient.HttpClient>;
export interface PatchSettingBlockSenderRequest {
    patternId: number;
    /** Path param: Account Identifier */
    accountId: string;
    /** Body param: */
    comments?: string | null;
    /** Body param: */
    isRegex?: boolean | null;
    /** Body param: */
    pattern?: string | null;
    /** Body param: */
    patternType?: "EMAIL" | "DOMAIN" | "IP" | "UNKNOWN" | null;
}
export declare const PatchSettingBlockSenderRequest: Schema.Schema<PatchSettingBlockSenderRequest>;
export interface PatchSettingBlockSenderResponse {
    /** The unique identifier for the allow policy. */
    id: number;
    createdAt: string;
    isRegex: boolean;
    lastModified: string;
    pattern: string;
    patternType: "EMAIL" | "DOMAIN" | "IP" | "UNKNOWN";
    comments?: string | null;
}
export declare const PatchSettingBlockSenderResponse: Schema.Schema<PatchSettingBlockSenderResponse>;
export type PatchSettingBlockSenderError = DefaultErrors;
export declare const patchSettingBlockSender: API.OperationMethod<PatchSettingBlockSenderRequest, PatchSettingBlockSenderResponse, PatchSettingBlockSenderError, Credentials | HttpClient.HttpClient>;
export interface DeleteSettingBlockSenderRequest {
    patternId: number;
    /** Account Identifier */
    accountId: string;
}
export declare const DeleteSettingBlockSenderRequest: Schema.Schema<DeleteSettingBlockSenderRequest>;
export interface DeleteSettingBlockSenderResponse {
    /** The unique identifier for the allow policy. */
    id: number;
}
export declare const DeleteSettingBlockSenderResponse: Schema.Schema<DeleteSettingBlockSenderResponse>;
export type DeleteSettingBlockSenderError = DefaultErrors;
export declare const deleteSettingBlockSender: API.OperationMethod<DeleteSettingBlockSenderRequest, DeleteSettingBlockSenderResponse, DeleteSettingBlockSenderError, Credentials | HttpClient.HttpClient>;
export interface GetSettingDomainRequest {
    domainId: number;
    /** Account Identifier */
    accountId: string;
}
export declare const GetSettingDomainRequest: Schema.Schema<GetSettingDomainRequest>;
export interface GetSettingDomainResponse {
    /** The unique identifier for the domain. */
    id: number;
    allowedDeliveryModes: ("DIRECT" | "BCC" | "JOURNAL" | "API" | "RETRO_SCAN")[];
    createdAt: string;
    domain: string;
    dropDispositions: ("MALICIOUS" | "MALICIOUS-BEC" | "SUSPICIOUS" | "SPOOF" | "SPAM" | "BULK" | "ENCRYPTED" | "EXTERNAL" | "UNKNOWN" | "NONE")[];
    ipRestrictions: string[];
    lastModified: string;
    lookbackHops: number;
    regions: ("GLOBAL" | "AU" | "DE" | "IN" | "US")[];
    transport: string;
    authorization?: {
        authorized: boolean;
        timestamp: string;
        statusMessage?: string | null;
    } | null;
    dmarcStatus?: "none" | "good" | "invalid" | null;
    emailsProcessed?: {
        timestamp: string;
        totalEmailsProcessed: number;
        totalEmailsProcessedPrevious: number;
    } | null;
    folder?: "AllItems" | "Inbox" | null;
    inboxProvider?: "Microsoft" | "Google" | null;
    integrationId?: string | null;
    o365TenantId?: string | null;
    requireTlsInbound?: boolean | null;
    requireTlsOutbound?: boolean | null;
    spfStatus?: "none" | "good" | "neutral" | "open" | "invalid" | null;
}
export declare const GetSettingDomainResponse: Schema.Schema<GetSettingDomainResponse>;
export type GetSettingDomainError = DefaultErrors;
export declare const getSettingDomain: API.OperationMethod<GetSettingDomainRequest, GetSettingDomainResponse, GetSettingDomainError, Credentials | HttpClient.HttpClient>;
export interface ListSettingDomainsRequest {
    /** Path param: Account Identifier */
    accountId: string;
    page?: number;
    perPage?: number;
    /** Query param: Filters response to domains with the currently active delivery mode. */
    activeDeliveryMode?: "DIRECT" | "BCC" | "JOURNAL" | "API" | "RETRO_SCAN";
    /** Query param: Filters response to domains with the provided delivery mode. */
    allowedDeliveryMode?: "DIRECT" | "BCC" | "JOURNAL" | "API" | "RETRO_SCAN";
    /** Query param: The sorting direction. */
    direction?: "asc" | "desc";
    /** Query param: Filters results by the provided domains, allowing for multiple occurrences. */
    domain?: string[];
    /** Query param: Filters response to domains with the provided integration ID. */
    integrationId?: string;
    /** Query param: The field to sort by. */
    order?: "domain" | "created_at";
    /** Query param: Allows searching in multiple properties of a record simultaneously. This parameter is intended for human users, not automation. Its exact behavior is intentionally left unspecified and is */
    search?: string;
}
export declare const ListSettingDomainsRequest: Schema.Schema<ListSettingDomainsRequest>;
export interface ListSettingDomainsResponse {
    result: {
        id: number;
        allowedDeliveryModes: ("DIRECT" | "BCC" | "JOURNAL" | "API" | "RETRO_SCAN")[];
        createdAt: string;
        domain: string;
        dropDispositions: ("MALICIOUS" | "MALICIOUS-BEC" | "SUSPICIOUS" | "SPOOF" | "SPAM" | "BULK" | "ENCRYPTED" | "EXTERNAL" | "UNKNOWN" | "NONE")[];
        ipRestrictions: string[];
        lastModified: string;
        lookbackHops: number;
        regions: ("GLOBAL" | "AU" | "DE" | "IN" | "US")[];
        transport: string;
        authorization?: {
            authorized: boolean;
            timestamp: string;
            statusMessage?: string | null;
        } | null;
        dmarcStatus?: "none" | "good" | "invalid" | null;
        emailsProcessed?: {
            timestamp: string;
            totalEmailsProcessed: number;
            totalEmailsProcessedPrevious: number;
        } | null;
        folder?: "AllItems" | "Inbox" | null;
        inboxProvider?: "Microsoft" | "Google" | null;
        integrationId?: string | null;
        o365TenantId?: string | null;
        requireTlsInbound?: boolean | null;
        requireTlsOutbound?: boolean | null;
        spfStatus?: "none" | "good" | "neutral" | "open" | "invalid" | null;
    }[];
    resultInfo?: {
        count?: number | null;
        page?: number | null;
        perPage?: number | null;
        totalCount?: number | null;
    } | null;
}
export declare const ListSettingDomainsResponse: Schema.Schema<ListSettingDomainsResponse>;
export type ListSettingDomainsError = DefaultErrors;
export declare const listSettingDomains: API.PaginatedOperationMethod<ListSettingDomainsRequest, ListSettingDomainsResponse, ListSettingDomainsError, Credentials | HttpClient.HttpClient>;
export interface PatchSettingDomainRequest {
    domainId: number;
    /** Path param: Account Identifier */
    accountId: string;
    /** Body param: */
    ipRestrictions: string[];
    /** Body param: */
    allowedDeliveryModes?: ("DIRECT" | "BCC" | "JOURNAL" | "API" | "RETRO_SCAN")[];
    /** Body param: */
    domain?: string;
    /** Body param: */
    dropDispositions?: ("MALICIOUS" | "MALICIOUS-BEC" | "SUSPICIOUS" | "SPOOF" | "SPAM" | "BULK" | "ENCRYPTED" | "EXTERNAL" | "UNKNOWN" | "NONE")[];
    /** Body param: */
    folder?: "AllItems" | "Inbox";
    /** Body param: */
    integrationId?: string;
    /** Body param: */
    lookbackHops?: number;
    /** Body param: */
    regions?: ("GLOBAL" | "AU" | "DE" | "IN" | "US")[];
    /** Body param: */
    requireTlsInbound?: boolean;
    /** Body param: */
    requireTlsOutbound?: boolean;
    /** Body param: */
    transport?: string;
}
export declare const PatchSettingDomainRequest: Schema.Schema<PatchSettingDomainRequest>;
export interface PatchSettingDomainResponse {
    /** The unique identifier for the domain. */
    id: number;
    allowedDeliveryModes: ("DIRECT" | "BCC" | "JOURNAL" | "API" | "RETRO_SCAN")[];
    createdAt: string;
    domain: string;
    dropDispositions: ("MALICIOUS" | "MALICIOUS-BEC" | "SUSPICIOUS" | "SPOOF" | "SPAM" | "BULK" | "ENCRYPTED" | "EXTERNAL" | "UNKNOWN" | "NONE")[];
    ipRestrictions: string[];
    lastModified: string;
    lookbackHops: number;
    regions: ("GLOBAL" | "AU" | "DE" | "IN" | "US")[];
    transport: string;
    authorization?: {
        authorized: boolean;
        timestamp: string;
        statusMessage?: string | null;
    } | null;
    dmarcStatus?: "none" | "good" | "invalid" | null;
    emailsProcessed?: {
        timestamp: string;
        totalEmailsProcessed: number;
        totalEmailsProcessedPrevious: number;
    } | null;
    folder?: "AllItems" | "Inbox" | null;
    inboxProvider?: "Microsoft" | "Google" | null;
    integrationId?: string | null;
    o365TenantId?: string | null;
    requireTlsInbound?: boolean | null;
    requireTlsOutbound?: boolean | null;
    spfStatus?: "none" | "good" | "neutral" | "open" | "invalid" | null;
}
export declare const PatchSettingDomainResponse: Schema.Schema<PatchSettingDomainResponse>;
export type PatchSettingDomainError = DefaultErrors;
export declare const patchSettingDomain: API.OperationMethod<PatchSettingDomainRequest, PatchSettingDomainResponse, PatchSettingDomainError, Credentials | HttpClient.HttpClient>;
export interface DeleteSettingDomainRequest {
    domainId: number;
    /** Account Identifier */
    accountId: string;
}
export declare const DeleteSettingDomainRequest: Schema.Schema<DeleteSettingDomainRequest>;
export interface DeleteSettingDomainResponse {
    /** The unique identifier for the domain. */
    id: number;
}
export declare const DeleteSettingDomainResponse: Schema.Schema<DeleteSettingDomainResponse>;
export type DeleteSettingDomainError = DefaultErrors;
export declare const deleteSettingDomain: API.OperationMethod<DeleteSettingDomainRequest, DeleteSettingDomainResponse, DeleteSettingDomainError, Credentials | HttpClient.HttpClient>;
export interface BulkDeleteSettingDomainsRequest {
    /** Account Identifier */
    accountId: string;
}
export declare const BulkDeleteSettingDomainsRequest: Schema.Schema<BulkDeleteSettingDomainsRequest>;
export interface BulkDeleteSettingDomainsResponse {
    result: {
        id: number;
    }[];
}
export declare const BulkDeleteSettingDomainsResponse: Schema.Schema<BulkDeleteSettingDomainsResponse>;
export type BulkDeleteSettingDomainsError = DefaultErrors;
export declare const bulkDeleteSettingDomains: API.PaginatedOperationMethod<BulkDeleteSettingDomainsRequest, BulkDeleteSettingDomainsResponse, BulkDeleteSettingDomainsError, Credentials | HttpClient.HttpClient>;
export interface GetSettingImpersonationRegistryRequest {
    displayNameId: number;
    /** Account Identifier */
    accountId: string;
}
export declare const GetSettingImpersonationRegistryRequest: Schema.Schema<GetSettingImpersonationRegistryRequest>;
export interface GetSettingImpersonationRegistryResponse {
    id: number;
    createdAt: string;
    email: string;
    isEmailRegex: boolean;
    lastModified: string;
    name: string;
    comments?: string | null;
    directoryId?: number | null;
    directoryNodeId?: number | null;
    /** @deprecated */
    externalDirectoryNodeId?: string | null;
    provenance?: string | null;
}
export declare const GetSettingImpersonationRegistryResponse: Schema.Schema<GetSettingImpersonationRegistryResponse>;
export type GetSettingImpersonationRegistryError = DefaultErrors;
export declare const getSettingImpersonationRegistry: API.OperationMethod<GetSettingImpersonationRegistryRequest, GetSettingImpersonationRegistryResponse, GetSettingImpersonationRegistryError, Credentials | HttpClient.HttpClient>;
export interface ListSettingImpersonationRegistriesRequest {
    /** Path param: Account Identifier */
    accountId: string;
    page?: number;
    perPage?: number;
    /** Query param: The sorting direction. */
    direction?: "asc" | "desc";
    /** Query param: The field to sort by. */
    order?: "name" | "email" | "created_at";
    /** Query param: */
    provenance?: "A1S_INTERNAL" | "SNOOPY-CASB_OFFICE_365" | "SNOOPY-OFFICE_365" | "SNOOPY-GOOGLE_DIRECTORY";
    /** Query param: Allows searching in multiple properties of a record simultaneously. This parameter is intended for human users, not automation. Its exact behavior is intentionally left unspecified and is */
    search?: string;
}
export declare const ListSettingImpersonationRegistriesRequest: Schema.Schema<ListSettingImpersonationRegistriesRequest>;
export interface ListSettingImpersonationRegistriesResponse {
    result: {
        id: number;
        createdAt: string;
        email: string;
        isEmailRegex: boolean;
        lastModified: string;
        name: string;
        comments?: string | null;
        directoryId?: number | null;
        directoryNodeId?: number | null;
        externalDirectoryNodeId?: string | null;
        provenance?: string | null;
    }[];
    resultInfo?: {
        count?: number | null;
        page?: number | null;
        perPage?: number | null;
        totalCount?: number | null;
    } | null;
}
export declare const ListSettingImpersonationRegistriesResponse: Schema.Schema<ListSettingImpersonationRegistriesResponse>;
export type ListSettingImpersonationRegistriesError = DefaultErrors;
export declare const listSettingImpersonationRegistries: API.PaginatedOperationMethod<ListSettingImpersonationRegistriesRequest, ListSettingImpersonationRegistriesResponse, ListSettingImpersonationRegistriesError, Credentials | HttpClient.HttpClient>;
export interface CreateSettingImpersonationRegistryRequest {
    /** Path param: Account Identifier */
    accountId: string;
    /** Body param: */
    email: string;
    /** Body param: */
    isEmailRegex: boolean;
    /** Body param: */
    name: string;
}
export declare const CreateSettingImpersonationRegistryRequest: Schema.Schema<CreateSettingImpersonationRegistryRequest>;
export interface CreateSettingImpersonationRegistryResponse {
    id: number;
    createdAt: string;
    email: string;
    isEmailRegex: boolean;
    lastModified: string;
    name: string;
    comments?: string | null;
    directoryId?: number | null;
    directoryNodeId?: number | null;
    /** @deprecated */
    externalDirectoryNodeId?: string | null;
    provenance?: string | null;
}
export declare const CreateSettingImpersonationRegistryResponse: Schema.Schema<CreateSettingImpersonationRegistryResponse>;
export type CreateSettingImpersonationRegistryError = DefaultErrors;
export declare const createSettingImpersonationRegistry: API.OperationMethod<CreateSettingImpersonationRegistryRequest, CreateSettingImpersonationRegistryResponse, CreateSettingImpersonationRegistryError, Credentials | HttpClient.HttpClient>;
export interface PatchSettingImpersonationRegistryRequest {
    displayNameId: number;
    /** Path param: Account Identifier */
    accountId: string;
    /** Body param: */
    email?: string | null;
    /** Body param: */
    isEmailRegex?: boolean | null;
    /** Body param: */
    name?: string | null;
}
export declare const PatchSettingImpersonationRegistryRequest: Schema.Schema<PatchSettingImpersonationRegistryRequest>;
export interface PatchSettingImpersonationRegistryResponse {
    id: number;
    createdAt: string;
    email: string;
    isEmailRegex: boolean;
    lastModified: string;
    name: string;
    comments?: string | null;
    directoryId?: number | null;
    directoryNodeId?: number | null;
    /** @deprecated */
    externalDirectoryNodeId?: string | null;
    provenance?: string | null;
}
export declare const PatchSettingImpersonationRegistryResponse: Schema.Schema<PatchSettingImpersonationRegistryResponse>;
export type PatchSettingImpersonationRegistryError = DefaultErrors;
export declare const patchSettingImpersonationRegistry: API.OperationMethod<PatchSettingImpersonationRegistryRequest, PatchSettingImpersonationRegistryResponse, PatchSettingImpersonationRegistryError, Credentials | HttpClient.HttpClient>;
export interface DeleteSettingImpersonationRegistryRequest {
    displayNameId: number;
    /** Account Identifier */
    accountId: string;
}
export declare const DeleteSettingImpersonationRegistryRequest: Schema.Schema<DeleteSettingImpersonationRegistryRequest>;
export interface DeleteSettingImpersonationRegistryResponse {
    id: number;
}
export declare const DeleteSettingImpersonationRegistryResponse: Schema.Schema<DeleteSettingImpersonationRegistryResponse>;
export type DeleteSettingImpersonationRegistryError = DefaultErrors;
export declare const deleteSettingImpersonationRegistry: API.OperationMethod<DeleteSettingImpersonationRegistryRequest, DeleteSettingImpersonationRegistryResponse, DeleteSettingImpersonationRegistryError, Credentials | HttpClient.HttpClient>;
export interface GetSettingTrustedDomainRequest {
    trustedDomainId: number;
    /** Account Identifier */
    accountId: string;
}
export declare const GetSettingTrustedDomainRequest: Schema.Schema<GetSettingTrustedDomainRequest>;
export interface GetSettingTrustedDomainResponse {
    /** The unique identifier for the trusted domain. */
    id: number;
    createdAt: string;
    /** Select to prevent recently registered domains from triggering a Suspicious or Malicious disposition. */
    isRecent: boolean;
    isRegex: boolean;
    /** Select for partner or other approved domains that have similar spelling to your connected domains. Prevents listed domains from triggering a Spoof disposition. */
    isSimilarity: boolean;
    lastModified: string;
    pattern: string;
    comments?: string | null;
}
export declare const GetSettingTrustedDomainResponse: Schema.Schema<GetSettingTrustedDomainResponse>;
export type GetSettingTrustedDomainError = DefaultErrors;
export declare const getSettingTrustedDomain: API.OperationMethod<GetSettingTrustedDomainRequest, GetSettingTrustedDomainResponse, GetSettingTrustedDomainError, Credentials | HttpClient.HttpClient>;
export interface ListSettingTrustedDomainsRequest {
    /** Path param: Account Identifier */
    accountId: string;
    page?: number;
    perPage?: number;
    /** Query param: The sorting direction. */
    direction?: "asc" | "desc";
    /** Query param: */
    isRecent?: boolean;
    /** Query param: */
    isSimilarity?: boolean;
    /** Query param: The field to sort by. */
    order?: "pattern" | "created_at";
    /** Query param: */
    pattern?: string;
    /** Query param: Allows searching in multiple properties of a record simultaneously. This parameter is intended for human users, not automation. Its exact behavior is intentionally left unspecified and is */
    search?: string;
}
export declare const ListSettingTrustedDomainsRequest: Schema.Schema<ListSettingTrustedDomainsRequest>;
export interface ListSettingTrustedDomainsResponse {
    result: {
        id: number;
        createdAt: string;
        isRecent: boolean;
        isRegex: boolean;
        isSimilarity: boolean;
        lastModified: string;
        pattern: string;
        comments?: string | null;
    }[];
    resultInfo?: {
        count?: number | null;
        page?: number | null;
        perPage?: number | null;
        totalCount?: number | null;
    } | null;
}
export declare const ListSettingTrustedDomainsResponse: Schema.Schema<ListSettingTrustedDomainsResponse>;
export type ListSettingTrustedDomainsError = DefaultErrors;
export declare const listSettingTrustedDomains: API.PaginatedOperationMethod<ListSettingTrustedDomainsRequest, ListSettingTrustedDomainsResponse, ListSettingTrustedDomainsError, Credentials | HttpClient.HttpClient>;
export interface CreateSettingTrustedDomainRequest {
    /** Path param: Account Identifier */
    accountId: string;
    /** Body param: Select to prevent recently registered domains from triggering a Suspicious or Malicious disposition. */
    isRecent: boolean;
    /** Body param: */
    isRegex: boolean;
    /** Body param: Select for partner or other approved domains that have similar spelling to your connected domains. Prevents listed domains from triggering a Spoof disposition. */
    isSimilarity: boolean;
    /** Body param: */
    pattern: string;
    /** Body param: */
    comments?: string | null;
}
export declare const CreateSettingTrustedDomainRequest: Schema.Schema<CreateSettingTrustedDomainRequest>;
export type CreateSettingTrustedDomainResponse = {
    id: number;
    createdAt: string;
    isRecent: boolean;
    isRegex: boolean;
    isSimilarity: boolean;
    lastModified: string;
    pattern: string;
    comments?: string | null;
} | {
    id: number;
    createdAt: string;
    isRecent: boolean;
    isRegex: boolean;
    isSimilarity: boolean;
    lastModified: string;
    pattern: string;
    comments?: string | null;
}[];
export declare const CreateSettingTrustedDomainResponse: Schema.Schema<CreateSettingTrustedDomainResponse>;
export type CreateSettingTrustedDomainError = DefaultErrors;
export declare const createSettingTrustedDomain: API.OperationMethod<CreateSettingTrustedDomainRequest, CreateSettingTrustedDomainResponse, CreateSettingTrustedDomainError, Credentials | HttpClient.HttpClient>;
export interface PatchSettingTrustedDomainRequest {
    trustedDomainId: number;
    /** Path param: Account Identifier */
    accountId: string;
    /** Body param: */
    comments?: string;
    /** Body param: Select to prevent recently registered domains from triggering a Suspicious or Malicious disposition. */
    isRecent?: boolean;
    /** Body param: */
    isRegex?: boolean;
    /** Body param: Select for partner or other approved domains that have similar spelling to your connected domains. Prevents listed domains from triggering a Spoof disposition. */
    isSimilarity?: boolean;
    /** Body param: */
    pattern?: string;
}
export declare const PatchSettingTrustedDomainRequest: Schema.Schema<PatchSettingTrustedDomainRequest>;
export interface PatchSettingTrustedDomainResponse {
    /** The unique identifier for the trusted domain. */
    id: number;
    createdAt: string;
    /** Select to prevent recently registered domains from triggering a Suspicious or Malicious disposition. */
    isRecent: boolean;
    isRegex: boolean;
    /** Select for partner or other approved domains that have similar spelling to your connected domains. Prevents listed domains from triggering a Spoof disposition. */
    isSimilarity: boolean;
    lastModified: string;
    pattern: string;
    comments?: string | null;
}
export declare const PatchSettingTrustedDomainResponse: Schema.Schema<PatchSettingTrustedDomainResponse>;
export type PatchSettingTrustedDomainError = DefaultErrors;
export declare const patchSettingTrustedDomain: API.OperationMethod<PatchSettingTrustedDomainRequest, PatchSettingTrustedDomainResponse, PatchSettingTrustedDomainError, Credentials | HttpClient.HttpClient>;
export interface DeleteSettingTrustedDomainRequest {
    trustedDomainId: number;
    /** Account Identifier */
    accountId: string;
}
export declare const DeleteSettingTrustedDomainRequest: Schema.Schema<DeleteSettingTrustedDomainRequest>;
export interface DeleteSettingTrustedDomainResponse {
    /** The unique identifier for the trusted domain. */
    id: number;
}
export declare const DeleteSettingTrustedDomainResponse: Schema.Schema<DeleteSettingTrustedDomainResponse>;
export type DeleteSettingTrustedDomainError = DefaultErrors;
export declare const deleteSettingTrustedDomain: API.OperationMethod<DeleteSettingTrustedDomainRequest, DeleteSettingTrustedDomainResponse, DeleteSettingTrustedDomainError, Credentials | HttpClient.HttpClient>;
export interface ListSubmissionsRequest {
    /** Path param: Account Identifier */
    accountId: string;
    page?: number;
    perPage?: number;
    /** Query param: The end of the search date range. Defaults to `now`. */
    end?: string;
    /** Query param: */
    originalDisposition?: "MALICIOUS" | "SUSPICIOUS" | "SPOOF" | "SPAM" | "BULK" | "NONE";
    /** Query param: */
    outcomeDisposition?: "MALICIOUS" | "SUSPICIOUS" | "SPOOF" | "SPAM" | "BULK" | "NONE";
    /** Query param: */
    query?: string | null;
    /** Query param: */
    requestedDisposition?: "MALICIOUS" | "SUSPICIOUS" | "SPOOF" | "SPAM" | "BULK" | "NONE";
    /** Query param: The beginning of the search date range. Defaults to `now - 30 days`. */
    start?: string;
    /** Query param: */
    status?: string;
    /** Query param: */
    submissionId?: string;
    /** Query param: */
    type?: "TEAM" | "USER";
}
export declare const ListSubmissionsRequest: Schema.Schema<ListSubmissionsRequest>;
export interface ListSubmissionsResponse {
    result: {
        requestedTs: string;
        submissionId: string;
        originalDisposition?: "MALICIOUS" | "MALICIOUS-BEC" | "SUSPICIOUS" | "SPOOF" | "SPAM" | "BULK" | "ENCRYPTED" | "EXTERNAL" | "UNKNOWN" | "NONE" | null;
        originalEdfHash?: string | null;
        outcome?: string | null;
        outcomeDisposition?: "MALICIOUS" | "MALICIOUS-BEC" | "SUSPICIOUS" | "SPOOF" | "SPAM" | "BULK" | "ENCRYPTED" | "EXTERNAL" | "UNKNOWN" | "NONE" | null;
        requestedBy?: string | null;
        requestedDisposition?: "MALICIOUS" | "MALICIOUS-BEC" | "SUSPICIOUS" | "SPOOF" | "SPAM" | "BULK" | "ENCRYPTED" | "EXTERNAL" | "UNKNOWN" | "NONE" | null;
        status?: string | null;
        subject?: string | null;
        type?: string | null;
    }[];
    resultInfo?: {
        count?: number | null;
        page?: number | null;
        perPage?: number | null;
        totalCount?: number | null;
    } | null;
}
export declare const ListSubmissionsResponse: Schema.Schema<ListSubmissionsResponse>;
export type ListSubmissionsError = DefaultErrors;
export declare const listSubmissions: API.PaginatedOperationMethod<ListSubmissionsRequest, ListSubmissionsResponse, ListSubmissionsError, Credentials | HttpClient.HttpClient>;
//# sourceMappingURL=email-security.d.ts.map