import { XMLFileCompiler } from "./XMLFileCompiler.js";
/**
 * Provides the functionality to compile components to `.xml`-files optimized for woltlab.
 *
 * @template T
 * The type of the item which can be compiled by this compiler.
 */
export declare abstract class WoltLabXMLCompiler<T> extends XMLFileCompiler<T> {
    /**
     * Initializes a new instance of the {@link WoltLabXMLCompiler `WoltLabXMLCompiler<T>`} class.
     *
     * @param item
     * The item to compile.
     */
    constructor(item: T);
    /**
     * @inheritdoc
     */
    protected get TagName(): string;
    /**
     * Gets the location of the schema for the instruction.
     */
    protected abstract get SchemaLocation(): string;
    /**
     * @inheritdoc
     *
     * @returns
     * The serialized document.
     */
    protected CreateDocument(): Document;
}
