import * as z from "zod/v4-mini";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
import { WebhookEventType } from "./webhookeventtype.js";
/**
 * A webhook event.
 *
 * @remarks
 *
 * An event represent something that happened in the system
 * that should be sent to the webhook endpoint.
 *
 * It can be delivered multiple times until it's marked as succeeded,
 * each one creating a new delivery.
 */
export type WebhookEvent = {
    /**
     * Creation timestamp of the object.
     */
    createdAt: Date;
    /**
     * Last modification timestamp of the object.
     */
    modifiedAt: Date | null;
    /**
     * The ID of the object.
     */
    id: string;
    /**
     * Last HTTP code returned by the URL. `null` if no delviery has been attempted or if the endpoint was unreachable.
     */
    lastHttpCode?: number | null | undefined;
    /**
     * Whether this event was successfully delivered. `null` if no delivery has been attempted.
     */
    succeeded?: boolean | null | undefined;
    /**
     * Whether this event was skipped because the webhook endpoint was disabled.
     */
    skipped: boolean;
    /**
     * The payload of the webhook event.
     */
    payload: string | null;
    type: WebhookEventType;
    /**
     * Whether this event is archived. Archived events can't be redelivered, and the payload is not accessible anymore.
     */
    isArchived: boolean;
};
/** @internal */
export declare const WebhookEvent$inboundSchema: z.ZodMiniType<WebhookEvent, unknown>;
export declare function webhookEventFromJSON(jsonString: string): SafeParseResult<WebhookEvent, SDKValidationError>;
//# sourceMappingURL=webhookevent.d.ts.map