Add binary_sensor setup type hints [a-f] (#63268)

Co-authored-by: epenet <epenet@users.noreply.github.com>
This commit is contained in:
epenet 2022-01-03 13:10:41 +01:00 committed by GitHub
parent 6f4b25950c
commit fbabad1d1d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
23 changed files with 222 additions and 29 deletions

View file

@ -1,13 +1,23 @@
"""Support for Android IP Webcam binary sensors.""" """Support for Android IP Webcam binary sensors."""
from __future__ import annotations
from homeassistant.components.binary_sensor import ( from homeassistant.components.binary_sensor import (
BinarySensorDeviceClass, BinarySensorDeviceClass,
BinarySensorEntity, BinarySensorEntity,
) )
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
from . import CONF_HOST, CONF_NAME, DATA_IP_WEBCAM, KEY_MAP, AndroidIPCamEntity from . import CONF_HOST, CONF_NAME, DATA_IP_WEBCAM, KEY_MAP, AndroidIPCamEntity
async def async_setup_platform(hass, config, async_add_entities, discovery_info=None): async def async_setup_platform(
hass: HomeAssistant,
config: ConfigType,
async_add_entities: AddEntitiesCallback,
discovery_info: DiscoveryInfoType | None = None,
) -> None:
"""Set up the IP Webcam binary sensors.""" """Set up the IP Webcam binary sensors."""
if discovery_info is None: if discovery_info is None:
return return

View file

@ -1,9 +1,14 @@
"""Support for tracking the online status of a UPS.""" """Support for tracking the online status of a UPS."""
from __future__ import annotations
import voluptuous as vol import voluptuous as vol
from homeassistant.components.binary_sensor import PLATFORM_SCHEMA, BinarySensorEntity from homeassistant.components.binary_sensor import PLATFORM_SCHEMA, BinarySensorEntity
from homeassistant.const import CONF_NAME from homeassistant.const import CONF_NAME
from homeassistant.core import HomeAssistant
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
from . import DOMAIN, KEY_STATUS, VALUE_ONLINE from . import DOMAIN, KEY_STATUS, VALUE_ONLINE
@ -13,7 +18,12 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(
) )
def setup_platform(hass, config, add_entities, discovery_info=None): def setup_platform(
hass: HomeAssistant,
config: ConfigType,
add_entities: AddEntitiesCallback,
discovery_info: DiscoveryInfoType | None = None,
) -> None:
"""Set up an APCUPSd Online Status binary sensor.""" """Set up an APCUPSd Online Status binary sensor."""
apcups_data = hass.data[DOMAIN] apcups_data = hass.data[DOMAIN]

View file

@ -1,11 +1,16 @@
"""Support for Aurora Forecast binary sensor.""" """Support for Aurora Forecast binary sensor."""
from homeassistant.components.binary_sensor import BinarySensorEntity from homeassistant.components.binary_sensor import BinarySensorEntity
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from . import AuroraEntity from . import AuroraEntity
from .const import COORDINATOR, DOMAIN from .const import COORDINATOR, DOMAIN
async def async_setup_entry(hass, entry, async_add_entries): async def async_setup_entry(
hass: HomeAssistant, entry: ConfigEntry, async_add_entries: AddEntitiesCallback
) -> None:
"""Set up the binary_sensor platform.""" """Set up the binary_sensor platform."""
coordinator = hass.data[DOMAIN][entry.entry_id][COORDINATOR] coordinator = hass.data[DOMAIN][entry.entry_id][COORDINATOR]
name = f"{coordinator.name} Aurora Visibility Alert" name = f"{coordinator.name} Aurora Visibility Alert"

View file

