import { INamedObject } from "../INamedObject";
import { INamedDeleteInstruction } from "../PackageSystem/Instructions/INamedDeleteInstruction";
import { ObjectDeletionFileCompiler } from "./ObjectDeletionFileCompiler";
/**
 * Provides the functionality to compile files with a named delete-section.
 */
export declare abstract class NamedObjectDeletionFileCompiler<T extends INamedDeleteInstruction> extends ObjectDeletionFileCompiler<T, INamedObject> {
    /**
     * Gets the tag-name for the objects.
     */
    protected abstract readonly ObjectTagName: string;
    /**
     * @inheritdoc
     */
    protected CreateDeleteObject(object: INamedObject): Element;
}
