import type { TServiceParams } from "@digital-alchemy/core"; import type { AddEntityOptions, BasicAddParams, CallbackData, SettableConfiguration } from "../../helpers/index.mts"; export type AlarmControlPanelStates = "disarmed" | "armed_home" | "armed_away" | "armed_night" | "armed_vacation" | "armed_custom_bypass" | "pending" | "arming" | "disarming" | "triggered"; export type AlarmControlPanelConfiguration = { state?: SettableConfiguration; /** * Whether the code is required for arm actions. * * default: true */ code_arm_required?: SettableConfiguration; /** * One of the states listed in the code formats section. */ code_format?: "number" | "text"; /** * Last change triggered by. */ changed_by?: SettableConfiguration; supported_features?: number; /** * default: true */ managed?: boolean; }; export type AlarmControlPanelEvents = { arm_custom_bypass: { code: string; }; trigger: { code: string; }; arm_vacation: { code: string; }; arm_night: { code: string; }; arm_away: { code: string; }; arm_home: { code: string; }; alarm_disarm: { code: string; }; }; export declare function VirtualAlarmControlPanel({ context, synapse, logger }: TServiceParams): >>({ managed, ...options }: AddEntityOptions, AlarmControlPanelEvents, PARAMS["attributes"], PARAMS["locals"], DATA>) => import("../../helpers/common-config.mts").SynapseEntityProxy, AlarmControlPanelEvents, PARAMS["attributes"], PARAMS["locals"], DATA, import("@digital-alchemy/hass").PICK_ENTITY>;