UNPKG

@aidalinfo/pdf-processor

Version:

Powerful PDF data extraction library powered by AI vision models. Transform PDFs into structured, validated data using TypeScript, Zod, and AI providers like Scaleway and Ollama.

116 lines (115 loc) 3.72 kB
import { z } from 'zod'; /** * Schémas de base réutilisables */ export declare const AddressSchema: z.ZodObject<{ street: z.ZodOptional<z.ZodNullable<z.ZodString>>; city: z.ZodOptional<z.ZodNullable<z.ZodString>>; postal_code: z.ZodOptional<z.ZodNullable<z.ZodString>>; country: z.ZodOptional<z.ZodNullable<z.ZodString>>; }, "strip", z.ZodTypeAny, { street?: string; city?: string; postal_code?: string; country?: string; }, { street?: string; city?: string; postal_code?: string; country?: string; }>; export declare const ContactInfoSchema: z.ZodObject<{ name: z.ZodOptional<z.ZodNullable<z.ZodString>>; company_name: z.ZodOptional<z.ZodNullable<z.ZodString>>; address: z.ZodOptional<z.ZodNullable<z.ZodObject<{ street: z.ZodOptional<z.ZodNullable<z.ZodString>>; city: z.ZodOptional<z.ZodNullable<z.ZodString>>; postal_code: z.ZodOptional<z.ZodNullable<z.ZodString>>; country: z.ZodOptional<z.ZodNullable<z.ZodString>>; }, "strip", z.ZodTypeAny, { street?: string; city?: string; postal_code?: string; country?: string; }, { street?: string; city?: string; postal_code?: string; country?: string; }>>>; phone: z.ZodOptional<z.ZodNullable<z.ZodString>>; email: z.ZodOptional<z.ZodUnion<[z.ZodNullable<z.ZodString>, z.ZodLiteral<any>]>>; website: z.ZodOptional<z.ZodNullable<z.ZodString>>; vat_number: z.ZodOptional<z.ZodNullable<z.ZodString>>; tax_id: z.ZodOptional<z.ZodNullable<z.ZodString>>; }, "strip", z.ZodTypeAny, { name?: string; company_name?: string; address?: { street?: string; city?: string; postal_code?: string; country?: string; }; phone?: string; email?: any; website?: string; vat_number?: string; tax_id?: string; }, { name?: string; company_name?: string; address?: { street?: string; city?: string; postal_code?: string; country?: string; }; phone?: string; email?: any; website?: string; vat_number?: string; tax_id?: string; }>; export declare const DocumentInfoSchema: z.ZodObject<{ document_type: z.ZodOptional<z.ZodNullable<z.ZodString>>; language: z.ZodOptional<z.ZodNullable<z.ZodString>>; currency: z.ZodOptional<z.ZodNullable<z.ZodString>>; total_pages: z.ZodOptional<z.ZodNullable<z.ZodNumber>>; }, "strip", z.ZodTypeAny, { document_type?: string; language?: string; currency?: string; total_pages?: number; }, { document_type?: string; language?: string; currency?: string; total_pages?: number; }>; export declare const PaymentInfoSchema: z.ZodObject<{ payment_terms: z.ZodOptional<z.ZodNullable<z.ZodString>>; payment_method: z.ZodOptional<z.ZodNullable<z.ZodString>>; payment_due_date: z.ZodOptional<z.ZodNullable<z.ZodString>>; bank_details: z.ZodOptional<z.ZodNullable<z.ZodString>>; iban: z.ZodOptional<z.ZodNullable<z.ZodString>>; swift_code: z.ZodOptional<z.ZodNullable<z.ZodString>>; }, "strip", z.ZodTypeAny, { payment_terms?: string; payment_method?: string; payment_due_date?: string; bank_details?: string; iban?: string; swift_code?: string; }, { payment_terms?: string; payment_method?: string; payment_due_date?: string; bank_details?: string; iban?: string; swift_code?: string; }>; export type Address = z.infer<typeof AddressSchema>; export type ContactInfo = z.infer<typeof ContactInfoSchema>; export type DocumentInfo = z.infer<typeof DocumentInfoSchema>; export type PaymentInfo = z.infer<typeof PaymentInfoSchema>;