interface PersonaLogger { log: (message: string, ...args: unknown[]) => void; info: (message: string, ...args: unknown[]) => void; warn: (message: string, ...args: unknown[]) => void; error: (message: string, ...args: unknown[]) => void; debug: (message: string, ...args: unknown[]) => void; } class PersonaConsoleLogger implements PersonaLogger { prefix = '[Persona]'; log(message: string, ...args: unknown[]) { console.log(`${this.prefix} - ${message}`, ...args); } info(message: string, ...args: unknown[]) { console.info(`${this.prefix} - ${message}`, ...args); } warn(message: string, ...args: unknown[]) { console.warn(`${this.prefix} - ${message}`, ...args); } error(message: string, ...args: unknown[]) { console.error(`${this.prefix} - ${message}`, ...args); } debug(message: string, ...args: unknown[]) { console.debug(`${this.prefix} - ${message}`, ...args); } } export { PersonaConsoleLogger }; export type { PersonaLogger };