import type { TNewMoon, TSolarTerm } from '../types'; /** * DataLoader lazily loads JSON chunks for a given year and caches them. * * v0.2.0 strategy: * - Default 'fetch' strategy with absolute, version-pinned CDN base URL: * https://cdn.jsdelivr.net/npm/lunisolar-ts@__VERSION__/dist/data * - Optional 'static' strategy via generated manifest that uses static import()s * - Node fs fallback only when a relative baseUrl is provided and files exist locally (Node 22+) */ export declare class DataLoader { private _cache; private _deprecatedBaseUrl?; /** * Deprecated: constructor options are ignored starting v0.2.0. * Use the top-level configure() API to set global options. * This path will be removed in v0.3.0. */ constructor(opts?: any); getNewMoons(year: number): Promise; getSolarTerms(year: number): Promise; private _load; private _get; private _computeBaseUrl; private _buildUrl; private _buildRelativePath; private _trimTrailingSlash; private _isNode; private _isRelative; private _fetchJson; private _readLocalJson; } export declare const dataLoader: DataLoader; export declare function getDataLoader(): DataLoader;