e22m4u 8 месяцев назад
Родитель
Сommit
584a128ebb
1 измененных файлов с 45 добавлено и 2 удалено
  1. 45 2
      src/create-debugger.d.ts

+ 45 - 2
src/create-debugger.d.ts

@@ -1,7 +1,50 @@
 /**
- * Debugger.
+ * Представляет функцию отладчика, которая также может быть расширена
+ * пространствами имен, хэшами или отступами.
  */
-export type Debugger = (messageOrData: unknown, ...args: any[]) => void;
+export interface Debugger {
+  /**
+   * Выводит отладочное сообщение или дамп данных.
+   * @param messageOrData Строка сообщения (с опциональными
+   *   спецификаторами формата) или данные для дампа.
+   * @param args Дополнительные аргументы для форматирования сообщения
+   *   или дополнительные данные для вывода после дампа.
+   */
+  (messageOrData: unknown, ...args: any[]): void;
+
+  /**
+   * Создает новый экземпляр отладчика с добавленным сегментом
+   * пространства имен.
+   * @param namespace Сегмент пространства имен для добавления.
+   * @param args Дополнительные сегменты пространства имен для
+   *   добавления.
+   * @returns Новый экземпляр Debugger.
+   * @throws {Error} Если пространство имен не является непустой
+   *   строкой.
+   */
+  withNs(namespace: string, ...args: string[]): Debugger;
+
+  /**
+   * Создает новый экземпляр отладчика со статическим случайным хэшем,
+   * добавляемым к префиксу.
+   * @param hashLength Желаемая длина шестнадцатеричного хэша
+   *   (по умолчанию: 4).
+   * @returns Новый экземпляр Debugger.
+   * @throws {Error} Если длина хэша не является положительным
+   *   числом.
+   */
+  withHash(hashLength?: number): Debugger;
+
+  /**
+   * Создает новый экземпляр отладчика с отступом для его сообщений.
+   * @param offsetSize Количество шагов отступа (положительное
+   *   целое число).
+   * @returns Новый экземпляр Debugger.
+   * @throws {Error} Если размер отступа не является положительным
+   *   числом.
+   */
+  withOffset(offsetSize: number): Debugger;
+}
 
 /**
  * Create debugger.