import type { FactoryOptions, SeekableSource } from './base.ts'; export interface HttpRangeOptions extends FactoryOptions { /** Merged into every request (headers, credentials, signal, etc.). */ init?: RequestInit; } /** * A seekable source over JSON already resident in memory. */ export declare function fromBuffer(buf: Uint8Array | ArrayBuffer, options?: FactoryOptions): SeekableSource; /** * A seekable source over a local file. Opens a file handle on `open()` and reads * byte ranges on demand via `pread`, so only the chunks a query touches are * pulled into memory - large files never need to be fully read. Being seekable, * it supports the structural-index cache and repeated, out-of-order queries; the * cursor's `close()` releases the handle. */ export declare function fromFile(path: string, options?: FactoryOptions): SeekableSource; /** * A seekable source over a remote URL using HTTP range requests. A `HEAD` * discovers the length and confirms the server advertises `Accept-Ranges: bytes`; * each read then fetches only its byte range, so a query over a large remote * document downloads just the chunks it touches. Being seekable, it supports the * structural-index cache and repeated, out-of-order queries. For a single * forward pass over a server that does not support ranges, use {@link fromHttpRequest}. */ export declare function fromHttpRange(url: string, options?: HttpRangeOptions): SeekableSource;