import { Characteristic as TCharacteristic, Logger, Nullable, Service } from 'homebridge';
import { HSBConfig } from './config.js';
import { HSBXCallbackUrlServer } from './server/index.js';
import { HSBUtils } from './utils.js';
export type HSBServiceType = typeof Service.Outlet | typeof Service.Switch;
export type HSBServiceConfig = HSBConfig['services'][number];
export declare class HSBService {
    private readonly log;
    private readonly service;
    private readonly serviceConfig;
    private readonly Characteristic;
    private readonly state;
    private readonly shortcut;
    constructor(log: Logger, service: Service, serviceConfig: HSBServiceConfig, server: Nullable<HSBXCallbackUrlServer>, utils: HSBUtils, Characteristic: typeof TCharacteristic);
    private getOn;
    private setOn;
    private readonly toggleBackOffTimeout;
    private get logSetHandlerContext();
    private get logShortcutRunContext();
}
//# sourceMappingURL=service.d.ts.map