@ -1,5 +1,4 @@
"""Support for Axis binary sensors.""" """Support for Axis binary sensors."""
from datetime import timedelta from datetime import timedelta
from axis.event_stream import ( from axis.event_stream import (
@ -20,8 +19,10 @@ from homeassistant.components.binary_sensor import (
BinarySensorDeviceClass, BinarySensorDeviceClass,
BinarySensorEntity, BinarySensorEntity,
) )
from homeassistant.core import callback from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers.dispatcher import async_dispatcher_connect from homeassistant.helpers.dispatcher import async_dispatcher_connect
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.event import async_track_point_in_utc_time from homeassistant.helpers.event import async_track_point_in_utc_time
from homeassistant.util.dt import utcnow from homeassistant.util.dt import utcnow
@ -36,7 +37,11 @@ DEVICE_CLASS = {
} }
async def async_setup_entry(hass, config_entry, async_add_entities): async def async_setup_entry(
hass: HomeAssistant,
config_entry: ConfigEntry,
async_add_entities: AddEntitiesCallback,
) -> None:
"""Set up a Axis binary sensor.""" """Set up a Axis binary sensor."""
device = hass.data[AXIS_DOMAIN][config_entry.unique_id] device = hass.data[AXIS_DOMAIN][config_entry.unique_id]

View file

@ -1,4 +1,6 @@
"""Use Bayesian Inference to trigger a binary sensor.""" """Use Bayesian Inference to trigger a binary sensor."""
from __future__ import annotations
from collections import OrderedDict from collections import OrderedDict
import logging import logging
@ -16,10 +18,11 @@ from homeassistant.const import (
CONF_VALUE_TEMPLATE, CONF_VALUE_TEMPLATE,
STATE_UNKNOWN, STATE_UNKNOWN,
) )
from homeassistant.core import callback from homeassistant.core import HomeAssistant, callback
from homeassistant.exceptions import ConditionError, TemplateError from homeassistant.exceptions import ConditionError, TemplateError
from homeassistant.helpers import condition from homeassistant.helpers import condition
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.event import ( from homeassistant.helpers.event import (
TrackTemplate, TrackTemplate,
async_track_state_change_event, async_track_state_change_event,
@ -27,6 +30,7 @@ from homeassistant.helpers.event import (
) )
from homeassistant.helpers.reload import async_setup_reload_service from homeassistant.helpers.reload import async_setup_reload_service
from homeassistant.helpers.template import result_as_boolean from homeassistant.helpers.template import result_as_boolean
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
from . import DOMAIN, PLATFORMS from . import DOMAIN, PLATFORMS
@ -107,7 +111,12 @@ def update_probability(prior, prob_given_true, prob_given_false):
return numerator / denominator return numerator / denominator
async def async_setup_platform(hass, config, async_add_entities, discovery_info=None): async def async_setup_platform(
hass: HomeAssistant,
config: ConfigType,
async_add_entities: AddEntitiesCallback,
discovery_info: DiscoveryInfoType | None = None,
) -> None:
"""Set up the Bayesian Binary sensor.""" """Set up the Bayesian Binary sensor."""
await async_setup_reload_service(hass, DOMAIN, PLATFORMS) await async_setup_reload_service(hass, DOMAIN, PLATFORMS)

View file

@ -1,10 +1,15 @@
"""Support for binary sensor using Beaglebone Black GPIO.""" """Support for binary sensor using Beaglebone Black GPIO."""
from __future__ import annotations
import voluptuous as vol import voluptuous as vol
from homeassistant.components import bbb_gpio from homeassistant.components import bbb_gpio
from homeassistant.components.binary_sensor import PLATFORM_SCHEMA, BinarySensorEntity from homeassistant.components.binary_sensor import PLATFORM_SCHEMA, BinarySensorEntity
from homeassistant.const import CONF_NAME, DEVICE_DEFAULT_NAME from homeassistant.const import CONF_NAME, DEVICE_DEFAULT_NAME
from homeassistant.core import HomeAssistant
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
CONF_PINS = "pins" CONF_PINS = "pins"
CONF_BOUNCETIME = "bouncetime" CONF_BOUNCETIME = "bouncetime"
@ -29,7 +34,12 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(
) )
def setup_platform(hass, config, add_entities, discovery_info=None): def setup_platform(
hass: HomeAssistant,
config: ConfigType,
add_entities: AddEntitiesCallback,
discovery_info: DiscoveryInfoType | None = None,
) -> None:
"""Set up the Beaglebone Black GPIO devices.""" """Set up the Beaglebone Black GPIO devices."""
pins = config[CONF_PINS] pins = config[CONF_PINS]

