001package react4j; 002 003import akasha.lang.JsArray; 004import jsinterop.annotations.JsOverlay; 005import jsinterop.annotations.JsPackage; 006import jsinterop.annotations.JsType; 007import jsinterop.base.Js; 008 009/** 010 * Union type representing possible output of render method. 011 */ 012@JsType( isNative = true, name = "?", namespace = JsPackage.GLOBAL ) 013public interface ReactNode 014{ 015 @JsOverlay 016 static ReactNode of( final byte value ) 017 { 018 return Js.uncheckedCast( Js.asAny( value ) ); 019 } 020 021 @JsOverlay 022 static ReactNode of( final short value ) 023 { 024 return Js.uncheckedCast( Js.asAny( value ) ); 025 } 026 027 @JsOverlay 028 static ReactNode of( final int value ) 029 { 030 return Js.uncheckedCast( Js.asAny( value ) ); 031 } 032 033 @JsOverlay 034 static ReactNode of( final long value ) 035 { 036 return of( Long.toString( value ) ); 037 } 038 039 @JsOverlay 040 static ReactNode of( final float value ) 041 { 042 return Js.uncheckedCast( Js.asAny( value ) ); 043 } 044 045 @JsOverlay 046 static ReactNode of( final double value ) 047 { 048 return Js.uncheckedCast( Js.asAny( value ) ); 049 } 050 051 @JsOverlay 052 static ReactNode of( final String string ) 053 { 054 return Js.uncheckedCast( string ); 055 } 056 057 @JsOverlay 058 static ReactNode of( final JsArray<ReactNode> elements ) 059 { 060 return Js.uncheckedCast( elements ); 061 } 062 063 @JsOverlay 064 static ReactNode of( final ReactNode... elements ) 065 { 066 return Js.uncheckedCast( elements ); 067 } 068}