import { PlatformLimits } from '@shipstatic/types'; import { P as ProcessedFile, D as DropStatus } from './useDrop-vakC-Kel.cjs'; export { a as DropInputProps, b as DropOptions, c as DropPhase, d as DropReturn, e as DropzonePropsOptions, f as PickerMode, u as useDrop } from './useDrop-vakC-Kel.cjs'; import '@shipstatic/ship'; interface ProcessFilesOptions { /** Platform limits, from `ship.getLimits()` */ limits: PlatformLimits; /** Progress reporter for long steps */ onStatus?: (status: DropStatus) => void; } /** * The verdict. Mirrors the hook's state minus `isDragging`, which is a pointer * concern the pipeline knows nothing about. * * Ready files are `files.filter(f => f.status === FileValidationStatus.READY)` — kept as * one derivation rather than a second field that could disagree with the first. */ interface DropOutcome { phase: 'ready' | 'error'; files: ProcessedFile[]; sourceName: string; status: DropStatus; needsBuild: boolean; } /** * Run the pipeline. * * Never throws: a missing entry point, a file over the limit, and an * unexpected host-object failure all come back as an `error` outcome. Callers * need no try/catch. */ declare function processFiles(input: File[], { limits, onStatus }: ProcessFilesOptions): Promise; export { type DropOutcome, DropStatus, type ProcessFilesOptions, ProcessedFile, processFiles };