// Copyright (c) Microsoft. All rights reserved.
using Microsoft.Agents.AI.Workflows;
namespace Microsoft.Agents.AI.DurableTask.Workflows;
///
/// Represents a running instance of a workflow.
///
public interface IWorkflowRun
{
///
/// Gets the unique identifier for the run.
///
///
/// This identifier can be provided at the start of the run, or auto-generated.
/// For durable runs, this corresponds to the orchestration instance ID.
///
string RunId { get; }
///
/// Gets all events that have been emitted by the workflow.
///
IEnumerable OutgoingEvents { get; }
///
/// Gets the number of events emitted since the last access to .
///
int NewEventCount { get; }
///
/// Gets all events emitted by the workflow since the last access to this property.
///
///
/// Each access to this property advances the bookmark, so subsequent accesses
/// will only return events emitted after the previous access.
///
IEnumerable NewEvents { get; }
}