/* Options: Date: 2025-07-17 23:40:23 Version: 6.40 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://hcbtas-q-albamfs-api.azurewebsites.net //GlobalNamespace: //MakePartial: True //MakeVirtual: True //MakeInternal: False //MakeDataContractsExtensible: False //AddReturnMarker: True //AddDescriptionAsComments: True //AddDataContractAttributes: False //AddIndexesToDataMembers: False //AddGeneratedCodeAttributes: False //AddResponseStatus: False //AddImplicitVersion: //InitializeCollections: True //ExportValueTypes: False IncludeTypes: ClientCountryConfigValidateReq.* //ExcludeTypes: //AddNamespaces: //AddDefaultXmlNamespace: http://schemas.servicestack.net/types */ using System; using System.Collections; using System.Collections.Generic; using System.Runtime.Serialization; using ServiceStack; using ServiceStack.DataAnnotations; using System.IO; using TasSyd.Model.Base; using TasSyd.Model.Base.Interfaces; using TasSyd.Model.Enums; using AlbaMfs.Common.Models.PresentationLayer; using TasSyd.Model.Stochastic; using TasSyd.Model.Client; using TasSyd.Model.Core.Contributions; using TasSyd.Model.Core; using AlbaApi.Model; using CalcEngineApi.ServiceModel; namespace AlbaApi.Model { public partial class InvestmentProduct { public virtual string RiskId { get; set; } public virtual string RiskName { get; set; } } } namespace AlbaMfs.Common.Models.PresentationLayer { public enum ContributionType { Employer, Employee, EmployerMatching, } public partial class Entity { public virtual string LogoUri { get; set; } public virtual string Name { get; set; } public virtual ContactDetails ContactDetails { get; set; } } } namespace CalcEngineApi.ServiceModel { [Route("/clientcountryconfig/validate", "POST")] public partial class ClientCountryConfigValidateReq : IReturn { public virtual ClientCountryConfig Config { get; set; } } } namespace TasSyd.Model.Base { public partial class DatedEntity : Entity, IDatedEntity { public virtual DateTime AsAt { get; set; } } public partial class Entity : IEntity { public virtual string Id { get; set; } } } namespace TasSyd.Model.Base.Interfaces { public partial interface IDatedEntity : IEntity { DateTime AsAt { get; set; } } public partial interface IEntity { string Id { get; set; } } } namespace TasSyd.Model.Client { public partial class AnnuityConfig { public AnnuityConfig() { TableNames = new List{}; ImprFactorTableNames = new List{}; } public virtual List TableNames { get; set; } public virtual List ImprFactorTableNames { get; set; } public virtual double? Reversion { get; set; } public virtual double? Guarantee { get; set; } public virtual double? Timing { get; set; } public virtual bool? AllowDiscountPreRet { get; set; } public virtual double? ScaleQx { get; set; } public virtual double? ScaleImpr { get; set; } public virtual int? AgeRating { get; set; } public virtual int? SpouseAgeRating { get; set; } public virtual double? Expense { get; set; } public virtual double? PercBalanceSpent { get; set; } public virtual double? AmountSpent { get; set; } public virtual double? IncomePurchased { get; set; } public virtual int? DeferralPeriod { get; set; } public virtual string IndexationName { get; set; } public virtual string DRStochastic { get; set; } public virtual string ImpliedInflationStochasticSeries { get; set; } public virtual double? TargetTpx { get; set; } public virtual AnnuityPriceType PriceType { get; set; } public virtual double Price { get; set; } } public partial class AssetConfig { public AssetConfig() { Investments = new List{}; Contributions = new List{}; } public virtual string Code { get; set; } public virtual string Name { get; set; } public virtual bool Rebalance { get; set; } public virtual bool CanEditInvestmentChoice { get; set; } public virtual bool WillSpend { get; set; } public virtual List Investments { get; set; } public virtual List Contributions { get; set; } public virtual bool IsOneOff { get; set; } } public partial class ClientCountryConfig : DatedEntity { public ClientCountryConfig() { Assets = new List{}; ContTables = new List{}; Investments = new List{}; Content = new Dictionary>{}; Environments = new Dictionary{}; CustomNumericConstraints = new Dictionary>{}; AssetReturnRates = new Dictionary{}; GetAssetClassFundDictionary = new Dictionary{}; GetTermBasedFundDictionary = new Dictionary{}; GetAllocationsDictionary = new Dictionary>>{}; AssetNameMap = new Dictionary{}; AssetContNameMap = new Dictionary>{}; } public virtual string ClientCode { get; set; } public virtual string ClientName { get; set; } public virtual string CountryCode { get; set; } public virtual DataSourceResult Source { get; set; } public virtual int AgeRMin { get; set; } public virtual int AgeRMax { get; set; } public virtual string PrimarySalary { get; set; } public virtual AnnuityConfig AnnuityConfig { get; set; } public virtual List Assets { get; set; } public virtual List ContTables { get; set; } public virtual List Investments { get; set; } public virtual Dictionary> Content { get; set; } public virtual Dictionary Environments { get; set; } public virtual Dictionary> CustomNumericConstraints { get; set; } public virtual Dictionary AssetReturnRates { get; set; } public virtual double InvestmentPropertyRates { get; set; } public virtual Dictionary GetAssetClassFundDictionary { get; set; } public virtual Dictionary GetTermBasedFundDictionary { get; set; } public virtual Dictionary>> GetAllocationsDictionary { get; set; } public virtual Dictionary AssetNameMap { get; set; } public virtual Dictionary> AssetContNameMap { get; set; } public virtual string CacheKey { get; set; } } public partial class LifeTableName { public virtual string Name { get; set; } public virtual Gender Gender { get; set; } } } namespace TasSyd.Model.Core { public partial class InvestmentProduct { public InvestmentProduct() { Allocs = new List{}; AllocationsDictionary = new Dictionary>{}; } public virtual string Code { get; set; } public virtual string Name { get; set; } public virtual string Group { get; set; } public virtual bool IsAssetClassFund { get; set; } public virtual List Allocs { get; set; } public virtual int Order { get; set; } public virtual Dictionary> AllocationsDictionary { get; set; } } public partial class ReturnRates { public ReturnRates() { EarningRates = new List{}; TaxRates = new List{}; } public virtual List EarningRates { get; set; } public virtual List TaxRates { get; set; } } } namespace TasSyd.Model.Core.Contributions { public partial class ContributionConstraint { public virtual int? FromAge { get; set; } public virtual int? ToAge { get; set; } public virtual double? Min { get; set; } public virtual double? Max { get; set; } public virtual double? Step { get; set; } } public partial class ContributionRateSpec { public virtual int? FromAge { get; set; } public virtual int? ToAge { get; set; } public virtual int? FromService { get; set; } public virtual int? ToService { get; set; } public virtual double? SourceRate { get; set; } public virtual DateTime? DateFrom { get; set; } public virtual DateTime? DateTo { get; set; } public virtual double? UpperLimit { get; set; } public virtual double Rate { get; set; } public virtual double CoreRate { get; set; } public virtual string LookupKey { get; set; } } public partial class ContributionSpec { public ContributionSpec() { Constraints = new List{}; } public virtual string Code { get; set; } public virtual string Name { get; set; } public virtual ContributionType Type { get; set; } public virtual bool IsEmployeeCont { get; set; } public virtual string Table { get; set; } public virtual string Ccy { get; set; } public virtual int FromAge { get; set; } public virtual int? ToAge { get; set; } public virtual string IndexationType { get; set; } public virtual string SalaryType { get; set; } public virtual bool IsTaxable { get; set; } public virtual string RelatedRate { get; set; } public virtual int Order { get; set; } public virtual bool Editable { get; set; } public virtual List Constraints { get; set; } public virtual AmountType AmountType { get; set; } public virtual bool IsOneOff { get; set; } } public partial class ContributionTableSpec { public ContributionTableSpec() { Rates = new Dictionary{}; RateSpecs = new List{}; } public virtual string Code { get; set; } public virtual ContributionType Type { get; set; } public virtual Dictionary Rates { get; set; } public virtual List RateSpecs { get; set; } public virtual string KeyTemplate { get; set; } } } namespace TasSyd.Model.Enums { public enum AmountType { Any, Amount, Rate, } public enum AnnuityPriceType { Calc, Table, } public enum ContributionType { Fixed, Time, Lookup, Match, } public enum DataSource { Db, Cache, Parameter, NA, } public enum Gender { Female, Male, Other, } } namespace TasSyd.Model.Stochastic { public partial class DataSourceResult { public virtual DataSource D { get; set; } public virtual long T { get; set; } } }