/**
 * Centralized lazy module loader for heavy dependencies
 * Provides singleton pattern for loading and configuring expensive modules
 */
import type * as chronoType from 'chrono-node';
import type inquirerType from 'inquirer';
import type lodashType from 'lodash';
import type { marked as MarkedType } from 'marked';
import type * as yamlType from 'yaml';
/**
 * Singleton class for lazy-loading heavy npm packages
 */
declare class LazyModuleLoader {
    private chronoModule?;
    private inquirerModule?;
    private lodashModule?;
    private markedConfigured;
    private markedModule?;
    private markedTerminalModule?;
    private yamlModule?;
    /**
     * Generic lazy loader for any module
     * Returns the entire module namespace
     */
    load<T = any>(moduleName: string): Promise<T>;
    /**
     * Load chrono (natural language date parser)
     * Example: const chrono = await lazyModuleLoader.loadChrono()
     */
    loadChrono(): Promise<typeof chronoType>;
    /**
     * Load date-fns functions
     * Example: const {formatDistanceToNow} = await lazyModuleLoader.loadDateFns()
     */
    loadDateFns(): Promise<typeof import('date-fns')>;
    /**
     * Load inquirer (interactive prompts)
     * Example: const inquirer = await lazyModuleLoader.loadInquirer()
     */
    loadInquirer(): Promise<typeof inquirerType>;
    /**
     * Load lodash utility library
     * Example: const _ = await lazyModuleLoader.loadLodash()
     */
    loadLodash(): Promise<typeof lodashType>;
    /**
     * Load marked (markdown parser) configured for terminal output
     * Lazy-loads both marked and marked-terminal, configures once
     */
    loadMarked(): Promise<typeof MarkedType>;
    /**
     * Load yaml parser
     * Example: const {parse} = await lazyModuleLoader.loadYaml()
     */
    loadYaml(): Promise<typeof yamlType>;
}
export declare const lazyModuleLoader: LazyModuleLoader;
export {};
