/**
 * Cloudflare FRAUD API
 *
 * Generated from Cloudflare TypeScript SDK.
 * DO NOT EDIT - regenerate with: bun scripts/generate.ts --service fraud
 */
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 GetFraudRequest {
    /** Identifier. */
    zoneId: string;
}
export declare const GetFraudRequest: Schema.Schema<GetFraudRequest>;
export interface GetFraudResponse {
    /** Configuration for classifying login authentication outcomes based on the origin response. Requires `user_profiles` to be enabled.  - Success and failure criteria are independently updatable — sending  */
    authenticationSettings?: {
        failureCriteria?: {
            kind: "status_code";
            statusCodes?: number[] | null;
        } | null;
        successCriteria?: {
            kind: "status_code";
            statusCodes?: number[] | null;
        } | null;
    } | null;
    /** Whether Fraud User Profiles is enabled for the zone. */
    userProfiles?: "enabled" | "disabled" | null;
    /** List of expressions to detect usernames in write HTTP requests.  - Maximum of 10 expressions. - Omit or set to null to leave unchanged on update. - Provide an empty array `[]` to clear all expressions */
    usernameExpressions?: string[] | null;
}
export declare const GetFraudResponse: Schema.Schema<GetFraudResponse>;
export type GetFraudError = DefaultErrors;
export declare const getFraud: API.OperationMethod<GetFraudRequest, GetFraudResponse, GetFraudError, Credentials | HttpClient.HttpClient>;
export interface PutFraudRequest {
    /** Path param: Identifier. */
    zoneId: string;
    /** Body param: Configuration for classifying login authentication outcomes based on the origin response. Requires `user_profiles` to be enabled.  - Success and failure criteria are independently updatabl */
    authenticationSettings?: {
        failureCriteria?: {
            kind: "status_code";
            statusCodes?: number[];
        };
        successCriteria?: {
            kind: "status_code";
            statusCodes?: number[];
        };
    };
    /** Body param: Whether Fraud User Profiles is enabled for the zone. */
    userProfiles?: "enabled" | "disabled";
    /** Body param: List of expressions to detect usernames in write HTTP requests.  - Maximum of 10 expressions. - Omit or set to null to leave unchanged on update. - Provide an empty array `[]` to clear all */
    usernameExpressions?: string[];
}
export declare const PutFraudRequest: Schema.Schema<PutFraudRequest>;
export interface PutFraudResponse {
    /** Configuration for classifying login authentication outcomes based on the origin response. Requires `user_profiles` to be enabled.  - Success and failure criteria are independently updatable — sending  */
    authenticationSettings?: {
        failureCriteria?: {
            kind: "status_code";
            statusCodes?: number[] | null;
        } | null;
        successCriteria?: {
            kind: "status_code";
            statusCodes?: number[] | null;
        } | null;
    } | null;
    /** Whether Fraud User Profiles is enabled for the zone. */
    userProfiles?: "enabled" | "disabled" | null;
    /** List of expressions to detect usernames in write HTTP requests.  - Maximum of 10 expressions. - Omit or set to null to leave unchanged on update. - Provide an empty array `[]` to clear all expressions */
    usernameExpressions?: string[] | null;
}
export declare const PutFraudResponse: Schema.Schema<PutFraudResponse>;
export type PutFraudError = DefaultErrors;
export declare const putFraud: API.OperationMethod<PutFraudRequest, PutFraudResponse, PutFraudError, Credentials | HttpClient.HttpClient>;
//# sourceMappingURL=fraud.d.ts.map