using CloudBuilder.Core.DependencyInjection.Policy;
using CloudBuilder.Core.DependencyInjection.Request;
using CloudBuilder.Core.Policy;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CloudBuilder.AI.Policy
{
    public class DeclaimerPolicy : LocalePolicy, IPolicy
    {
        public const string ZhHkHiuGaaiNeural = "ZhHkHiuGaaiNeural";
        public const string ZhHkHiuMaanNeural = "ZhHkHiuMaanNeural";
        public const string ZhHkWanLungNeural = "ZhHkWanLungNeural";
        public const string ZhCnXiaoxiaoNeural = "ZhCnXiaoxiaoNeural";
        public const string ZhCnXiaoyiNeural = "ZhCnXiaoyiNeural";
        public const string ZhCnYunjianNeural = "ZhCnYunjianNeural";
        public const string ZhCnYunxiNeural = "ZhCnYunxiNeural";
        public const string ZhCnYunxiaNeural = "ZhCnYunxiaNeural";
        public const string ZhCnYunyangNeural = "ZhCnYunyangNeural";
        public const string ZhCnLiaoningXiaobeiNeural = "ZhCnLiaoningXiaobeiNeural";
        public const string ZhTwHsiaoChenNeural = "ZhTwHsiaoChenNeural";
        public const string ZhTwYunJheNeural = "ZhTwYunJheNeural";
        public const string ZhTwHsiaoYuNeural = "ZhTwHsiaoYuNeural";
        public const string ZhCnShaanxiXiaoniNeural = "ZhCnShaanxiXiaoniNeural";
        public const string VITS_MELO_TTS_ZH_EN = "vits-melo-tts-zh_en";
        public const string VITS_ZH_HF_THERESA = "vits-zh-hf-theresa";
        public const string VITS_ZH_HF_FANCHEN_C = "vits-zh-hf-fanchen-C";
        public const string SHERPA_ONNX_VITS_ZH_LL = "sherpa-onnx-vits-zh-ll";

        private readonly IContext context;
        private readonly ILocaleMessageManager localeMessageManager;

        public DeclaimerPolicy(IContext context, ILocaleMessageManager localeMessageManager) : base(context, localeMessageManager)
        {
            this.context = context;
            this.localeMessageManager = localeMessageManager;

            this.Name = typeof(DeclaimerPolicy).Name;
        }
    }
}
