You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Connected.Components/Services/ReseizeObserver/IResizeObserver.cs

23 lines
711 B

2 years ago
using Connected.Interop;
using Microsoft.AspNetCore.Components;
namespace Connected.Services;
public delegate void SizeChanged(IDictionary<ElementReference, BoundingClientRect> changes);
public interface IResizeObserver : IAsyncDisposable, IDisposable
{
Task<BoundingClientRect> Observe(ElementReference element);
Task<IEnumerable<BoundingClientRect>> Observe(IEnumerable<ElementReference> elements);
Task Unobserve(ElementReference element);
double GetWidth(ElementReference reference);
double GetHeight(ElementReference reference);
BoundingClientRect GetSizeInfo(ElementReference reference);
event SizeChanged OnResized;
bool IsElementObserved(ElementReference reference);
}