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}