import { default as React } from 'react'; export type PrintJobStatus = 'queued' | 'printing' | 'paused' | 'error' | 'completed' | 'deleted' | 'orphaned'; export interface PrinterDefinition { id: string; name: string; location?: string; isDefault?: boolean; } export interface PrintJob { id: string; documentName: string; owner?: string; submittedAt: string; printerId: string; status: PrintJobStatus; pages?: number; sizeBytes?: number; sourcePath?: string[]; spoolFileName?: string; note?: string; readOnly?: boolean; } export interface PrintSpoolerApi { printers: PrinterDefinition[]; jobs: PrintJob[]; addJob: (job: Omit & { submittedAt?: string; }) => void; updateJob: (id: string, updates: Partial) => void; removeJob: (id: string) => void; openQueue: (printerId: string) => void; openJob: (id: string) => void; } export declare const PrintSpoolerProvider: React.FC<{ children: React.ReactNode; printers?: PrinterDefinition[]; jobs?: PrintJob[]; }>; export declare const usePrintSpooler: () => PrintSpoolerApi;