import * as z from "zod/v3";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
import { BulkJobItemActions } from "./bulkjobitemactions.js";
import { DocStatus } from "./docstatus.js";
import { DocumentWarning } from "./documentwarning.js";
/**
 * Link to download the document
 */
export type Document = {
    /**
     * URL to download the document
     */
    href?: string | undefined;
};
/**
 * Link to the associated agreement
 */
export type BulkJobEmbeddedItemsAgreement = {
    /**
     * URL to the agreement resource
     */
    href?: string | undefined;
};
/**
 * Hypermedia links related to this document
 */
export type BulkJobEmbeddedItemsLinks = {
    /**
     * Link to download the document
     */
    document?: Document | undefined;
    /**
     * Link to the associated agreement
     */
    agreement?: BulkJobEmbeddedItemsAgreement | undefined;
};
export type BulkJobEmbeddedItems = {
    /**
     * Id of the document
     */
    id?: string | undefined;
    /**
     * Agreement ID associated with this document, if created
     */
    agreementId?: string | undefined;
    /**
     * Sequential order of the document
     */
    sequence?: number | undefined;
    /**
     * Document status. Last 4 are terminal statuses. Matches enum with similar name in the backend.
     */
    status?: DocStatus | undefined;
    /**
     * The name of the uploaded file
     */
    fileName?: string | undefined;
    /**
     * Whether AI extraction was performed on this document
     */
    aiExtraction?: boolean | undefined;
    /**
     * Error code if document processing failed
     */
    errorCode?: number | undefined;
    /**
     * Error message if document processing failed
     */
    error?: string | undefined;
    /**
     * List of warnings encountered during document processing. Present when status is SUCCEEDED_WITH_WARNINGS.
     */
    warnings?: Array<DocumentWarning> | undefined;
    /**
     * Available actions for this document. Actions vary based on document state - upload actions during initial upload, remediation actions after processing.
     */
    actions?: BulkJobItemActions | undefined;
    /**
     * Hypermedia links related to this document
     */
    links?: BulkJobEmbeddedItemsLinks | undefined;
};
/** @internal */
export declare const Document$inboundSchema: z.ZodType<Document, z.ZodTypeDef, unknown>;
export declare function documentFromJSON(jsonString: string): SafeParseResult<Document, SDKValidationError>;
/** @internal */
export declare const BulkJobEmbeddedItemsAgreement$inboundSchema: z.ZodType<BulkJobEmbeddedItemsAgreement, z.ZodTypeDef, unknown>;
export declare function bulkJobEmbeddedItemsAgreementFromJSON(jsonString: string): SafeParseResult<BulkJobEmbeddedItemsAgreement, SDKValidationError>;
/** @internal */
export declare const BulkJobEmbeddedItemsLinks$inboundSchema: z.ZodType<BulkJobEmbeddedItemsLinks, z.ZodTypeDef, unknown>;
export declare function bulkJobEmbeddedItemsLinksFromJSON(jsonString: string): SafeParseResult<BulkJobEmbeddedItemsLinks, SDKValidationError>;
/** @internal */
export declare const BulkJobEmbeddedItems$inboundSchema: z.ZodType<BulkJobEmbeddedItems, z.ZodTypeDef, unknown>;
export declare function bulkJobEmbeddedItemsFromJSON(jsonString: string): SafeParseResult<BulkJobEmbeddedItems, SDKValidationError>;
//# sourceMappingURL=bulkjobembeddeditems.d.ts.map