"""Config flow for iBeacon Tracker integration.""" from __future__ import annotations from typing import Any from homeassistant import config_entries from homeassistant.components import bluetooth from homeassistant.data_entry_flow import FlowResult from .const import DOMAIN class ConfigFlow(config_entries.ConfigFlow, domain=DOMAIN): """Handle a config flow for iBeacon Tracker.""" VERSION = 1 async def async_step_user( self, user_input: dict[str, Any] | None = None ) -> FlowResult: """Handle the initial step.""" if self._async_current_entries(): return self.async_abort(reason="single_instance_allowed") if not bluetooth.async_scanner_count(self.hass, connectable=False): return self.async_abort(reason="bluetooth_not_available") if user_input is not None: return self.async_create_entry(title="iBeacon Tracker", data={}) return self.async_show_form(step_id="user")