import { SimpleLocalIntegration } from '../../core/index.js';
import { InsteonConfigFlow } from './insteon.classes.configflow.js';
import { createInsteonDiscoveryDescriptor } from './insteon.discovery.js';
import type { IInsteonConfig } from './insteon.types.js';
import { insteonDomain, insteonProfile } from './insteon.types.js';

export class InsteonIntegration extends SimpleLocalIntegration<IInsteonConfig> {
  public readonly domain = insteonDomain;
  public readonly discoveryDescriptor = createInsteonDiscoveryDescriptor();
  public readonly configFlow = new InsteonConfigFlow();

  constructor() {
    super(insteonProfile);
  }
}

export class HomeAssistantInsteonIntegration extends InsteonIntegration {}
