package com.alttd.essentia; import com.alttd.essentia.api.model.randomteleport.LocationValidator; import org.jetbrains.annotations.ApiStatus; public interface EssentiaAPI { static EssentiaAPI get() { return Provider.instance; } final class Provider { private static EssentiaAPI instance = null; @ApiStatus.Internal static void register(EssentiaAPI instance) { if (Provider.instance != null) throw new UnsupportedOperationException("Cannot redefine singleton"); Provider.instance = instance; } } public void addLocationValidator(LocationValidator locationValidator); }