using Edge.Core.Parser;
using Edge.Core.Processor.Communicator;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Edge.Core.Processor
{
    public interface IDeviceProcessor<TRaw, TMessage> : IProcessor where TMessage : MessageBase
    {
        IContext<TRaw, TMessage> Context { get; }
        IList<IInterceptor<TRaw, TMessage>> Interceptors { get; }

        ICommunicator<TRaw, TMessage> Communicator { get; }
    }
}
