better types

This commit is contained in:
2026-01-04 19:37:57 -05:00
parent 1a5e1d5a74
commit 35ccdb5418

View File

@@ -12,11 +12,11 @@ class Logging {
/**
* Gets the line ending for this platform.
*/
static getNewline() {
return Deno.build.os === 'windows' ? '\r\n' : '\n'
static getNewline(): '\r\n' | '\n' {
return Deno.build.os === 'windows' ? '\r\n' : '\n';
}
static timeStr(format: TimeFormat, time: Date) {
static timeStr(format: TimeFormat, time: Date): string {
switch (format) {
case TimeFormat.None:
return '';
@@ -30,7 +30,7 @@ class Logging {
return `${time.toISOString()} `;
}
}
static typeStr(type: MessageType) {
static typeStr(type: MessageType): string {
switch (type) {
case MessageType.Info:
return '[INFO]';
@@ -236,9 +236,13 @@ type TypeListener = (msg: string, type: MessageType, source: string, time: Date)
type Listener = BasicListener | TypeListener;
type ListenerType = 'basic' | 'type';
interface InternalListener {
cb: Listener,
type: ListenerType
}
export class ListenersBase {
listeners = new Set<{ cb: Listener, type: ListenerType }>();
listeners: Set<InternalListener> = new Set<InternalListener>();
/** Register listener callback */
onmsg(type: 'basic', cb: BasicListener): void
@@ -339,7 +343,7 @@ class LoggingConfigurationBase {
addConversion<T>(con: Conversion<T>) {
this.#conversions.add(con);
}
getConversions() {
getConversions(): Set<Conversion> {
return this.#conversions;
}