View file

@ -6,7 +6,10 @@ from homeassistant.components.binary_sensor import (
BinarySensorEntity, BinarySensorEntity,
BinarySensorEntityDescription, BinarySensorEntityDescription,
) )
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity import DeviceInfo, EntityCategory from homeassistant.helpers.entity import DeviceInfo, EntityCategory
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from .const import ( from .const import (
DEFAULT_BRAND, DEFAULT_BRAND,
@ -35,7 +38,9 @@ BINARY_SENSORS_TYPES: tuple[BinarySensorEntityDescription, ...] = (
) )
async def async_setup_entry(hass, config, async_add_entities): async def async_setup_entry(
hass: HomeAssistant, config: ConfigEntry, async_add_entities: AddEntitiesCallback
) -> None:
"""Set up the blink binary sensors.""" """Set up the blink binary sensors."""
data = hass.data[DOMAIN][config.entry_id] data = hass.data[DOMAIN][config.entry_id]

View file

@ -1,4 +1,6 @@
"""Support the binary sensors of a BloomSky weather station.""" """Support the binary sensors of a BloomSky weather station."""
from __future__ import annotations
import voluptuous as vol import voluptuous as vol
from homeassistant.components.binary_sensor import ( from homeassistant.components.binary_sensor import (
@ -7,7 +9,10 @@ from homeassistant.components.binary_sensor import (
BinarySensorEntity, BinarySensorEntity,
) )
from homeassistant.const import CONF_MONITORED_CONDITIONS from homeassistant.const import CONF_MONITORED_CONDITIONS
from homeassistant.core import HomeAssistant
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
from . import DOMAIN from . import DOMAIN
@ -22,7 +27,12 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(
) )
def setup_platform(hass, config, add_entities, discovery_info=None): def setup_platform(
hass: HomeAssistant,
config: ConfigType,
add_entities: AddEntitiesCallback,
discovery_info: DiscoveryInfoType | None = None,
) -> None:
"""Set up the available BloomSky weather binary sensors.""" """Set up the available BloomSky weather binary sensors."""
# Default needed in case of discovery # Default needed in case of discovery
if discovery_info is not None: if discovery_info is not None:

View file

@ -1,19 +1,29 @@
"""Support for Home Assistant Cloud binary sensors.""" """Support for Home Assistant Cloud binary sensors."""
from __future__ import annotations
import asyncio import asyncio
from homeassistant.components.binary_sensor import ( from homeassistant.components.binary_sensor import (
BinarySensorDeviceClass, BinarySensorDeviceClass,
BinarySensorEntity, BinarySensorEntity,
) )
from homeassistant.core import HomeAssistant
from homeassistant.helpers.dispatcher import async_dispatcher_connect from homeassistant.helpers.dispatcher import async_dispatcher_connect
from homeassistant.helpers.entity import EntityCategory from homeassistant.helpers.entity import EntityCategory
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
from .const import DISPATCHER_REMOTE_UPDATE, DOMAIN from .const import DISPATCHER_REMOTE_UPDATE, DOMAIN
WAIT_UNTIL_CHANGE = 3 WAIT_UNTIL_CHANGE = 3
async def async_setup_platform(hass, config, async_add_entities, discovery_info=None): async def async_setup_platform(
hass: HomeAssistant,
config: ConfigType,
async_add_entities: AddEntitiesCallback,
discovery_info: DiscoveryInfoType | None = None,
) -> None:
"""Set up the cloud binary sensors.""" """Set up the cloud binary sensors."""
if discovery_info is None: if discovery_info is None:
return return

View file

@ -1,15 +1,25 @@
"""Support for the for Danfoss Air HRV binary sensors.""" """Support for the for Danfoss Air HRV binary sensors."""
from __future__ import annotations
from pydanfossair.commands import ReadCommand from pydanfossair.commands import ReadCommand
from homeassistant.components.binary_sensor import ( from homeassistant.components.binary_sensor import (
BinarySensorDeviceClass, BinarySensorDeviceClass,
BinarySensorEntity, BinarySensorEntity,
) )
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
from . import DOMAIN as DANFOSS_AIR_DOMAIN from . import DOMAIN as DANFOSS_AIR_DOMAIN
def setup_platform(hass, config, add_entities, discovery_info=None): def setup_platform(
hass: HomeAssistant,
config: ConfigType,
add_entities: AddEntitiesCallback,
discovery_info: DiscoveryInfoType | None = None,
) -> None:
"""Set up the available Danfoss Air sensors etc.""" """Set up the available Danfoss Air sensors etc."""
data = hass.data[DANFOSS_AIR_DOMAIN] data = hass.data[DANFOSS_AIR_DOMAIN]

View file

@ -1,14 +1,25 @@
"""Demo platform that has two fake binary sensors.""" """Demo platform that has two fake binary sensors."""
from __future__ import annotations
from homeassistant.components.binary_sensor import ( from homeassistant.components.binary_sensor import (
BinarySensorDeviceClass, BinarySensorDeviceClass,
BinarySensorEntity, BinarySensorEntity,
) )
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity import DeviceInfo from homeassistant.helpers.entity import DeviceInfo
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
from . import DOMAIN from . import DOMAIN
async def async_setup_platform(hass, config, async_add_entities, discovery_info=None): async def async_setup_platform(
hass: HomeAssistant,
config: ConfigType,
async_add_entities: AddEntitiesCallback,
discovery_info: DiscoveryInfoType | None = None,
) -> None:
"""Set up the Demo binary sensor platform.""" """Set up the Demo binary sensor platform."""
async_add_entities( async_add_entities(
[ [
@ -25,7 +36,11 @@ async def async_setup_platform(hass, config, async_add_entities, discovery_info=
) )
async def async_setup_entry(hass, config_entry, async_add_entities): async def async_setup_entry(
hass: HomeAssistant,
config_entry: ConfigEntry,
async_add_entities: AddEntitiesCallback,
) -> None:
"""Set up the Demo config entry.""" """Set up the Demo config entry."""
await async_setup_platform(hass, {}, async_add_entities) await async_setup_platform(hass, {}, async_add_entities)

View file

@ -5,12 +5,19 @@ from homeassistant.components.binary_sensor import (
BinarySensorDeviceClass, BinarySensorDeviceClass,
BinarySensorEntity, BinarySensorEntity,
) )
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity import DeviceInfo from homeassistant.helpers.entity import DeviceInfo
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from .const import DOMAIN, ECOBEE_MODEL_TO_NAME, MANUFACTURER from .const import DOMAIN, ECOBEE_MODEL_TO_NAME, MANUFACTURER
async def async_setup_entry(hass, config_entry, async_add_entities): async def async_setup_entry(
hass: HomeAssistant,
config_entry: ConfigEntry,
async_add_entities: AddEntitiesCallback,
) -> None:
"""Set up ecobee binary (occupancy) sensors.""" """Set up ecobee binary (occupancy) sensors."""
data = hass.data[DOMAIN] data = hass.data[DOMAIN]
dev = [] dev = []

View file

@ -8,6 +8,9 @@ from homeassistant.components.binary_sensor import (
BinarySensorEntity, BinarySensorEntity,
BinarySensorEntityDescription, BinarySensorEntityDescription,
) )
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from . import EcoNetEntity from . import EcoNetEntity
from .const import DOMAIN, EQUIPMENT from .const import DOMAIN, EQUIPMENT
@ -36,7 +39,9 @@ BINARY_SENSOR_TYPES: tuple[BinarySensorEntityDescription, ...] = (
) )
async def async_setup_entry(hass, entry, async_add_entities): async def async_setup_entry(
hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback
) -> None:
"""Set up EcoNet binary sensor based on a config entry.""" """Set up EcoNet binary sensor based on a config entry."""
equipment = hass.data[DOMAIN][EQUIPMENT][entry.entry_id] equipment = hass.data[DOMAIN][EQUIPMENT][entry.entry_id]
all_equipment = equipment[EquipmentType.WATER_HEATER].copy() all_equipment = equipment[EquipmentType.WATER_HEATER].copy()

View file

@ -1,9 +1,14 @@
"""Interfaces with Egardia/Woonveilig alarm control panel.""" """Interfaces with Egardia/Woonveilig alarm control panel."""
from __future__ import annotations
from homeassistant.components.binary_sensor import ( from homeassistant.components.binary_sensor import (
BinarySensorDeviceClass, BinarySensorDeviceClass,
BinarySensorEntity, BinarySensorEntity,
) )
from homeassistant.const import STATE_OFF, STATE_ON from homeassistant.const import STATE_OFF, STATE_ON
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
from . import ATTR_DISCOVER_DEVICES, EGARDIA_DEVICE from . import ATTR_DISCOVER_DEVICES, EGARDIA_DEVICE
@ -14,7 +19,12 @@ EGARDIA_TYPE_TO_DEVICE_CLASS = {
} }
async def async_setup_platform(hass, config, async_add_entities, discovery_info=None): async def async_setup_platform(
hass: HomeAssistant,
config: ConfigType,
async_add_entities: AddEntitiesCallback,
discovery_info: DiscoveryInfoType | None = None,
) -> None:
"""Initialize the platform.""" """Initialize the platform."""
if discovery_info is None or discovery_info[ATTR_DISCOVER_DEVICES] is None: if discovery_info is None or discovery_info[ATTR_DISCOVER_DEVICES] is None:
return return

