export * from './core/index.js';
export * from './protocols/index.js';
export * from './integrations/index.js';

import { AcaiaIntegration } from './integrations/acaia/index.js';
import { AcerProjectorIntegration } from './integrations/acer_projector/index.js';
import { AcmedaIntegration } from './integrations/acmeda/index.js';
import { ActiontecIntegration } from './integrations/actiontec/index.js';
import { AdaxIntegration } from './integrations/adax/index.js';
import { AdguardIntegration } from './integrations/adguard/index.js';
import { AdsIntegration } from './integrations/ads/index.js';
import { AdvantageAirIntegration } from './integrations/advantage_air/index.js';
import { AgentDvrIntegration } from './integrations/agent_dvr/index.js';
import { AirgradientIntegration } from './integrations/airgradient/index.js';
import { AirobotIntegration } from './integrations/airobot/index.js';
import { AirosIntegration } from './integrations/airos/index.js';
import { AirqIntegration } from './integrations/airq/index.js';
import { AirthingsBleIntegration } from './integrations/airthings_ble/index.js';
import { Airtouch4Integration } from './integrations/airtouch4/index.js';
import { Airtouch5Integration } from './integrations/airtouch5/index.js';
import { AirvisualProIntegration } from './integrations/airvisual_pro/index.js';
import { AirzoneIntegration } from './integrations/airzone/index.js';
import { AlarmdecoderIntegration } from './integrations/alarmdecoder/index.js';
import { AltruistIntegration } from './integrations/altruist/index.js';
import { AmcrestIntegration } from './integrations/amcrest/index.js';
import { AndroidIpWebcamIntegration } from './integrations/android_ip_webcam/index.js';
import { AndroidtvIntegration } from './integrations/androidtv/index.js';
import { AndroidtvRemoteIntegration } from './integrations/androidtv_remote/index.js';
import { AnelPwrctrlIntegration } from './integrations/anel_pwrctrl/index.js';
import { AnthemavIntegration } from './integrations/anthemav/index.js';
import { ApacheKafkaIntegration } from './integrations/apache_kafka/index.js';
import { ApcupsdIntegration } from './integrations/apcupsd/index.js';
import { AppleTvIntegration } from './integrations/apple_tv/index.js';
import { AprilaireIntegration } from './integrations/aprilaire/index.js';
import { ApsystemsIntegration } from './integrations/apsystems/index.js';
import { AqualogicIntegration } from './integrations/aqualogic/index.js';
import { AquostvIntegration } from './integrations/aquostv/index.js';
import { AranetIntegration } from './integrations/aranet/index.js';
import { ArcamFmjIntegration } from './integrations/arcam_fmj/index.js';
import { ArestIntegration } from './integrations/arest/index.js';
import { ArrisTg2492lgIntegration } from './integrations/arris_tg2492lg/index.js';
import { ArubaIntegration } from './integrations/aruba/index.js';
import { ArwnIntegration } from './integrations/arwn/index.js';
import { AsuswrtIntegration } from './integrations/asuswrt/index.js';
import { AtagIntegration } from './integrations/atag/index.js';
import { AtenPeIntegration } from './integrations/aten_pe/index.js';
import { AuroraAbbPoweroneIntegration } from './integrations/aurora_abb_powerone/index.js';
import { AveaIntegration } from './integrations/avea/index.js';
import { AwairIntegration } from './integrations/awair/index.js';
import { AxisIntegration } from './integrations/axis/index.js';
import { BafIntegration } from './integrations/baf/index.js';
import { BalboaIntegration } from './integrations/balboa/index.js';
import { BangOlufsenIntegration } from './integrations/bang_olufsen/index.js';
import { BboxIntegration } from './integrations/bbox/index.js';
import { BeewiSmartclimIntegration } from './integrations/beewi_smartclim/index.js';
import { BlackbirdIntegration } from './integrations/blackbird/index.js';
import { BleboxIntegration } from './integrations/blebox/index.js';
import { BlinksticklightIntegration } from './integrations/blinksticklight/index.js';
import { BluemaestroIntegration } from './integrations/bluemaestro/index.js';
import { BluesoundIntegration } from './integrations/bluesound/index.js';
import { BluetoothLeTrackerIntegration } from './integrations/bluetooth_le_tracker/index.js';
import { BondIntegration } from './integrations/bond/index.js';
import { BoschAlarmIntegration } from './integrations/bosch_alarm/index.js';
import { BoschShcIntegration } from './integrations/bosch_shc/index.js';
import { BraviatvIntegration } from './integrations/braviatv/index.js';
import { BroadlinkIntegration } from './integrations/broadlink/index.js';
import { BrotherIntegration } from './integrations/brother/index.js';
import { BryantEvolutionIntegration } from './integrations/bryant_evolution/index.js';
import { BsblanIntegration } from './integrations/bsblan/index.js';
import { BtHomeHub5Integration } from './integrations/bt_home_hub_5/index.js';
import { BtSmarthubIntegration } from './integrations/bt_smarthub/index.js';
import { BthomeIntegration } from './integrations/bthome/index.js';
import { CambridgeAudioIntegration } from './integrations/cambridge_audio/index.js';
import { CasperGlowIntegration } from './integrations/casper_glow/index.js';
import { CastIntegration } from './integrations/cast/index.js';
import { Ccm15Integration } from './integrations/ccm15/index.js';
import { ChannelsIntegration } from './integrations/channels/index.js';
import { CiscoIosIntegration } from './integrations/cisco_ios/index.js';
import { CiscoMobilityExpressIntegration } from './integrations/cisco_mobility_express/index.js';
import { ClementineIntegration } from './integrations/clementine/index.js';
import { CmusIntegration } from './integrations/cmus/index.js';
import { ComelitIntegration } from './integrations/comelit/index.js';
import { ComfoconnectIntegration } from './integrations/comfoconnect/index.js';
import { Concord232Integration } from './integrations/concord232/index.js';
import { Control4Integration } from './integrations/control4/index.js';
import { CoolmasterIntegration } from './integrations/coolmaster/index.js';
import { CppmTrackerIntegration } from './integrations/cppm_tracker/index.js';
import { CpuspeedIntegration } from './integrations/cpuspeed/index.js';
import { DaikinIntegration } from './integrations/daikin/index.js';
import { DanfossAirIntegration } from './integrations/danfoss_air/index.js';
import { DdwrtIntegration } from './integrations/ddwrt/index.js';
import { DeakoIntegration } from './integrations/deako/index.js';
import { DeconzIntegration } from './integrations/deconz/index.js';
import { DelugeIntegration } from './integrations/deluge/index.js';
import { DenonIntegration } from './integrations/denon/index.js';
import { DenonRs232Integration } from './integrations/denon_rs232/index.js';
import { DenonavrIntegration } from './integrations/denonavr/index.js';
import { DevialetIntegration } from './integrations/devialet/index.js';
import { DevoloHomeControlIntegration } from './integrations/devolo_home_control/index.js';
import { DevoloHomeNetworkIntegration } from './integrations/devolo_home_network/index.js';
import { DirectvIntegration } from './integrations/directv/index.js';
import { DlinkIntegration } from './integrations/dlink/index.js';
import { DlnaDmrIntegration } from './integrations/dlna_dmr/index.js';
import { DlnaDmsIntegration } from './integrations/dlna_dms/index.js';
import { DoodsIntegration } from './integrations/doods/index.js';
import { DoorbirdIntegration } from './integrations/doorbird/index.js';
import { DormakabaDkeyIntegration } from './integrations/dormakaba_dkey/index.js';
import { DovadoIntegration } from './integrations/dovado/index.js';
import { Dremel3dPrinterIntegration } from './integrations/dremel_3d_printer/index.js';
import { DropConnectIntegration } from './integrations/drop_connect/index.js';
import { DropletIntegration } from './integrations/droplet/index.js';
import { DsmrIntegration } from './integrations/dsmr/index.js';
import { DsmrReaderIntegration } from './integrations/dsmr_reader/index.js';
import { DucoIntegration } from './integrations/duco/index.js';
import { DunehdIntegration } from './integrations/dunehd/index.js';
import { DuotecnoIntegration } from './integrations/duotecno/index.js';
import { DynaliteIntegration } from './integrations/dynalite/index.js';
import { EarnEP1Integration } from './integrations/earn_e_p1/index.js';
import { EbusdIntegration } from './integrations/ebusd/index.js';
import { EcoalBoilerIntegration } from './integrations/ecoal_boiler/index.js';
import { EcoforestIntegration } from './integrations/ecoforest/index.js';
import { EcowittIntegration } from './integrations/ecowitt/index.js';
import { EdimaxIntegration } from './integrations/edimax/index.js';
import { Edl21Integration } from './integrations/edl21/index.js';
import { EgardiaIntegration } from './integrations/egardia/index.js';
import { EgaugeIntegration } from './integrations/egauge/index.js';
import { EheimdigitalIntegration } from './integrations/eheimdigital/index.js';
import { EkeybionyxIntegration } from './integrations/ekeybionyx/index.js';
import { ElgatoIntegration } from './integrations/elgato/index.js';
import { Elkm1Integration } from './integrations/elkm1/index.js';
import { ElvIntegration } from './integrations/elv/index.js';
import { EmbyIntegration } from './integrations/emby/index.js';
import { EmoncmsIntegration } from './integrations/emoncms/index.js';
import { EmoncmsHistoryIntegration } from './integrations/emoncms_history/index.js';
import { EmonitorIntegration } from './integrations/emonitor/index.js';
import { EmulatedHueIntegration } from './integrations/emulated_hue/index.js';
import { EmulatedKasaIntegration } from './integrations/emulated_kasa/index.js';
import { EmulatedRokuIntegration } from './integrations/emulated_roku/index.js';
import { EnergeniePowerSocketsIntegration } from './integrations/energenie_power_sockets/index.js';
import { Enigma2Integration } from './integrations/enigma2/index.js';
import { EnoceanIntegration } from './integrations/enocean/index.js';
import { EnphaseEnvoyIntegration } from './integrations/enphase_envoy/index.js';
import { EnvisalinkIntegration } from './integrations/envisalink/index.js';
import { EphemberIntegration } from './integrations/ephember/index.js';
import { EpsonIntegration } from './integrations/epson/index.js';
import { Eq3btsmartIntegration } from './integrations/eq3btsmart/index.js';
import { EsceaIntegration } from './integrations/escea/index.js';
import { EsphomeIntegration } from './integrations/esphome/index.js';
import { EufyIntegration } from './integrations/eufy/index.js';
import { EufylifeBleIntegration } from './integrations/eufylife_ble/index.js';
import { EurotronicCometblueIntegration } from './integrations/eurotronic_cometblue/index.js';
import { EverlightsIntegration } from './integrations/everlights/index.js';
import { EvilGeniusLabsIntegration } from './integrations/evil_genius_labs/index.js';
import { Fail2banIntegration } from './integrations/fail2ban/index.js';
import { FamilyhubIntegration } from './integrations/familyhub/index.js';
import { FibaroIntegration } from './integrations/fibaro/index.js';
import { FileIntegration } from './integrations/file/index.js';
import { FilesizeIntegration } from './integrations/filesize/index.js';
import { FingIntegration } from './integrations/fing/index.js';
import { FireflyIiiIntegration } from './integrations/firefly_iii/index.js';
import { FirmataIntegration } from './integrations/firmata/index.js';
import { FivemIntegration } from './integrations/fivem/index.js';
import { FjaraskupanIntegration } from './integrations/fjaraskupan/index.js';
import { FlexitIntegration } from './integrations/flexit/index.js';
import { FlexitBacnetIntegration } from './integrations/flexit_bacnet/index.js';
import { FlicIntegration } from './integrations/flic/index.js';
import { FluxLedIntegration } from './integrations/flux_led/index.js';
import { FolderIntegration } from './integrations/folder/index.js';
import { FolderWatcherIntegration } from './integrations/folder_watcher/index.js';
import { ForkedDaapdIntegration } from './integrations/forked_daapd/index.js';
import { FortiosIntegration } from './integrations/fortios/index.js';
import { FoscamIntegration } from './integrations/foscam/index.js';
import { FreeboxIntegration } from './integrations/freebox/index.js';
import { FritzIntegration } from './integrations/fritz/index.js';
import { FritzboxIntegration } from './integrations/fritzbox/index.js';
import { FritzboxCallmonitorIntegration } from './integrations/fritzbox_callmonitor/index.js';
import { FroniusIntegration } from './integrations/fronius/index.js';
import { FrontierSiliconIntegration } from './integrations/frontier_silicon/index.js';
import { FullyKioskIntegration } from './integrations/fully_kiosk/index.js';
import { FuturenowIntegration } from './integrations/futurenow/index.js';
import { GardenaBluetoothIntegration } from './integrations/gardena_bluetooth/index.js';
import { Gc100Integration } from './integrations/gc100/index.js';
import { GenericIntegration } from './integrations/generic/index.js';
import { GeniushubIntegration } from './integrations/geniushub/index.js';
import { GlancesIntegration } from './integrations/glances/index.js';
import { Go2rtcIntegration } from './integrations/go2rtc/index.js';
import { GoalzeroIntegration } from './integrations/goalzero/index.js';
import { Gogogate2Integration } from './integrations/gogogate2/index.js';
import { GoodweIntegration } from './integrations/goodwe/index.js';
import { GoogleWifiIntegration } from './integrations/google_wifi/index.js';
import { GoveeBleIntegration } from './integrations/govee_ble/index.js';
import { GoveeLightLocalIntegration } from './integrations/govee_light_local/index.js';
import { GpsdIntegration } from './integrations/gpsd/index.js';
import { GraphiteIntegration } from './integrations/graphite/index.js';
import { GreeIntegration } from './integrations/gree/index.js';
import { GreeneyeMonitorIntegration } from './integrations/greeneye_monitor/index.js';
import { GreenwaveIntegration } from './integrations/greenwave/index.js';
import { GtfsIntegration } from './integrations/gtfs/index.js';
import { GuardianIntegration } from './integrations/guardian/index.js';
import { HarmanKardonAvrIntegration } from './integrations/harman_kardon_avr/index.js';
import { HarmonyIntegration } from './integrations/harmony/index.js';
import { HassioIntegration } from './integrations/hassio/index.js';
import { HddtempIntegration } from './integrations/hddtemp/index.js';
import { HdfuryIntegration } from './integrations/hdfury/index.js';
import { HdmiCecIntegration } from './integrations/hdmi_cec/index.js';
import { HeatmiserIntegration } from './integrations/heatmiser/index.js';
import { HegelIntegration } from './integrations/hegel/index.js';
import { HeosIntegration } from './integrations/heos/index.js';
import { HikvisionIntegration } from './integrations/hikvision/index.js';
import { HikvisioncamIntegration } from './integrations/hikvisioncam/index.js';
import { HisenseAehw4a1Integration } from './integrations/hisense_aehw4a1/index.js';
import { HitronCodaIntegration } from './integrations/hitron_coda/index.js';
import { HlkSw16Integration } from './integrations/hlk_sw16/index.js';
import { HolidayIntegration } from './integrations/holiday/index.js';
import { HomeeIntegration } from './integrations/homee/index.js';
import { HomekitIntegration } from './integrations/homekit/index.js';
import { HomekitControllerIntegration } from './integrations/homekit_controller/index.js';
import { HomematicIntegration } from './integrations/homematic/index.js';
import { HomevoltIntegration } from './integrations/homevolt/index.js';
import { HomeWizardIntegration } from './integrations/homewizard/index.js';
import { HomeworksIntegration } from './integrations/homeworks/index.js';
import { HorizonIntegration } from './integrations/horizon/index.js';
import { HpIloIntegration } from './integrations/hp_ilo/index.js';
import { HrEnergyQubeIntegration } from './integrations/hr_energy_qube/index.js';
import { HuaweiLteIntegration } from './integrations/huawei_lte/index.js';
import { HueIntegration } from './integrations/hue/index.js';
import { HueBleIntegration } from './integrations/hue_ble/index.js';
import { HunterDouglasPowerViewIntegration } from './integrations/hunterdouglas_powerview/index.js';
import { HusqvarnaAutomowerBleIntegration } from './integrations/husqvarna_automower_ble/index.js';
import { HyperionIntegration } from './integrations/hyperion/index.js';
import { IalarmIntegration } from './integrations/ialarm/index.js';
import { IammeterIntegration } from './integrations/iammeter/index.js';
import { IbeaconIntegration } from './integrations/ibeacon/index.js';
import { IdasenDeskIntegration } from './integrations/idasen_desk/index.js';
import { IdteckProxIntegration } from './integrations/idteck_prox/index.js';
import { IgloIntegration } from './integrations/iglo/index.js';
import { IhcIntegration } from './integrations/ihc/index.js';
import { ImeonInverterIntegration } from './integrations/imeon_inverter/index.js';
import { ImmichIntegration } from './integrations/immich/index.js';
import { ImprovBleIntegration } from './integrations/improv_ble/index.js';
import { IncomfortIntegration } from './integrations/incomfort/index.js';
import { IndevoltIntegration } from './integrations/indevolt/index.js';
import { InelsIntegration } from './integrations/inels/index.js';
import { InfluxdbIntegration } from './integrations/influxdb/index.js';
import { InkbirdIntegration } from './integrations/inkbird/index.js';
import { InsteonIntegration } from './integrations/insteon/index.js';
import { IntellifireIntegration } from './integrations/intellifire/index.js';
import { IometerIntegration } from './integrations/iometer/index.js';
import { IotawattIntegration } from './integrations/iotawatt/index.js';
import { Iperf3Integration } from './integrations/iperf3/index.js';
import { IppIntegration } from './integrations/ipp/index.js';
import { IronOsIntegration } from './integrations/iron_os/index.js';
import { IskraIntegration } from './integrations/iskra/index.js';
import { Isy994Integration } from './integrations/isy994/index.js';
import { ItunesIntegration } from './integrations/itunes/index.js';
import { IzoneIntegration } from './integrations/izone/index.js';
import { JellyfinIntegration } from './integrations/jellyfin/index.js';
import { JvcProjectorIntegration } from './integrations/jvc_projector/index.js';
import { KaleidescapeIntegration } from './integrations/kaleidescape/index.js';
import { KankunIntegration } from './integrations/kankun/index.js';
import { KebaIntegration } from './integrations/keba/index.js';
import { KeeneticNdms2Integration } from './integrations/keenetic_ndms2/index.js';
import { KefIntegration } from './integrations/kef/index.js';
import { KegtronIntegration } from './integrations/kegtron/index.js';
import { KeyboardRemoteIntegration } from './integrations/keyboard_remote/index.js';
import { KioskerIntegration } from './integrations/kiosker/index.js';
import { KiraIntegration } from './integrations/kira/index.js';
import { KmtronicIntegration } from './integrations/kmtronic/index.js';
import { KnxIntegration } from './integrations/knx/index.js';
import { KodiIntegration } from './integrations/kodi/index.js';
import { KonnectedIntegration } from './integrations/konnected/index.js';
import { KostalPlenticoreIntegration } from './integrations/kostal_plenticore/index.js';
import { KulerskyIntegration } from './integrations/kulersky/index.js';
import { KwbIntegration } from './integrations/kwb/index.js';
import { LacrosseIntegration } from './integrations/lacrosse/index.js';
import { LametricIntegration } from './integrations/lametric/index.js';
import { LandisgyrHeatMeterIntegration } from './integrations/landisgyr_heat_meter/index.js';
import { LannouncerIntegration } from './integrations/lannouncer/index.js';
import { LcnIntegration } from './integrations/lcn/index.js';
import { Ld2410BleIntegration } from './integrations/ld2410_ble/index.js';
import { LeaoneIntegration } from './integrations/leaone/index.js';
import { LedBleIntegration } from './integrations/led_ble/index.js';
import { LektricoIntegration } from './integrations/lektrico/index.js';
import { LgNetcastIntegration } from './integrations/lg_netcast/index.js';
import { LgSoundbarIntegration } from './integrations/lg_soundbar/index.js';
import { LibreHardwareMonitorIntegration } from './integrations/libre_hardware_monitor/index.js';
import { LidarrIntegration } from './integrations/lidarr/index.js';
import { LifxIntegration } from './integrations/lifx/index.js';
import { LinkplayIntegration } from './integrations/linkplay/index.js';
import { LinksysSmartIntegration } from './integrations/linksys_smart/index.js';
import { LinuxBatteryIntegration } from './integrations/linux_battery/index.js';
import { LitejetIntegration } from './integrations/litejet/index.js';
import { LivisiIntegration } from './integrations/livisi/index.js';
import { LocalCalendarIntegration } from './integrations/local_calendar/index.js';
import { LocalFileIntegration } from './integrations/local_file/index.js';
import { LocalIpIntegration } from './integrations/local_ip/index.js';
import { LocalTodoIntegration } from './integrations/local_todo/index.js';
import { LocativeIntegration } from './integrations/locative/index.js';
import { LookinIntegration } from './integrations/lookin/index.js';
import { LoqedIntegration } from './integrations/loqed/index.js';
import { LuciIntegration } from './integrations/luci/index.js';
import { LunatoneIntegration } from './integrations/lunatone/index.js';
import { LupusecIntegration } from './integrations/lupusec/index.js';
import { LutronIntegration } from './integrations/lutron/index.js';
import { LutronCasetaIntegration } from './integrations/lutron_caseta/index.js';
import { Lw12wifiIntegration } from './integrations/lw12wifi/index.js';
import { MadvrIntegration } from './integrations/madvr/index.js';
import { ManualMqttIntegration } from './integrations/manual_mqtt/index.js';
import { MaryttsIntegration } from './integrations/marytts/index.js';
import { MatterIntegration } from './integrations/matter/index.js';
import { MaxcubeIntegration } from './integrations/maxcube/index.js';
import { McpIntegration } from './integrations/mcp/index.js';
import { McpServerIntegration } from './integrations/mcp_server/index.js';
import { MealieIntegration } from './integrations/mealie/index.js';
import { MedcomBleIntegration } from './integrations/medcom_ble/index.js';
import { MediaroomIntegration } from './integrations/mediaroom/index.js';
import { MelnorIntegration } from './integrations/melnor/index.js';
import { MfiIntegration } from './integrations/mfi/index.js';
import { MikrotikIntegration } from './integrations/mikrotik/index.js';
import { MillIntegration } from './integrations/mill/index.js';
import { MinecraftServerIntegration } from './integrations/minecraft_server/index.js';
import { MjpegIntegration } from './integrations/mjpeg/index.js';
import { MoatIntegration } from './integrations/moat/index.js';
import { MobileAppIntegration } from './integrations/mobile_app/index.js';
import { MochadIntegration } from './integrations/mochad/index.js';
import { ModbusIntegration } from './integrations/modbus/index.js';
import { ModemCalleridIntegration } from './integrations/modem_callerid/index.js';
import { ModernFormsIntegration } from './integrations/modern_forms/index.js';
import { MoehlenhoffAlpha2Integration } from './integrations/moehlenhoff_alpha2/index.js';
import { MonopriceIntegration } from './integrations/monoprice/index.js';
import { MopekaIntegration } from './integrations/mopeka/index.js';
import { MotionBlindsIntegration } from './integrations/motion_blinds/index.js';
import { MotionEyeIntegration } from './integrations/motioneye/index.js';
import { MotionmountIntegration } from './integrations/motionmount/index.js';
import { MpdIntegration } from './integrations/mpd/index.js';
import { MqttIntegration } from './integrations/mqtt/index.js';
import { MqttEventstreamIntegration } from './integrations/mqtt_eventstream/index.js';
import { MqttJsonIntegration } from './integrations/mqtt_json/index.js';
import { MqttRoomIntegration } from './integrations/mqtt_room/index.js';
import { MqttStatestreamIntegration } from './integrations/mqtt_statestream/index.js';
import { MusicAssistantIntegration } from './integrations/music_assistant/index.js';
import { MutesyncIntegration } from './integrations/mutesync/index.js';
import { MycroftIntegration } from './integrations/mycroft/index.js';
import { MysensorsIntegration } from './integrations/mysensors/index.js';
import { MystromIntegration } from './integrations/mystrom/index.js';
import { NadIntegration } from './integrations/nad/index.js';
import { NamIntegration } from './integrations/nam/index.js';
import { NanoleafIntegration } from './integrations/nanoleaf/index.js';
import { NaswebIntegration } from './integrations/nasweb/index.js';
import { NessAlarmIntegration } from './integrations/ness_alarm/index.js';
import { NetdataIntegration } from './integrations/netdata/index.js';
import { NetgearIntegration } from './integrations/netgear/index.js';
import { NetgearLteIntegration } from './integrations/netgear_lte/index.js';
import { NetioIntegration } from './integrations/netio/index.js';
import { NfandroidtvIntegration } from './integrations/nfandroidtv/index.js';
import { NibeHeatpumpIntegration } from './integrations/nibe_heatpump/index.js';
import { NikoHomeControlIntegration } from './integrations/niko_home_control/index.js';
import { NmapTrackerIntegration } from './integrations/nmap_tracker/index.js';
import { NoboHubIntegration } from './integrations/nobo_hub/index.js';
import { NrgkickIntegration } from './integrations/nrgkick/index.js';
import { NukiIntegration } from './integrations/nuki/index.js';
import { NumatoIntegration } from './integrations/numato/index.js';
import { NutIntegration } from './integrations/nut/index.js';
import { Nx584Integration } from './integrations/nx584/index.js';
import { NzbgetIntegration } from './integrations/nzbget/index.js';
import { ObihaiIntegration } from './integrations/obihai/index.js';
import { OctoprintIntegration } from './integrations/octoprint/index.js';
import { OemIntegration } from './integrations/oem/index.js';
import { OllamaIntegration } from './integrations/ollama/index.js';
import { OmbiIntegration } from './integrations/ombi/index.js';
import { OnewireIntegration } from './integrations/onewire/index.js';
import { OnkyoIntegration } from './integrations/onkyo/index.js';
import { OnvifIntegration } from './integrations/onvif/index.js';
import { OpendisplayIntegration } from './integrations/opendisplay/index.js';
import { OpenevseIntegration } from './integrations/openevse/index.js';
import { OpengarageIntegration } from './integrations/opengarage/index.js';
import { OpenhardwaremonitorIntegration } from './integrations/openhardwaremonitor/index.js';
import { OpenhomeIntegration } from './integrations/openhome/index.js';
import { OpenRGBIntegration } from './integrations/openrgb/index.js';
import { OpenthermGwIntegration } from './integrations/opentherm_gw/index.js';
import { OpnsenseIntegration } from './integrations/opnsense/index.js';
import { OppleIntegration } from './integrations/opple/index.js';
import { OralbIntegration } from './integrations/oralb/index.js';
import { OrviboIntegration } from './integrations/orvibo/index.js';
import { OsramlightifyIntegration } from './integrations/osramlightify/index.js';
import { OtbrIntegration } from './integrations/otbr/index.js';
import { OverkizIntegration } from './integrations/overkiz/index.js';
import { OverseerrIntegration } from './integrations/overseerr/index.js';
import { OwntracksIntegration } from './integrations/owntracks/index.js';
import { P1MonitorIntegration } from './integrations/p1_monitor/index.js';
import { PalazzettiIntegration } from './integrations/palazzetti/index.js';
import { PanasonicBlurayIntegration } from './integrations/panasonic_bluray/index.js';
import { PanasonicVieraIntegration } from './integrations/panasonic_viera/index.js';
import { PaperlessNgxIntegration } from './integrations/paperless_ngx/index.js';
import { PeblarIntegration } from './integrations/peblar/index.js';
import { PencomIntegration } from './integrations/pencom/index.js';
import { PglabIntegration } from './integrations/pglab/index.js';
import { PhilipsJsIntegration } from './integrations/philips_js/index.js';
import { PiHoleIntegration } from './integrations/pi_hole/index.js';
import { PicottsIntegration } from './integrations/picotts/index.js';
import { PilightIntegration } from './integrations/pilight/index.js';
import { PingIntegration } from './integrations/ping/index.js';
import { PioneerIntegration } from './integrations/pioneer/index.js';
import { PjlinkIntegration } from './integrations/pjlink/index.js';
import { PlexIntegration } from './integrations/plex/index.js';
import { PlugwiseIntegration } from './integrations/plugwise/index.js';
import { PrusaLinkIntegration } from './integrations/prusalink/index.js';
import { RainbirdIntegration } from './integrations/rainbird/index.js';
import { RflinkIntegration } from './integrations/rflink/index.js';
import { RokuIntegration } from './integrations/roku/index.js';
import { SamsungtvIntegration } from './integrations/samsungtv/index.js';
import { ShellyIntegration } from './integrations/shelly/index.js';
import { SnapcastIntegration } from './integrations/snapcast/index.js';
import { SonosIntegration } from './integrations/sonos/index.js';
import { SoundtouchIntegration } from './integrations/soundtouch/index.js';
import { SqueezeboxIntegration } from './integrations/squeezebox/index.js';
import { SynologyDsmIntegration } from './integrations/synology_dsm/index.js';
import { SynologySrmIntegration } from './integrations/synology_srm/index.js';
import { TomatoIntegration } from './integrations/tomato/index.js';
import { TplinkIntegration } from './integrations/tplink/index.js';
import { TplinkLteIntegration } from './integrations/tplink_lte/index.js';
import { TplinkOmadaIntegration } from './integrations/tplink_omada/index.js';
import { TradfriIntegration } from './integrations/tradfri/index.js';
import { TransmissionIntegration } from './integrations/transmission/index.js';
import { TwinklyIntegration } from './integrations/twinkly/index.js';
import { UbusIntegration } from './integrations/ubus/index.js';
import { UnifiIntegration } from './integrations/unifi/index.js';
import { UnifiAccessIntegration } from './integrations/unifi_access/index.js';
import { UnifiprotectIntegration } from './integrations/unifiprotect/index.js';
import { UpcConnectIntegration } from './integrations/upc_connect/index.js';
import { ValloxIntegration } from './integrations/vallox/index.js';
import { VelbusIntegration } from './integrations/velbus/index.js';
import { VeluxIntegration } from './integrations/velux/index.js';
import { VenstarIntegration } from './integrations/venstar/index.js';
import { VeraIntegration } from './integrations/vera/index.js';
import { VictronGxIntegration } from './integrations/victron_gx/index.js';
import { VivotekIntegration } from './integrations/vivotek/index.js';
import { VizioIntegration } from './integrations/vizio/index.js';
import { VlcIntegration } from './integrations/vlc/index.js';
import { VlcTelnetIntegration } from './integrations/vlc_telnet/index.js';
import { VolumioIntegration } from './integrations/volumio/index.js';
import { WakeOnLanIntegration } from './integrations/wake_on_lan/index.js';
import { WatergateIntegration } from './integrations/watergate/index.js';
import { WebminIntegration } from './integrations/webmin/index.js';
import { WebostvIntegration } from './integrations/webostv/index.js';
import { WemoIntegration } from './integrations/wemo/index.js';
import { WiimIntegration } from './integrations/wiim/index.js';
import { WizIntegration } from './integrations/wiz/index.js';
import { WledIntegration } from './integrations/wled/index.js';
import { WolfSmartsetIntegration } from './integrations/wolf_smartset/index.js';
import { XiaomiMiioIntegration } from './integrations/xiaomi_miio/index.js';
import { YamahaIntegration } from './integrations/yamaha/index.js';
import { YamahaMusiccastIntegration } from './integrations/yamaha_musiccast/index.js';
import { YardianIntegration } from './integrations/yardian/index.js';
import { YeelightIntegration } from './integrations/yeelight/index.js';
import { YoulessIntegration } from './integrations/youless/index.js';
import { ZeversolarIntegration } from './integrations/zeversolar/index.js';
import { ZhaIntegration } from './integrations/zha/index.js';
import { ZiggoMediaboxXlIntegration } from './integrations/ziggo_mediabox_xl/index.js';
import { ZoneminderIntegration } from './integrations/zoneminder/index.js';
import { ZwaveJsIntegration } from './integrations/zwave_js/index.js';
import { generatedHomeAssistantPortIntegrations } from './integrations/generated/index.js';
import { IntegrationRegistry } from './core/index.js';

