import type { AdapterCheckpoint, AdapterConfigurationResult, AdapterDiscovery, AdapterManifest, AdapterReadEvent, AdapterRecord, AdapterRequest, AdapterResult, DatasetSourceAdapter } from './adapter-types.js'; type FileConfig = { path: string; encoding?: 'utf8'; }; type DirectoryConfig = FileConfig & { recursive?: boolean; }; type HttpConfig = { url: string; headers?: Record; }; declare abstract class LocalAdapter implements DatasetSourceAdapter { abstract describe(): AdapterManifest; protected abstract valid(value: Record): value is T; protected abstract discoverPath(config: T, request: AdapterRequest): Promise; protected abstract records(config: T, request: AdapterRequest & { checkpoint?: AdapterCheckpoint; }): AsyncIterable; configure(config: unknown): Promise>; check(request: AdapterRequest): Promise>; discover(request: AdapterRequest): Promise>; preview(request: AdapterRequest & { count: number; }): Promise>; read(request: AdapterRequest & { checkpoint?: AdapterCheckpoint; }): AsyncIterable; } export declare class FileAdapter extends LocalAdapter { #private; describe(): AdapterManifest; protected valid(value: Record): value is FileConfig; protected discoverPath(config: FileConfig, request: AdapterRequest): Promise; protected records(config: FileConfig, request: AdapterRequest & { checkpoint?: AdapterCheckpoint; }): AsyncIterable; } declare abstract class LineAdapter extends LocalAdapter { protected lineDiscovery(kind: string, config: T, request: AdapterRequest, schema: Record): Promise; protected lines(config: T, request: AdapterRequest & { checkpoint?: AdapterCheckpoint; }, parse: (line: string, ordinal: number, maxDepth: number) => unknown): AsyncIterable; } export declare class JsonlAdapter extends LineAdapter { #private; describe(): AdapterManifest; protected valid(value: Record): value is FileConfig; protected discoverPath(config: FileConfig, request: AdapterRequest): Promise; protected records(config: FileConfig, request: AdapterRequest & { checkpoint?: AdapterCheckpoint; }): AsyncIterable; } export declare class CsvAdapter extends LineAdapter { #private; describe(): AdapterManifest; protected valid(value: Record): value is FileConfig; protected discoverPath(config: FileConfig, request: AdapterRequest): Promise; protected records(config: FileConfig, request: AdapterRequest & { checkpoint?: AdapterCheckpoint; }): AsyncIterable; } export declare class DirectoryAdapter extends LocalAdapter { #private; describe(): AdapterManifest; protected valid(value: Record): value is DirectoryConfig; protected discoverPath(config: DirectoryConfig, request: AdapterRequest): Promise; protected records(config: DirectoryConfig, request: AdapterRequest & { checkpoint?: AdapterCheckpoint; }): AsyncIterable; } type FetchLike = typeof fetch; type HostResolver = (hostname: string) => Promise>; export declare class HttpAdapter implements DatasetSourceAdapter { #private; private readonly fetchImpl; private readonly resolveHost; constructor(fetchImpl?: FetchLike, resolveHost?: HostResolver); describe(): AdapterManifest; configure(config: unknown): Promise>; check(request: AdapterRequest): Promise>; discover(request: AdapterRequest): Promise>; preview(request: AdapterRequest & { count: number; }): Promise>; read(request: AdapterRequest & { checkpoint?: AdapterCheckpoint; }): AsyncIterable; } export declare function createBuiltinAdapterRegistry(): { adapters: (FileAdapter | JsonlAdapter | CsvAdapter | DirectoryAdapter | HttpAdapter)[]; manifests: AdapterManifest[]; }; export {}; //# sourceMappingURL=adapters.d.ts.map