import { SimpleLocalIntegration } from '../../core/index.js';
import { BafConfigFlow } from './baf.classes.configflow.js';
import { createBafDiscoveryDescriptor } from './baf.discovery.js';
import type { IBafConfig } from './baf.types.js';
import { bafDomain, bafProfile } from './baf.types.js';

export class BafIntegration extends SimpleLocalIntegration<IBafConfig> {
  public readonly domain = bafDomain;
  public readonly discoveryDescriptor = createBafDiscoveryDescriptor();
  public readonly configFlow = new BafConfigFlow();

  constructor() {
    super(bafProfile);
  }
}

export class HomeAssistantBafIntegration extends BafIntegration {}
