import { SimpleLocalIntegration } from '../../core/index.js';
import { UnifiprotectConfigFlow } from './unifiprotect.classes.configflow.js';
import { createUnifiprotectDiscoveryDescriptor } from './unifiprotect.discovery.js';
import type { IUnifiprotectConfig } from './unifiprotect.types.js';
import { unifiprotectDomain, unifiprotectProfile } from './unifiprotect.types.js';

export class UnifiprotectIntegration extends SimpleLocalIntegration<IUnifiprotectConfig> {
  public readonly domain = unifiprotectDomain;
  public readonly discoveryDescriptor = createUnifiprotectDiscoveryDescriptor();
  public readonly configFlow = new UnifiprotectConfigFlow();

  constructor() {
    super(unifiprotectProfile);
  }
}

export class HomeAssistantUnifiprotectIntegration extends UnifiprotectIntegration {}
