import type { Validator } from './base'; /** * Structural shape accepted by `v.file()`. Matches `UploadedFile` from * `@stacksjs/bun-router` (and the `UploadedFileLike` interface from * `@stacksjs/storage`) — defined here so ts-validation stays * zero-dependency. */ export declare interface FileLike { originalName?: string filename?: string size?: number mimetype?: string buffer?: ArrayBuffer | Uint8Array } export declare interface FileValidatorType extends Validator { mimeTypes: (types: string[]) => FileValidatorType image: () => FileValidatorType maxBytes: (max: number) => FileValidatorType minBytes: (min: number) => FileValidatorType extensions: (exts: string[]) => FileValidatorType custom: (fn: (file: FileLike) => boolean, message: string) => FileValidatorType }