UNPKG

sassy-log

Version:

Logging, but with sass, satire, and some serious fun. A developer-first NPM package that replaces boring console.log() statements with snarky, sarcastic, or corporate-smooth one-liners.

73 lines (61 loc) 2.55 kB
/** * TypeScript definitions for sassy-log * Created by imankii01 */ export interface SassyLoggerOptions { /** Logging mode: 'savage', 'friendly', 'sarcastic', 'corporate' */ mode?: 'savage' | 'friendly' | 'sarcastic' | 'corporate'; /** Enable/disable colors (default: true) */ colors?: boolean; /** Enable/disable timestamps (default: false) */ timestamps?: boolean; /** Enable/disable emojis (default: true) */ emojis?: boolean; /** Custom quotes for different modes and types */ customQuotes?: Record<string, Record<string, string[]>>; } export interface SassyLoggerInstance { /** Log an info message */ log(message?: string): SassyLoggerInstance; /** Log an info message */ info(message?: string): SassyLoggerInstance; /** Log a success message */ success(message?: string): SassyLoggerInstance; /** Log a warning message */ warn(message?: string): SassyLoggerInstance; /** Log an error message */ error(message?: string): SassyLoggerInstance; /** Switch logging mode */ setMode(mode: 'savage' | 'friendly' | 'sarcastic' | 'corporate'): SassyLoggerInstance; /** Get current mode */ getMode(): string; /** Get available modes */ getAvailableModes(): string[]; /** Add custom quotes for a mode and type */ addCustomQuotes(mode: string, type: string, quotes: string[]): SassyLoggerInstance; /** Enable/disable colors */ setColors(enabled: boolean): SassyLoggerInstance; /** Enable/disable timestamps */ setTimestamps(enabled: boolean): SassyLoggerInstance; /** Enable/disable emojis */ setEmojis(enabled: boolean): SassyLoggerInstance; } export declare class SassyLogger implements SassyLoggerInstance { constructor(options?: SassyLoggerOptions); log(message?: string): SassyLoggerInstance; info(message?: string): SassyLoggerInstance; success(message?: string): SassyLoggerInstance; warn(message?: string): SassyLoggerInstance; error(message?: string): SassyLoggerInstance; setMode(mode: 'savage' | 'friendly' | 'sarcastic' | 'corporate'): SassyLoggerInstance; getMode(): string; getAvailableModes(): string[]; addCustomQuotes(mode: string, type: string, quotes: string[]): SassyLoggerInstance; setColors(enabled: boolean): SassyLoggerInstance; setTimestamps(enabled: boolean): SassyLoggerInstance; setEmojis(enabled: boolean): SassyLoggerInstance; } /** Create a new sassy logger instance */ declare function createLogger(options?: SassyLoggerOptions): SassyLoggerInstance; export = createLogger; export { createLogger };