001package io.jstach.jstachio.spi;
002
003import java.util.ServiceLoader;
004
005/**
006 * An SPI extension point via the {@link ServiceLoader} or other mechanisms like DI.
007 *
008 * If the extension needs configuration for initialization see
009 * {@link JStachioExtensionProvider}.
010 *
011 * @apiNote Because this is a sealed class one must implement the permitted classes which
012 * are non-sealed.
013 * @author agentgt
014 * @see JStachioExtensions
015 */
016public sealed interface JStachioExtension permits JStachioExtensionProvider, JStachioFilter, JStachioTemplateFinder, JStachioConfig {
017
018}