UNPKG

homebridge-pioneer-avr-2025

Version:

A Pioneer AVR plugin for homebridge. This plugin is designed for Pioneer models that use Telnet Commands (e.g., VSX-922). It may not be compatible with newer models (e.g., VSX-LX304).

99 lines 3.58 kB
import type { Service, Logging } from 'homebridge'; import type { TelnetAvr } from '../telnet-avr/telnetAvr'; import type { AVState } from './pioneerAvr'; export interface Device { name: string; origName: string; host: string; port: number; source: string; fqdn: string; maxVolume?: number; minVolume?: number; inputSwitches?: string[]; listeningMode?: string; listeningModeFallback?: string; listeningModeOther?: string; } /** * This mixin adds input management methods to a base class, including input setup, handling, * and monitoring functionality. * @param Base - The base class to extend with input management methods. * @returns A new class that extends the base class with added input handling capabilities. */ export declare function InputManagementMixin<TBase extends new (...args: any[]) => { log: Logging; state: AVState; pioneerAvrClassCallback?: () => Promise<void>; lastUserInteraction: number; telnetAvr: TelnetAvr; isReady: boolean; platform: any; device: Device; }>(Base: TBase): { new (...args: any[]): { accessory: any; prefsDir: string; inputCacheFile: string; inputBeingAdded: boolean | string; inputBeingAddedWaitCount: number; inputMissing: string[][]; inputs: any[]; tvService: Service; enabledServices: Service[]; inputToType: Record<string, number>; pioneerAvrClassCallbackCalled: boolean; initCount: number; booleanToVisibilityState: (visible: boolean) => number; visibilityStateToBoolean: (state: number) => boolean; saveInputsTimeout: NodeJS.Timeout; /** * Loads all available inputs, either from cache or by refreshing. * @param callback - Optional callback function to run after loading inputs. */ loadInputs(callback?: () => void): Promise<void>; /** * Saves the current inputs to the cache file. */ saveInputs(): void; /** * Retrieves the current input status. * @param callback - The callback function to handle the input status result. */ inputStatus(callback: (err: any, inputStatus?: number) => void): void; /** * Sets a specific input on the AVR. * @param id - The identifier of the input to set. */ setInput(id: string): void; /** * Renames an existing input on the AVR. * @param id - The identifier of the input to rename. * @param newName - The new name to assign to the input. */ renameInput(id: string, newName: string): Promise<void>; /** * Placeholder for adding an input source service; should be overridden externally. */ addInputSourceService(_error: any, _key: any): void; /** * Placeholder for setting the power state of the AVR. * Intended to be overridden externally. */ functionSetActiveIdentifier(_set: number): void; /** * Updates the current input on the AVR. * @param callback - The callback function to execute after updating. */ __updateInput(callback: () => void): Promise<void>; log: Logging; state: AVState; pioneerAvrClassCallback?: () => Promise<void>; lastUserInteraction: number; telnetAvr: TelnetAvr; isReady: boolean; platform: any; device: Device; }; } & TBase; //# sourceMappingURL=inputs.d.ts.map