using Senparc.Weixin.Context;
using Senparc.Weixin.MP.Entities;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Senparc.Weixin;

namespace ServiceWechat.Api.MessageHandlers.CustomMessageHandler
{
    public class CustomMessageContext : IMessageContext<IRequestMessageBase, IResponseMessageBase>
    {
        public string UserName { get => throw new NotImplementedException(); set => throw new NotImplementedException(); }
        public DateTime LastActiveTime { get => throw new NotImplementedException(); set => throw new NotImplementedException(); }
        public MessageContainer<IRequestMessageBase> RequestMessages { get => throw new NotImplementedException(); set => throw new NotImplementedException(); }
        public MessageContainer<IResponseMessageBase> ResponseMessages { get => throw new NotImplementedException(); set => throw new NotImplementedException(); }
        public int MaxRecordCount { get => throw new NotImplementedException(); set => throw new NotImplementedException(); }
        public object StorageData { get => throw new NotImplementedException(); set => throw new NotImplementedException(); }
        public double? ExpireMinutes { get => throw new NotImplementedException(); set => throw new NotImplementedException(); }
        public AppStoreState AppStoreState { get => throw new NotImplementedException(); set => throw new NotImplementedException(); }

        public event EventHandler<WeixinContextRemovedEventArgs<IRequestMessageBase, IResponseMessageBase>> MessageContextRemoved;

        public void OnRemoved()
        {
            throw new NotImplementedException();
        }
    }
}
