import { Injectable } from '@nestjs/common';
import { ImageProviderType } from 'src/common/enums';
import { NanoProvider } from './nano.provider';
import { FireflyProvider } from './firefly.provider';
import { ImageProvider } from '../interfaces/image-provider.interface';


@Injectable()
export class ImageProviderFactory {
  constructor(
    private readonly firefly: FireflyProvider,
    private readonly nano: NanoProvider,
  ) {}

  get(type: ImageProviderType): ImageProvider {
    return type === ImageProviderType.NANO
      ? this.nano
      : this.firefly;
  }
}
