import { SimpleLocalIntegration } from '../../core/index.js';
import { OppleConfigFlow } from './opple.classes.configflow.js';
import { createOppleDiscoveryDescriptor } from './opple.discovery.js';
import type { IOppleConfig } from './opple.types.js';
import { oppleDomain, oppleProfile } from './opple.types.js';

export class OppleIntegration extends SimpleLocalIntegration<IOppleConfig> {
  public readonly domain = oppleDomain;
  public readonly discoveryDescriptor = createOppleDiscoveryDescriptor();
  public readonly configFlow = new OppleConfigFlow();

  constructor() {
    super(oppleProfile);
  }
}

export class HomeAssistantOppleIntegration extends OppleIntegration {}
