import { SimpleLocalIntegration } from '../../core/index.js';
import { ZeversolarConfigFlow } from './zeversolar.classes.configflow.js';
import { createZeversolarDiscoveryDescriptor } from './zeversolar.discovery.js';
import type { IZeversolarConfig } from './zeversolar.types.js';
import { zeversolarDomain, zeversolarProfile } from './zeversolar.types.js';

export class ZeversolarIntegration extends SimpleLocalIntegration<IZeversolarConfig> {
  public readonly domain = zeversolarDomain;
  public readonly discoveryDescriptor = createZeversolarDiscoveryDescriptor();
  public readonly configFlow = new ZeversolarConfigFlow();

  constructor() {
    super(zeversolarProfile);
  }
}

export class HomeAssistantZeversolarIntegration extends ZeversolarIntegration {}
