using System.Numerics;
using Nethereum.ABI.FunctionEncoding.Attributes;

namespace Managing.ABI.GmxV2.SyntheticsReader.ContractDefinition
{
    public partial class GetNextFundingAmountPerSizeResult : GetNextFundingAmountPerSizeResultBase { }

    public class GetNextFundingAmountPerSizeResultBase 
    {
        [Parameter("bool", "longsPayShorts", 1)]
        public virtual bool LongsPayShorts { get; set; }
        [Parameter("uint256", "fundingFactorPerSecond", 2)]
        public virtual BigInteger FundingFactorPerSecond { get; set; }
        [Parameter("int256", "nextSavedFundingFactorPerSecond", 3)]
        public virtual BigInteger NextSavedFundingFactorPerSecond { get; set; }
        [Parameter("tuple", "fundingFeeAmountPerSizeDelta", 4)]
        public virtual PositionType FundingFeeAmountPerSizeDelta { get; set; }
        [Parameter("tuple", "claimableFundingAmountPerSizeDelta", 5)]
        public virtual PositionType ClaimableFundingAmountPerSizeDelta { get; set; }
    }
}