export const integrations = [
  new AcaiaIntegration(),
  new AcerProjectorIntegration(),
  new AcmedaIntegration(),
  new ActiontecIntegration(),
  new AdaxIntegration(),
  new AdguardIntegration(),
  new AdsIntegration(),
  new AdvantageAirIntegration(),
  new AgentDvrIntegration(),
  new AirgradientIntegration(),
  new AirobotIntegration(),
  new AirosIntegration(),
  new AirqIntegration(),
  new AirthingsBleIntegration(),
  new Airtouch4Integration(),
  new Airtouch5Integration(),
  new AirvisualProIntegration(),
  new AirzoneIntegration(),
  new AlarmdecoderIntegration(),
  new AltruistIntegration(),
  new AmcrestIntegration(),
  new AndroidIpWebcamIntegration(),
  new AndroidtvIntegration(),
  new AndroidtvRemoteIntegration(),
  new AnelPwrctrlIntegration(),
  new AnthemavIntegration(),
  new ApacheKafkaIntegration(),
  new ApcupsdIntegration(),
  new AppleTvIntegration(),
  new AprilaireIntegration(),
  new ApsystemsIntegration(),
  new AqualogicIntegration(),
  new AquostvIntegration(),
  new AranetIntegration(),
  new ArcamFmjIntegration(),
  new ArestIntegration(),
  new ArrisTg2492lgIntegration(),
  new ArubaIntegration(),
  new ArwnIntegration(),
  new AsuswrtIntegration(),
  new AtagIntegration(),
  new AtenPeIntegration(),
  new AuroraAbbPoweroneIntegration(),
  new AveaIntegration(),
  new AwairIntegration(),
  new AxisIntegration(),
  new BafIntegration(),
  new BalboaIntegration(),
  new BangOlufsenIntegration(),
  new BboxIntegration(),
  new BeewiSmartclimIntegration(),
  new BlackbirdIntegration(),
  new BleboxIntegration(),
  new BlinksticklightIntegration(),
  new BluemaestroIntegration(),
  new BluesoundIntegration(),
  new BluetoothLeTrackerIntegration(),
  new BondIntegration(),
  new BoschAlarmIntegration(),
  new BoschShcIntegration(),
  new BraviatvIntegration(),
  new BroadlinkIntegration(),
  new BrotherIntegration(),
  new BryantEvolutionIntegration(),
  new BsblanIntegration(),
  new BtHomeHub5Integration(),
  new BtSmarthubIntegration(),
  new BthomeIntegration(),
  new CambridgeAudioIntegration(),
  new CasperGlowIntegration(),
  new CastIntegration(),
  new Ccm15Integration(),
  new ChannelsIntegration(),
  new CiscoIosIntegration(),
  new CiscoMobilityExpressIntegration(),
  new ClementineIntegration(),
  new CmusIntegration(),
  new ComelitIntegration(),
  new ComfoconnectIntegration(),
  new Concord232Integration(),
  new Control4Integration(),
  new CoolmasterIntegration(),
  new CppmTrackerIntegration(),
  new CpuspeedIntegration(),
  new DaikinIntegration(),
  new DanfossAirIntegration(),
  new DdwrtIntegration(),
  new DeakoIntegration(),
  new DeconzIntegration(),
  new DelugeIntegration(),
  new DenonIntegration(),
  new DenonRs232Integration(),
  new DenonavrIntegration(),
  new DevialetIntegration(),
  new DevoloHomeControlIntegration(),
  new DevoloHomeNetworkIntegration(),
  new DirectvIntegration(),
  new DlinkIntegration(),
  new DlnaDmrIntegration(),
  new DlnaDmsIntegration(),
  new DoodsIntegration(),
  new DoorbirdIntegration(),
  new DormakabaDkeyIntegration(),
  new DovadoIntegration(),
  new Dremel3dPrinterIntegration(),
  new DropConnectIntegration(),
  new DropletIntegration(),
  new DsmrIntegration(),
  new DsmrReaderIntegration(),
  new DucoIntegration(),
  new DunehdIntegration(),
  new DuotecnoIntegration(),
  new DynaliteIntegration(),
  new EarnEP1Integration(),
  new EbusdIntegration(),
  new EcoalBoilerIntegration(),
  new EcoforestIntegration(),
  new EcowittIntegration(),
  new EdimaxIntegration(),
  new Edl21Integration(),
  new EgardiaIntegration(),
  new EgaugeIntegration(),
  new EheimdigitalIntegration(),
  new EkeybionyxIntegration(),
  new ElgatoIntegration(),
  new Elkm1Integration(),
  new ElvIntegration(),
  new EmbyIntegration(),
  new EmoncmsIntegration(),
  new EmoncmsHistoryIntegration(),
  new EmonitorIntegration(),
  new EmulatedHueIntegration(),
  new EmulatedKasaIntegration(),
  new EmulatedRokuIntegration(),
  new EnergeniePowerSocketsIntegration(),
  new Enigma2Integration(),
  new EnoceanIntegration(),
  new EnphaseEnvoyIntegration(),
  new EnvisalinkIntegration(),
  new EphemberIntegration(),
  new EpsonIntegration(),
  new Eq3btsmartIntegration(),
  new EsceaIntegration(),
  new EsphomeIntegration(),
  new EufyIntegration(),
  new EufylifeBleIntegration(),
  new EurotronicCometblueIntegration(),
  new EverlightsIntegration(),
  new EvilGeniusLabsIntegration(),
  new Fail2banIntegration(),
  new FamilyhubIntegration(),
  new FibaroIntegration(),
  new FileIntegration(),
  new FilesizeIntegration(),
  new FingIntegration(),
  new FireflyIiiIntegration(),
  new FirmataIntegration(),
  new FivemIntegration(),
  new FjaraskupanIntegration(),
  new FlexitIntegration(),
  new FlexitBacnetIntegration(),
  new FlicIntegration(),
  new FluxLedIntegration(),
  new FolderIntegration(),
  new FolderWatcherIntegration(),
  new ForkedDaapdIntegration(),
  new FortiosIntegration(),
  new FoscamIntegration(),
  new FreeboxIntegration(),
  new FritzIntegration(),
  new FritzboxIntegration(),
  new FritzboxCallmonitorIntegration(),
  new FroniusIntegration(),
  new FrontierSiliconIntegration(),
  new FullyKioskIntegration(),
  new FuturenowIntegration(),
  new GardenaBluetoothIntegration(),
  new Gc100Integration(),
  new GenericIntegration(),
  new GeniushubIntegration(),
  new GlancesIntegration(),
  new Go2rtcIntegration(),
  new GoalzeroIntegration(),
  new Gogogate2Integration(),
  new GoodweIntegration(),
  new GoogleWifiIntegration(),
  new GoveeBleIntegration(),
  new GoveeLightLocalIntegration(),
  new GpsdIntegration(),
  new GraphiteIntegration(),
  new GreeIntegration(),
  new GreeneyeMonitorIntegration(),
  new GreenwaveIntegration(),
  new GtfsIntegration(),
  new GuardianIntegration(),
  new HarmanKardonAvrIntegration(),
  new HarmonyIntegration(),
  new HassioIntegration(),
  new HddtempIntegration(),
  new HdfuryIntegration(),
  new HdmiCecIntegration(),
  new HeatmiserIntegration(),
  new HegelIntegration(),
  new HeosIntegration(),
  new HikvisionIntegration(),
  new HikvisioncamIntegration(),
  new HisenseAehw4a1Integration(),
  new HitronCodaIntegration(),
  new HlkSw16Integration(),
  new HolidayIntegration(),
  new HomeeIntegration(),
  new HomekitIntegration(),
  new HomekitControllerIntegration(),
  new HomematicIntegration(),
  new HomevoltIntegration(),
  new HomeWizardIntegration(),
  new HomeworksIntegration(),
  new HorizonIntegration(),
  new HpIloIntegration(),
  new HrEnergyQubeIntegration(),
  new HuaweiLteIntegration(),
  new HueIntegration(),
  new HueBleIntegration(),
  new HunterDouglasPowerViewIntegration(),
  new HusqvarnaAutomowerBleIntegration(),
  new HyperionIntegration(),
  new IalarmIntegration(),
  new IammeterIntegration(),
  new IbeaconIntegration(),
  new IdasenDeskIntegration(),
  new IdteckProxIntegration(),
  new IgloIntegration(),
  new IhcIntegration(),
  new ImeonInverterIntegration(),
  new ImmichIntegration(),
  new ImprovBleIntegration(),
  new IncomfortIntegration(),
  new IndevoltIntegration(),
  new InelsIntegration(),
  new InfluxdbIntegration(),
  new InkbirdIntegration(),
  new InsteonIntegration(),
  new IntellifireIntegration(),
  new IometerIntegration(),
  new IotawattIntegration(),
  new Iperf3Integration(),
  new IppIntegration(),
  new IronOsIntegration(),
  new IskraIntegration(),
  new Isy994Integration(),
  new ItunesIntegration(),
  new IzoneIntegration(),
  new JellyfinIntegration(),
  new JvcProjectorIntegration(),
  new KaleidescapeIntegration(),
  new KankunIntegration(),
  new KebaIntegration(),
  new KeeneticNdms2Integration(),
  new KefIntegration(),
  new KegtronIntegration(),
  new KeyboardRemoteIntegration(),
  new KioskerIntegration(),
  new KiraIntegration(),
  new KmtronicIntegration(),
  new KnxIntegration(),
  new KodiIntegration(),
  new KonnectedIntegration(),
  new KostalPlenticoreIntegration(),
  new KulerskyIntegration(),
  new KwbIntegration(),
  new LacrosseIntegration(),
  new LametricIntegration(),
  new LandisgyrHeatMeterIntegration(),
  new LannouncerIntegration(),
  new LcnIntegration(),
  new Ld2410BleIntegration(),
  new LeaoneIntegration(),
  new LedBleIntegration(),
  new LektricoIntegration(),
  new LgNetcastIntegration(),
  new LgSoundbarIntegration(),
  new LibreHardwareMonitorIntegration(),
  new LidarrIntegration(),
  new LifxIntegration(),
  new LinkplayIntegration(),
  new LinksysSmartIntegration(),
  new LinuxBatteryIntegration(),
  new LitejetIntegration(),
  new LivisiIntegration(),
  new LocalCalendarIntegration(),
  new LocalFileIntegration(),
  new LocalIpIntegration(),
  new LocalTodoIntegration(),
  new LocativeIntegration(),
  new LookinIntegration(),
  new LoqedIntegration(),
  new LuciIntegration(),
  new LunatoneIntegration(),
  new LupusecIntegration(),
  new LutronIntegration(),
  new LutronCasetaIntegration(),
  new Lw12wifiIntegration(),
  new MadvrIntegration(),
  new ManualMqttIntegration(),
  new MaryttsIntegration(),
  new MatterIntegration(),
  new MaxcubeIntegration(),
  new McpIntegration(),
  new McpServerIntegration(),
  new MealieIntegration(),
  new MedcomBleIntegration(),
  new MediaroomIntegration(),
  new MelnorIntegration(),
  new MfiIntegration(),
  new MikrotikIntegration(),
  new MillIntegration(),
  new MinecraftServerIntegration(),
  new MjpegIntegration(),
  new MoatIntegration(),
  new MobileAppIntegration(),
  new MochadIntegration(),
  new ModbusIntegration(),
  new ModemCalleridIntegration(),
  new ModernFormsIntegration(),
  new MoehlenhoffAlpha2Integration(),
  new MonopriceIntegration(),
  new MopekaIntegration(),
  new MotionBlindsIntegration(),
  new MotionEyeIntegration(),
  new MotionmountIntegration(),
  new MpdIntegration(),
  new MqttIntegration(),
  new MqttEventstreamIntegration(),
  new MqttJsonIntegration(),
  new MqttRoomIntegration(),
  new MqttStatestreamIntegration(),
  new MusicAssistantIntegration(),
  new MutesyncIntegration(),
  new MycroftIntegration(),
  new MysensorsIntegration(),
  new MystromIntegration(),
  new NadIntegration(),
  new NamIntegration(),
  new NanoleafIntegration(),
  new NaswebIntegration(),
  new NessAlarmIntegration(),
  new NetdataIntegration(),
  new NetgearIntegration(),
  new NetgearLteIntegration(),
  new NetioIntegration(),
  new NfandroidtvIntegration(),
  new NibeHeatpumpIntegration(),
  new NikoHomeControlIntegration(),
  new NmapTrackerIntegration(),
  new NoboHubIntegration(),
  new NrgkickIntegration(),
  new NukiIntegration(),
  new NumatoIntegration(),
  new NutIntegration(),
  new Nx584Integration(),
  new NzbgetIntegration(),
  new ObihaiIntegration(),
  new OctoprintIntegration(),
  new OemIntegration(),
  new OllamaIntegration(),
  new OmbiIntegration(),
  new OnewireIntegration(),
  new OnkyoIntegration(),
  new OnvifIntegration(),
  new OpendisplayIntegration(),
  new OpenevseIntegration(),
  new OpengarageIntegration(),
  new OpenhardwaremonitorIntegration(),
  new OpenhomeIntegration(),
  new OpenRGBIntegration(),
  new OpenthermGwIntegration(),
  new OpnsenseIntegration(),
  new OppleIntegration(),
  new OralbIntegration(),
  new OrviboIntegration(),
  new OsramlightifyIntegration(),
  new OtbrIntegration(),
  new OverkizIntegration(),
  new OverseerrIntegration(),
  new OwntracksIntegration(),
  new P1MonitorIntegration(),
  new PalazzettiIntegration(),
  new PanasonicBlurayIntegration(),
  new PanasonicVieraIntegration(),
  new PaperlessNgxIntegration(),
  new PeblarIntegration(),
  new PencomIntegration(),
  new PglabIntegration(),
  new PhilipsJsIntegration(),
  new PiHoleIntegration(),
  new PicottsIntegration(),
  new PilightIntegration(),
  new PingIntegration(),
  new PioneerIntegration(),
  new PjlinkIntegration(),
  new PlexIntegration(),
  new PlugwiseIntegration(),
  new PrusaLinkIntegration(),
  new RainbirdIntegration(),
  new RflinkIntegration(),
  new RokuIntegration(),
  new SamsungtvIntegration(),
  new ShellyIntegration(),
  new SnapcastIntegration(),
  new SonosIntegration(),
  new SoundtouchIntegration(),
  new SqueezeboxIntegration(),
  new SynologyDsmIntegration(),
  new SynologySrmIntegration(),
  new TomatoIntegration(),
  new TplinkIntegration(),
  new TplinkLteIntegration(),
  new TplinkOmadaIntegration(),
  new TradfriIntegration(),
  new TransmissionIntegration(),
  new TwinklyIntegration(),
  new UbusIntegration(),
  new UnifiIntegration(),
  new UnifiAccessIntegration(),
  new UnifiprotectIntegration(),
  new UpcConnectIntegration(),
  new ValloxIntegration(),
  new VelbusIntegration(),
  new VeluxIntegration(),
  new VenstarIntegration(),
  new VeraIntegration(),
  new VictronGxIntegration(),
  new VivotekIntegration(),
  new VizioIntegration(),
  new VlcIntegration(),
  new VlcTelnetIntegration(),
  new VolumioIntegration(),
  new WakeOnLanIntegration(),
  new WatergateIntegration(),
  new WebminIntegration(),
  new WebostvIntegration(),
  new WemoIntegration(),
  new WiimIntegration(),
  new WizIntegration(),
  new WledIntegration(),
  new WolfSmartsetIntegration(),
  new XiaomiMiioIntegration(),
  new YamahaIntegration(),
  new YamahaMusiccastIntegration(),
  new YardianIntegration(),
  new YeelightIntegration(),
  new YoulessIntegration(),
  new ZeversolarIntegration(),
  new ZhaIntegration(),
  new ZiggoMediaboxXlIntegration(),
  new ZoneminderIntegration(),
  new ZwaveJsIntegration(),
];

export const createDefaultIntegrationRegistry = (): IntegrationRegistry => {
  const registry = new IntegrationRegistry();
  for (const integration of integrations) {
    registry.register(integration);
  }
  for (const integration of generatedHomeAssistantPortIntegrations) {
    if (!registry.get(integration.domain)) {
      registry.register(integration);
    }
  }
  return registry;
};
