TeamCity.CSharpInteractive/IProcessManager.cs (13 lines of code) (raw):

namespace TeamCity.CSharpInteractive; using HostApi; internal interface IProcessManager : IDisposable { event Action<Output> OnOutput; event Action OnExit; int Id { get; } int ExitCode { get; } bool Start(IStartInfo info, out Exception? error); bool WaitForExit(TimeSpan timeout); Task WaitForExitAsync(CancellationToken cancellationToken); bool Kill(); }