Open basharov opened 1 year ago
It is missing the ts type definition, so we need to do it ourselves.
import * as tracer from 'tracer';
export const logger = tracer.dailyfile({
root: './logs',
maxLogFiles: 20,
transport: [
function (data) {
console.log(data.output)
}
]
}) as {
info: (...args: any[]) => void,
warn: (...args: any[]) => void,
debug: (...args: any[]) => void,
error: (...args: any[]) => void,
log: (...args: any[]) => void,
};
We have upgraded tracer to version 1.2.0, incorporating declarations for dynamically adding functions to objects. However, we are still facing an issue where ESLint perceives these functions as potentially being undefined
. Using an exclamation mark after each function reference feels inelegant. If anyone has a solution to this problem, please submit a patch.
Hello! I just found out about the library and this issue as well. I would be glad to fill a PR, but I don't get what you mean by incorporating declarations for dynamically adding functions to objects
. If you don't mind taking some time to show me an example of what you want to achieve, I could help implementing it
I see type definitions in the package, but when I try to import and use this way:
It says
Property 'error' does not exist on type 'Logger<"error">
.Can you provide some simple example of how to properly import and use tracer with TypeScript?
Thanks!