Available on java
@:overloadstaticempty<T>():Optional<T>
@:overloadstaticof<T>(param1:T):Optional<T>
@:overloadstaticofNullable<T>(param1:T):Optional<T>
@:overloadequals(param1:Dynamic):Bool
@:overloadfilter(param1:Predicate<Dynamic>):Optional<T>
@:overloadflatMap<U>(param1:Function<Dynamic, Optional<U>>):Optional<U>
@:overloadget():T
@:overloadhashCode():Int
@:overloadifPresent(param1:Consumer<Dynamic>):Void
@:overloadisPresent():Bool
@:overloadmap<U>(param1:Function<Dynamic, U>):Optional<U>
@:overloadorElse(param1:T):T
@:overloadorElseGet(param1:Supplier<T>):T
@:overload@:throws("StdTypes")orElseThrow<X>(param1:Supplier<X>):T
@:overloadtoString():String