import type { CompilerOptions } from 'typescript'; /** * Default compiler options for TypeScript compilation */ export declare const compilerOptionsDefault: CompilerOptions; /** * TsConfig handles loading and merging TypeScript compiler configurations. * It supports reading tsconfig.json and merging with defaults and custom options. */ export declare class TsConfig { private cwd; private cachedTsConfig; constructor(cwd?: string); /** * Get the current working directory */ getCwd(): string; /** * Load and parse tsconfig.json from the current directory */ load(): CompilerOptions; /** * Get default compiler options */ getDefaultOptions(): CompilerOptions; /** * Get critical/protected default options that shouldn't be overridden by tsconfig.json */ getProtectedDefaults(): CompilerOptions; /** * Process command line arguments and return applicable compiler options */ getCommandLineOptions(argvArg?: any): CompilerOptions; /** * Merge compiler options with proper priority order: * 1. Default options * 2. tsconfig.json options * 3. Protected defaults (cannot be overridden by tsconfig) * 4. Custom options (programmatic) * 5. CLI options (highest priority) */ merge(customOptions?: CompilerOptions, argvArg?: any): CompilerOptions; /** * Clear the cached tsconfig (useful for reloading) */ clearCache(): void; }