package io.delphi.qa.auto.awsmfrw.models;

import io.delphi.qa.auto.awsmfrw.managers.HlFileSystem;
import io.delphi.qa.auto.awsmfrw.managers.HlJira;
import io.delphi.qa.auto.awsmfrw.managers.helpers.api.rest.HlApiRestJavaV3Client;
import io.delphi.qa.auto.awsmfrw.managers.helpers.aws.HlAwsSecretManager;
import io.delphi.qa.auto.awsmfrw.managers.helpers.db.pg.HlPostgres;
import io.delphi.qa.auto.awsmfrw.managers.helpers.db.snowflake.SfSysAdminImpl;

public enum EnDelphiHelperClassItems {
  DELPHI_DB_SF_SYSADMIN(SfSysAdminImpl.class),
  DELPHI_DB_PG_MAIN(HlPostgres.class),
  DELPHI_DB_PG_AUTO(HlPostgres.class),
  DELPHI_DB_PG_SLZ(HlPostgres.class),
  DELPHI_CUSTOM_PG_MAIN(HlPostgres.class),
  DELPHI_MAP_PG_MAIN(HlPostgres.class),
  DELPHI_TMS_JIRA(HlJira.class),
  DELPHI_AWS_SECRET_MANAGER(HlAwsSecretManager.class),
  DELPHI_FS_TEST_DATA(HlFileSystem.class),
  DELPHI_API_REST(HlApiRestJavaV3Client.class),
  STRING(String.class),
  ENUM(Enum.class),
  ;

  private final Class<?> helper;

  EnDelphiHelperClassItems(Class<?> hlClass) {
    this.helper = hlClass;
  }
}
