Skip to content

Type Alias: FileInput

FileInput = File | Blob | FileRef

Defined in: client/src/sync/file-desugar.ts:20

User-facing input shape for a file() column. Callers hand client.mutate either a File / Blob — the browser-native picker output — or a pre-computed FileRef, and desugar normalizes to FileRef before the envelope reaches the outbox / server.

Uint8Array and ArrayBuffer are intentionally not members: they are the payload type of the older inline blob() column, and a schema-blind walker would silently rewrite those into content-addressed FileRefs — corrupting blob() mutations. Callers that hold raw bytes for a file column should wrap them: new Blob([bytes], { type: mime }). This tightening is a v0.3 workaround for the FR-6 spec’s schema-aware walker that lands in v0.4.