import type { ArchiveFormat, ArchiveOpenOptions, ArchiveReader } from '@ismail-elkorchi/bytefold'; export type RuntimeKind = 'node' | 'deno' | 'bun'; export interface ArchiveWriterLike { add: (name: string, source: Uint8Array | ArrayBuffer | ReadableStream | AsyncIterable) => Promise; close: () => Promise; } export interface RuntimeBindings { runtime: RuntimeKind; openArchive: (input: unknown, options?: ArchiveOpenOptions) => Promise; createArchiveWriter: (format: ArchiveFormat, writable: WritableStream, options?: unknown) => ArchiveWriterLike; }