import { SimpleLocalIntegration } from '../../core/index.js';
import { FireflyIiiConfigFlow } from './firefly_iii.classes.configflow.js';
import { createFireflyIiiDiscoveryDescriptor } from './firefly_iii.discovery.js';
import type { IFireflyIiiConfig } from './firefly_iii.types.js';
import { fireflyIiiDomain, fireflyIiiProfile } from './firefly_iii.types.js';

export class FireflyIiiIntegration extends SimpleLocalIntegration<IFireflyIiiConfig> {
  public readonly domain = fireflyIiiDomain;
  public readonly discoveryDescriptor = createFireflyIiiDiscoveryDescriptor();
  public readonly configFlow = new FireflyIiiConfigFlow();

  constructor() {
    super(fireflyIiiProfile);
  }
}

export class HomeAssistantFireflyIiiIntegration extends FireflyIiiIntegration {}
