import type { CharacteristicValue, PlatformAccessory } from 'homebridge';
import { VirtualAccessoriesPlatform } from '../platform.js';
import { AccessoryConfiguration } from '../configuration/configurationAccessory.js';
import { ExternalAccessory } from './externalAccessory.js';
/**
 * SmartSpeaker - Accessory implementation
 */
export declare class SmartSpeaker extends ExternalAccessory {
    static readonly ACCESSORY_TYPE_NAME: string;
    static readonly PLAY: number;
    static readonly PAUSE: number;
    static readonly STOP: number;
    static readonly LOADING: number;
    static readonly INTERRUPTED: number;
    static readonly MUTED: boolean;
    static readonly UNMUTED: boolean;
    private readonly stateStorageKey;
    private readonly muteStorageKey;
    private readonly volumeStorageKey;
    private readonly configuredNameStorageKey;
    private states;
    constructor(platform: VirtualAccessoriesPlatform, accessory: PlatformAccessory, accessoryConfiguration: AccessoryConfiguration);
    getCurrentMediaState(): Promise<CharacteristicValue>;
    setTargetMediaState(value: CharacteristicValue): Promise<void>;
    getTargetMediaState(): Promise<CharacteristicValue>;
    setConfiguredName(value: CharacteristicValue): Promise<void>;
    getConfiguredName(): Promise<CharacteristicValue>;
    setVolume(value: CharacteristicValue): Promise<void>;
    getVolume(): Promise<CharacteristicValue>;
    setMute(value: CharacteristicValue): Promise<void>;
    getMute(): Promise<CharacteristicValue>;
    protected getJsonState(): string;
    protected getAccessoryTypeName(): string;
    static getStateName(state: number): string;
}