View file

@ -1,4 +1,6 @@
"""Support for EnOcean binary sensors.""" """Support for EnOcean binary sensors."""
from __future__ import annotations
import voluptuous as vol import voluptuous as vol
from homeassistant.components.binary_sensor import ( from homeassistant.components.binary_sensor import (
@ -7,7 +9,10 @@ from homeassistant.components.binary_sensor import (
BinarySensorEntity, BinarySensorEntity,
) )
from homeassistant.const import CONF_DEVICE_CLASS, CONF_ID, CONF_NAME from homeassistant.const import CONF_DEVICE_CLASS, CONF_ID, CONF_NAME
from homeassistant.core import HomeAssistant
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
from .device import EnOceanEntity from .device import EnOceanEntity
@ -24,7 +29,12 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(
) )
def setup_platform(hass, config, add_entities, discovery_info=None): def setup_platform(
hass: HomeAssistant,
config: ConfigType,
add_entities: AddEntitiesCallback,
discovery_info: DiscoveryInfoType | None = None,
) -> None:
"""Set up the Binary Sensor platform for EnOcean.""" """Set up the Binary Sensor platform for EnOcean."""
dev_id = config.get(CONF_ID) dev_id = config.get(CONF_ID)
dev_name = config.get(CONF_NAME) dev_name = config.get(CONF_NAME)

