import type { CharacteristicValue, PlatformAccessory } from 'homebridge'; import { VirtualAccessoriesPlatform } from '../platform.js'; import { AccessoryConfiguration } from '../configuration/configurationAccessory.js'; import { Accessory } from './accessory.js'; import { UpdatableObstruction } from './updatableObstruction.js'; /** * GarageDoor - Accessory implementation */ export declare class GarageDoor extends Accessory implements UpdatableObstruction { private static readonly DEFAULT_TIMEOUT_SECS; private readonly stateStorageKey; private readonly targetStorageKey; private readonly obstructionStorageKey; private transitionTimer; private transitionDuration; constructor(platform: VirtualAccessoriesPlatform, accessory: PlatformAccessory, accessoryConfiguration: AccessoryConfiguration); getCurrentDoorStateHandler(): Promise; getTargetDoorStateHandler(): Promise; setTargetDoorStateHandler(value: CharacteristicValue): Promise; getObstructionDetectedHandler(): Promise; protected getJsonState(): string; updateObstruction(value: boolean, accessoryId: string): void; static get OPEN(): number; static get CLOSED(): number; static get OPENING(): number; static get CLOSING(): number; static get STOPPED(): number; static get OBSTRUCTION_DETECTED(): boolean; static get OBSTRUCTION_NOT_DETECTED(): boolean; static getDoorStateName(state: number): string; static getObstructionDetectedName(state: boolean): string; }