using System.Collections.Immutable; using Connected.Annotations; using Connected.Net.Endpoints; namespace Connected.Net.Server; [Service] [ServiceUrl(Routes.Server)] public interface IEndpointServer { event EventHandler? Changed; event EventHandler Initialized; Task Initialize(ImmutableList endpoints, CancellationToken cancellationToken); [ServiceMethod(ServiceMethodVerbs.Post)] Task NotifyServerChange(ServerProposalArgs args); [ServiceMethod(ServiceMethodVerbs.Get)] Task IsServer(); string ServerUrl { get; } }