View file

@ -7,12 +7,17 @@ from homeassistant.components.binary_sensor import (
BinarySensorEntity, BinarySensorEntity,
BinarySensorEntityDescription, BinarySensorEntityDescription,
) )
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.update_coordinator import CoordinatorEntity from homeassistant.helpers.update_coordinator import CoordinatorEntity
from .const import DOMAIN, FAA_BINARY_SENSORS from .const import DOMAIN, FAA_BINARY_SENSORS
async def async_setup_entry(hass, entry, async_add_entities): async def async_setup_entry(
hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback
) -> None:
"""Set up a FAA sensor based on a config entry.""" """Set up a FAA sensor based on a config entry."""
coordinator = hass.data[DOMAIN][entry.entry_id] coordinator = hass.data[DOMAIN][entry.entry_id]

View file

@ -1,4 +1,6 @@
"""Provides a binary sensor which is a collection of ffmpeg tools.""" """Provides a binary sensor which is a collection of ffmpeg tools."""
from __future__ import annotations
import haffmpeg.sensor as ffmpeg_sensor import haffmpeg.sensor as ffmpeg_sensor
import voluptuous as vol import voluptuous as vol
@ -15,8 +17,10 @@ from homeassistant.components.ffmpeg import (
get_ffmpeg_manager, get_ffmpeg_manager,
) )
from homeassistant.const import CONF_NAME, CONF_REPEAT from homeassistant.const import CONF_NAME, CONF_REPEAT
from homeassistant.core import callback from homeassistant.core import HomeAssistant, callback
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
CONF_RESET = "reset" CONF_RESET = "reset"
CONF_CHANGES = "changes" CONF_CHANGES = "changes"
@ -47,7 +51,12 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(
) )
async def async_setup_platform(hass, config, async_add_entities, discovery_info=None): async def async_setup_platform(
hass: HomeAssistant,
config: ConfigType,
async_add_entities: AddEntitiesCallback,
discovery_info: DiscoveryInfoType | None = None,
) -> None:
"""Set up the FFmpeg binary motion sensor.""" """Set up the FFmpeg binary motion sensor."""
manager = get_ffmpeg_manager(hass) manager = get_ffmpeg_manager(hass)
entity = FFmpegMotion(hass, manager, config) entity = FFmpegMotion(hass, manager, config)

