export function createLogger(loggerPrefix: string | (() => Promise)) { const getLoggerPrefix: () => Promise = typeof loggerPrefix === "string" ? async () => loggerPrefix : loggerPrefix return { async debug(message: string, ...args: unknown[]): Promise { console.debug(`[${await getLoggerPrefix()}] ${message}`, ...args) }, async warn(message: string, ...args: unknown[]): Promise { console.warn(`[${await getLoggerPrefix()}] Warning - ${message}`, ...args) }, async error(message: string, ...args: unknown[]): Promise { console.error(`[${await getLoggerPrefix()}] Error - ${message}`, ...args) }, } }