// // IPostExecutionEvent.cs // // Copyright (c) František Boháček. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; using NosSmooth.Core.Client; using NosSmooth.Packets; using Remora.Results; namespace NosSmooth.Core.Packets; /// /// Event executed after the packet responders. /// public interface IPostExecutionEvent { /// /// Execute the post execution event. /// /// The NosTale client. /// The packet arguments. /// The results from the packet responders. /// The cancellation token for cancelling the operation. /// The type of the packet. /// A result that may or may not succeed. public Task ExecuteAfterExecutionAsync ( INostaleClient client, PacketEventArgs packetArgs, IReadOnlyList executionResults, CancellationToken ct = default ) where TPacket : IPacket; }