View file

@ -1,4 +1,6 @@
"""Provides a binary sensor which is a collection of ffmpeg tools.""" """Provides a binary sensor which is a collection of ffmpeg tools."""
from __future__ import annotations
import haffmpeg.sensor as ffmpeg_sensor import haffmpeg.sensor as ffmpeg_sensor
import voluptuous as vol import voluptuous as vol
@ -15,7 +17,10 @@ from homeassistant.components.ffmpeg import (
) )
from homeassistant.components.ffmpeg_motion.binary_sensor import FFmpegBinarySensor from homeassistant.components.ffmpeg_motion.binary_sensor import FFmpegBinarySensor
from homeassistant.const import CONF_NAME from homeassistant.const import CONF_NAME
from homeassistant.core import HomeAssistant
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
CONF_PEAK = "peak" CONF_PEAK = "peak"
CONF_DURATION = "duration" CONF_DURATION = "duration"
@ -42,7 +47,12 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(
) )
async def async_setup_platform(hass, config, async_add_entities, discovery_info=None): async def async_setup_platform(
hass: HomeAssistant,
config: ConfigType,
async_add_entities: AddEntitiesCallback,
discovery_info: DiscoveryInfoType | None = None,
) -> None:
"""Set up the FFmpeg noise binary sensor.""" """Set up the FFmpeg noise binary sensor."""
manager = get_ffmpeg_manager(hass) manager = get_ffmpeg_manager(hass)
entity = FFmpegNoise(hass, manager, config) entity = FFmpegNoise(hass, manager, config)

View file

@ -1,10 +1,15 @@
"""Support for Fibaro binary sensors.""" """Support for Fibaro binary sensors."""
from __future__ import annotations
from homeassistant.components.binary_sensor import ( from homeassistant.components.binary_sensor import (
DOMAIN, DOMAIN,
BinarySensorDeviceClass, BinarySensorDeviceClass,
BinarySensorEntity, BinarySensorEntity,
) )
from homeassistant.const import CONF_DEVICE_CLASS, CONF_ICON from homeassistant.const import CONF_DEVICE_CLASS, CONF_ICON
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
from . import FIBARO_DEVICES, FibaroDevice from . import FIBARO_DEVICES, FibaroDevice
@ -23,7 +28,12 @@ SENSOR_TYPES = {
} }
def setup_platform(hass, config, add_entities, discovery_info=None): def setup_platform(
hass: HomeAssistant,
config: ConfigType,
add_entities: AddEntitiesCallback,
discovery_info: DiscoveryInfoType | None = None,
) -> None:
"""Perform the setup for Fibaro controller devices.""" """Perform the setup for Fibaro controller devices."""
if discovery_info is None: if discovery_info is None:
return return

View file

