import { SimpleLocalIntegration } from '../../core/index.js';
import { MoatConfigFlow } from './moat.classes.configflow.js';
import { createMoatDiscoveryDescriptor } from './moat.discovery.js';
import type { IMoatConfig } from './moat.types.js';
import { moatDomain, moatProfile } from './moat.types.js';

export class MoatIntegration extends SimpleLocalIntegration<IMoatConfig> {
  public readonly domain = moatDomain;
  public readonly discoveryDescriptor = createMoatDiscoveryDescriptor();
  public readonly configFlow = new MoatConfigFlow();

  constructor() {
    super(moatProfile);
  }
}

export class HomeAssistantMoatIntegration extends MoatIntegration {}
