import * as http from "./http.js"; import * as dns from "./dns.js"; import * as activitypub from "./activitypub.js"; import * as reddit from "./reddit.js"; // eslint-disable-next-line @typescript-eslint/no-explicit-any export interface Fetcher { fetch: (uri: string, options?: any) => Promise; } const fetchers: Record = { http, dns, activitypub, reddit, }; /** * Get a fetcher by name */ export function get(name: string): Fetcher | undefined { return fetchers[name]; } /** * Get all available fetchers */ export function getAll(): Record { return { ...fetchers }; } export { http, dns, activitypub, reddit };