import { SimpleLocalIntegration } from '../../core/index.js';
import { AirvisualProConfigFlow } from './airvisual_pro.classes.configflow.js';
import { createAirvisualProDiscoveryDescriptor } from './airvisual_pro.discovery.js';
import type { IAirvisualProConfig } from './airvisual_pro.types.js';
import { airvisualProDomain, airvisualProProfile } from './airvisual_pro.types.js';

export class AirvisualProIntegration extends SimpleLocalIntegration<IAirvisualProConfig> {
  public readonly domain = airvisualProDomain;
  public readonly discoveryDescriptor = createAirvisualProDiscoveryDescriptor();
  public readonly configFlow = new AirvisualProConfigFlow();

  constructor() {
    super(airvisualProProfile);
  }
}

export class HomeAssistantAirvisualProIntegration extends AirvisualProIntegration {}
