import { SimpleLocalIntegration } from '../../core/index.js';
import { VictronGxConfigFlow } from './victron_gx.classes.configflow.js';
import { createVictronGxDiscoveryDescriptor } from './victron_gx.discovery.js';
import type { IVictronGxConfig } from './victron_gx.types.js';
import { victronGxDomain, victronGxProfile } from './victron_gx.types.js';

export class VictronGxIntegration extends SimpleLocalIntegration<IVictronGxConfig> {
  public readonly domain = victronGxDomain;
  public readonly discoveryDescriptor = createVictronGxDiscoveryDescriptor();
  public readonly configFlow = new VictronGxConfigFlow();

  constructor() {
    super(victronGxProfile);
  }
}

export class HomeAssistantVictronGxIntegration extends VictronGxIntegration {}
