import * as z from "zod/v3";
import { ClosedEnum } from "../../types/enums.js";
/**
 * Plugin discriminator. Must be pii_redaction.
 */
export declare const PublicPIIRedactionPluginId: {
    readonly PiiRedaction: "pii_redaction";
};
/**
 * Plugin discriminator. Must be pii_redaction.
 */
export type PublicPIIRedactionPluginId = ClosedEnum<typeof PublicPIIRedactionPluginId>;
/**
 * Detector language. Defaults to en.
 */
export declare const PublicPIIRedactionPluginLanguage: {
    readonly En: "en";
    readonly Nl: "nl";
};
/**
 * Detector language. Defaults to en.
 */
export type PublicPIIRedactionPluginLanguage = ClosedEnum<typeof PublicPIIRedactionPluginLanguage>;
/**
 * Behavior when redaction is unavailable. block (default) fails the request; passthrough sends the original text.
 */
export declare const PublicPIIRedactionPluginOnFailure: {
    readonly Block: "block";
    readonly Passthrough: "passthrough";
};
/**
 * Behavior when redaction is unavailable. block (default) fails the request; passthrough sends the original text.
 */
export type PublicPIIRedactionPluginOnFailure = ClosedEnum<typeof PublicPIIRedactionPluginOnFailure>;
export type PublicPIIRedactionPlugin = {
    /**
     * Entity types to redact (e.g. EMAIL_ADDRESS, BSN). Omit to redact every type detected for the language.
     */
    entities?: Array<string> | null | undefined;
    /**
     * Plugin discriminator. Must be pii_redaction.
     */
    id: PublicPIIRedactionPluginId;
    /**
     * Detector language. Defaults to en.
     */
    language?: PublicPIIRedactionPluginLanguage | undefined;
    /**
     * Behavior when redaction is unavailable. block (default) fails the request; passthrough sends the original text.
     */
    onFailure?: PublicPIIRedactionPluginOnFailure | undefined;
    /**
     * Store the redacted (placeholder) form in traces rather than the restored original. Defaults to true.
     */
    persistRedactedToTraces?: boolean | undefined;
    /**
     * Detector confidence cutoff in [0,1].
     */
    threshold?: number | undefined;
};
/** @internal */
export declare const PublicPIIRedactionPluginId$outboundSchema: z.ZodNativeEnum<typeof PublicPIIRedactionPluginId>;
/** @internal */
export declare const PublicPIIRedactionPluginLanguage$outboundSchema: z.ZodNativeEnum<typeof PublicPIIRedactionPluginLanguage>;
/** @internal */
export declare const PublicPIIRedactionPluginOnFailure$outboundSchema: z.ZodNativeEnum<typeof PublicPIIRedactionPluginOnFailure>;
/** @internal */
export type PublicPIIRedactionPlugin$Outbound = {
    entities?: Array<string> | null | undefined;
    id: string;
    language?: string | undefined;
    on_failure?: string | undefined;
    persist_redacted_to_traces?: boolean | undefined;
    threshold?: number | undefined;
};
/** @internal */
export declare const PublicPIIRedactionPlugin$outboundSchema: z.ZodType<PublicPIIRedactionPlugin$Outbound, z.ZodTypeDef, PublicPIIRedactionPlugin>;
export declare function publicPIIRedactionPluginToJSON(publicPIIRedactionPlugin: PublicPIIRedactionPlugin): string;
//# sourceMappingURL=publicpiiredactionplugin.d.ts.map