/** Copyright (c) MuteCode **/

export class SiloConfig {
  private static instance: SiloConfig;
  private apiKey: string = '';
  private apiUrl: string = '';
  private application: string = '';

  private constructor() {}

  public static getInstance(): SiloConfig {
    if (!SiloConfig.instance) {
      SiloConfig.instance = new SiloConfig();
    }
    return SiloConfig.instance;
  }

  public setConfig(apiKey: string, apiUrl: string, application: string) {
    this.apiKey = apiKey;
    this.apiUrl = apiUrl;
    this.application = application;
  }

  public getConfig(): { apiKey: string, apiUrl: string, application: string} {
    return {
      apiKey: this.apiKey,
      apiUrl: this.apiUrl,
      application: this.application,
    }
  }
}
