@nanocollective/nanocoder
Version:
A local-first CLI coding agent that brings the power of agentic coding tools like Claude Code and Gemini CLI to local models or controlled APIs like OpenRouter
93 lines • 3.09 kB
TypeScript
/**
* Console API facade for backward compatibility
* Provides drop-in replacement for console methods that routes through structured logging
*
* This allows gradual migration from console.log to structured logging
* without breaking existing code patterns
*/
import type { ConsoleArguments } from './types.js';
/**
* Console replacement that routes to structured logging
* Maintains the same API as global console but adds structured logging benefits
*/
declare const StructuredConsole: {
/**
* Replacement for console.log - routes to logger.info
* Accepts any number of arguments and formats them appropriately
*/
log: (...args: ConsoleArguments) => void;
/**
* Replacement for console.error - routes to logger.error with error analysis
*/
error: (...args: ConsoleArguments) => void;
/**
* Replacement for console.warn - routes to logger.warn
*/
warn: (...args: ConsoleArguments) => void;
/**
* Replacement for console.info - routes to logger.info
*/
info: (...args: ConsoleArguments) => void;
/**
* Replacement for console.debug - routes to logger.debug
*/
debug: (...args: ConsoleArguments) => void;
};
/**
* Global console replacement hook
* Can be used to temporarily replace global console for testing or specific modules
*/
export declare class ConsoleInterceptor {
private originalConsole;
private isActive;
constructor();
/**
* Replace global console with structured logging version
*/
activate(): void;
/**
* Restore original global console
*/
deactivate: () => void;
/**
* Check if interceptor is active
*/
isInterceptorActive(): boolean;
/**
* Execute a function with console temporarily replaced
*/
withStructuredConsole<T>(fn: () => T): T;
}
/**
* Global console interceptor instance
*/
export declare const globalConsoleInterceptor: ConsoleInterceptor;
/**
* Decorator to automatically route console calls in a function to structured logging
* @internal
*/
export declare function useStructuredConsoleDecorator(_target: unknown, _propertyName: string, descriptor: PropertyDescriptor): PropertyDescriptor | void;
/**
* Convenience function to create a module-scoped console
* Useful for gradual migration of individual modules
*/
export declare function createModuleConsole(moduleName: string): {
log: (...args: ConsoleArguments) => void;
error: (...args: ConsoleArguments) => void;
warn: (...args: ConsoleArguments) => void;
info: (...args: ConsoleArguments) => void;
debug: (...args: ConsoleArguments) => void;
};
/**
* Migration helper to identify console usage patterns
* Returns statistics about console method usage in the current execution
*/
export declare class ConsoleUsageTracker {
private usage;
constructor();
getUsageStats(): Record<string, number>;
reportUsage(): void;
restore(): void;
}
export { StructuredConsole, useStructuredConsoleDecorator as useStructuredConsole, };
//# sourceMappingURL=console-facade.d.ts.map