@ -1,4 +1,6 @@
"""Support to use flic buttons as a binary sensor.""" """Support to use flic buttons as a binary sensor."""
from __future__ import annotations
import logging import logging
import threading import threading
@ -20,7 +22,10 @@ from homeassistant.const import (
CONF_TIMEOUT, CONF_TIMEOUT,
EVENT_HOMEASSISTANT_STOP, EVENT_HOMEASSISTANT_STOP,
) )
from homeassistant.core import HomeAssistant
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
_LOGGER = logging.getLogger(__name__) _LOGGER = logging.getLogger(__name__)
@ -55,7 +60,12 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(
) )
def setup_platform(hass, config, add_entities, discovery_info=None): def setup_platform(
hass: HomeAssistant,
config: ConfigType,
add_entities: AddEntitiesCallback,
discovery_info: DiscoveryInfoType | None = None,
) -> None:
"""Set up the flic platform.""" """Set up the flic platform."""
# Initialize flic client responsible for # Initialize flic client responsible for

View file

@ -6,6 +6,9 @@ from homeassistant.components.binary_sensor import (
BinarySensorEntity, BinarySensorEntity,
BinarySensorEntityDescription, BinarySensorEntityDescription,
) )
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from . import FliprEntity from . import FliprEntity
from .const import DOMAIN from .const import DOMAIN
@ -24,7 +27,11 @@ BINARY_SENSORS_TYPES: tuple[BinarySensorEntityDescription, ...] = (
) )
async def async_setup_entry(hass, config_entry, async_add_entities): async def async_setup_entry(
hass: HomeAssistant,
config_entry: ConfigEntry,
async_add_entities: AddEntitiesCallback,
) -> None:
"""Defer sensor setup of flipr binary sensors.""" """Defer sensor setup of flipr binary sensors."""
coordinator = hass.data[DOMAIN][config_entry.entry_id] coordinator = hass.data[DOMAIN][config_entry.entry_id]

View file

@ -5,13 +5,20 @@ from homeassistant.components.binary_sensor import (
BinarySensorDeviceClass, BinarySensorDeviceClass,
BinarySensorEntity, BinarySensorEntity,
) )
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from .const import DOMAIN as FLO_DOMAIN from .const import DOMAIN as FLO_DOMAIN
from .device import FloDeviceDataUpdateCoordinator from .device import FloDeviceDataUpdateCoordinator
from .entity import FloEntity from .entity import FloEntity
async def async_setup_entry(hass, config_entry, async_add_entities): async def async_setup_entry(
hass: HomeAssistant,
config_entry: ConfigEntry,
async_add_entities: AddEntitiesCallback,
) -> None:
"""Set up the Flo sensors from config entry.""" """Set up the Flo sensors from config entry."""
devices: list[FloDeviceDataUpdateCoordinator] = hass.data[FLO_DOMAIN][ devices: list[FloDeviceDataUpdateCoordinator] = hass.data[FLO_DOMAIN][
config_entry.entry_id config_entry.entry_id

View file

@ -3,8 +3,10 @@ from homeassistant.components.binary_sensor import (
BinarySensorDeviceClass, BinarySensorDeviceClass,
BinarySensorEntity, BinarySensorEntity,
) )
from homeassistant.core import callback from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers.entity import DeviceInfo from homeassistant.helpers.entity import DeviceInfo
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.update_coordinator import CoordinatorEntity from homeassistant.helpers.update_coordinator import CoordinatorEntity
from .const import DOMAIN from .const import DOMAIN
@ -26,7 +28,9 @@ DEVICE_KEY_MAP = {
SUPPORTED_SENSORS = {"smokeSensor", "occupancySensor", "motionSensor", "contactSensor"} SUPPORTED_SENSORS = {"smokeSensor", "occupancySensor", "motionSensor", "contactSensor"}
async def async_setup_entry(hass, entry, async_add_entities): async def async_setup_entry(
hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback
) -> None:
"""Set up Freedompro binary_sensor.""" """Set up Freedompro binary_sensor."""
coordinator = hass.data[DOMAIN][entry.entry_id] coordinator = hass.data[DOMAIN][entry.entry_id]
async_add_entities( async_add_entities(