import { BidirectionalCollection } from "../../Collections/BidirectionalCollection";
import { Package } from "../Package";
import { Instruction } from "./Instruction";
/**
 * Represents a collection of instructions.
 */
export declare class InstructionSet extends BidirectionalCollection<InstructionSet, Instruction> {
    /**
     * The package the collection belongs to.
     */
    private package;
    /**
     * The directory to save the set to.
     */
    private directory;
    /**
     * Initializes a new instance of the `InstructionSet` class.
     */
    constructor($package: Package);
    /**
     * @inheritdoc
     */
    readonly Owner: InstructionSet;
    /**
     * Gets or sets the package the collection belongs to.
     */
    Package: Package;
    /**
     * Gets or sets the directory to save the components of this set.
     */
    Directory: string;
    /**
     * Serializes the instruction-set to an xml dom-element.
     */
    Serialize(): Element;
    /**
     * @inheritdoc
     */
    protected GetParent(child: Instruction): InstructionSet;
    /**
     * @inheritdoc
     */
    protected SetParent(child: Instruction, parent: InstructionSet): void;
}
