using System; using System.Threading.Tasks; namespace Microsoft.AspNetCore.Components.Rendering; public abstract partial class RenderTreeBuilder { public abstract void AddLocation( string filename, int line, int column ); public abstract void OpenElement( int sequence, string elementName ); public abstract void OpenElement( int sequence, string elementName, object key = null ); public abstract void AddStyleDefinitions( int sequence, string styles ); public abstract void AddAttribute( int sequence, Action value ) where T : IComponent; public abstract void CloseElement(); public abstract void AddContent( int sequence, T content ); public abstract void AddReferenceCapture( int sequence, T current, Action value ) where T : IComponent; public abstract void SetRenderFragment( Action setter, RenderFragment builder ) where T : IComponent; public abstract void SetRenderFragmentWithContext( Func> getter, Action> setter, RenderFragment builder ) where T : IComponent; public abstract void AddMarkupContent( int sequence, string markupContent ); public abstract void OpenElement( int sequence ) where T : IComponent, new(); public abstract void OpenElement( int sequence, object key ) where T : IComponent, new(); public abstract void AddBind( int sequence, string propertyName, Func get, Action set ); // These aren't used by our system, they're only used by intellisense and VS public void OpenComponent( int sequence ) where T : IComponent { } public void CloseComponent() { } public void AddComponentParameter( int sequence, string parameterName, object value ) { } public void AddComponentParameter( int sequence, string parameterName, Action value ) { } public void AddComponentParameter( int sequence, string parameterName, Func value ) { } public void SetKey( object value ) { } }