@ronniepettersson/homebridge-dummy
Version:
Create Homebridge accessories to help with automation and control — scheduling, delays, sensors, commands, webhooks, and more
28 lines (27 loc) • 1.25 kB
TypeScript
import { TimeUnits } from '../model/enums.js';
import { Log } from '../tools/log.js';
export declare const SECOND = 1000;
export declare const MINUTE: number;
export declare const HOUR: number;
export declare const DAY: number;
type DelayLogStrings = {
milliseconds: string;
seconds: string;
minutes: string;
hours: string;
};
export declare function DelayLogStrings(milliseconds: string, seconds: string, minutes: string, hours: string): DelayLogStrings;
export declare function getDelay(rawTime: number, units: TimeUnits, random?: boolean | undefined, logStrings?: DelayLogStrings | undefined, log?: Log | undefined, caller?: string | undefined): number;
export declare abstract class Timeout {
protected readonly caller: string;
protected readonly log: Log;
private readonly disableLogging;
protected timeout?: NodeJS.Timeout;
protected constructor(caller: string, log: Log, disableLogging: boolean);
cancel(): void;
teardown(): void;
protected reset(): void;
protected getDelay(rawTime: number, units: TimeUnits, random?: boolean | undefined, logStrings?: DelayLogStrings | undefined): number;
protected logIfDesired(message: string, ...parameters: (string | number)[]): void;
}
export {};