import * as z from "zod/v3";
import { OpenEnum } from "../../types/enums.js";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
import { RawResponse, RawResponse$Outbound } from "./rawresponse.js";
import { ScreeningResult, ScreeningResult$Outbound } from "./screeningresult.js";
/**
 * The event type
 */
export declare enum Event {
    ScreeningResultsCreated = "screening.results.created",
    ScreeningResultsUpdated = "screening.results.updated",
    ScreeningResultsCompleted = "screening.results.completed",
    ScreeningResultsFailed = "screening.results.failed",
    ScreeningResultsCancelled = "screening.results.cancelled"
}
/**
 * The event type
 */
export type EventOpen = OpenEnum<typeof Event>;
export type ScreeningResultWebhook = {
    /**
     * The result data
     */
    data: ScreeningResult;
    /**
     * The event type
     */
    event: EventOpen;
    raw?: Array<RawResponse> | null | undefined;
};
/** @internal */
export declare const Event$inboundSchema: z.ZodType<EventOpen, z.ZodTypeDef, unknown>;
/** @internal */
export declare const Event$outboundSchema: z.ZodType<EventOpen, z.ZodTypeDef, EventOpen>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace Event$ {
    /** @deprecated use `Event$inboundSchema` instead. */
    const inboundSchema: z.ZodType<EventOpen, z.ZodTypeDef, unknown>;
    /** @deprecated use `Event$outboundSchema` instead. */
    const outboundSchema: z.ZodType<EventOpen, z.ZodTypeDef, EventOpen>;
}
/** @internal */
export declare const ScreeningResultWebhook$inboundSchema: z.ZodType<ScreeningResultWebhook, z.ZodTypeDef, unknown>;
/** @internal */
export type ScreeningResultWebhook$Outbound = {
    data: ScreeningResult$Outbound;
    event: string;
    raw?: Array<RawResponse$Outbound> | null | undefined;
};
/** @internal */
export declare const ScreeningResultWebhook$outboundSchema: z.ZodType<ScreeningResultWebhook$Outbound, z.ZodTypeDef, ScreeningResultWebhook>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace ScreeningResultWebhook$ {
    /** @deprecated use `ScreeningResultWebhook$inboundSchema` instead. */
    const inboundSchema: z.ZodType<ScreeningResultWebhook, z.ZodTypeDef, unknown>;
    /** @deprecated use `ScreeningResultWebhook$outboundSchema` instead. */
    const outboundSchema: z.ZodType<ScreeningResultWebhook$Outbound, z.ZodTypeDef, ScreeningResultWebhook>;
    /** @deprecated use `ScreeningResultWebhook$Outbound` instead. */
    type Outbound = ScreeningResultWebhook$Outbound;
}
export declare function screeningResultWebhookToJSON(screeningResultWebhook: ScreeningResultWebhook): string;
export declare function screeningResultWebhookFromJSON(jsonString: string): SafeParseResult<ScreeningResultWebhook, SDKValidationError>;
//# sourceMappingURL=screeningresultwebhook.d.ts.map