import { SimpleLocalIntegration } from '../../core/index.js';
import { IbeaconConfigFlow } from './ibeacon.classes.configflow.js';
import { createIbeaconDiscoveryDescriptor } from './ibeacon.discovery.js';
import type { IIbeaconConfig } from './ibeacon.types.js';
import { ibeaconDomain, ibeaconProfile } from './ibeacon.types.js';

export class IbeaconIntegration extends SimpleLocalIntegration<IIbeaconConfig> {
  public readonly domain = ibeaconDomain;
  public readonly discoveryDescriptor = createIbeaconDiscoveryDescriptor();
  public readonly configFlow = new IbeaconConfigFlow();

  constructor() {
    super(ibeaconProfile);
  }
}

export class HomeAssistantIbeaconIntegration extends IbeaconIntegration {}
