import { InstructionCompiler } from "../../../Compilation/PackageSystem/Instructions/InstructionCompiler";
import { Instruction } from "../Instruction";
import { IFileSystemInstructionOptions } from "./IFileSystemInstructionOptions";
/**
 * Represents an instruction which is bound to a file-system entry.
 */
export declare abstract class FileSystemInstruction extends Instruction {
    /**
     * The path to the file-system entry the instruction is bound to.
     */
    private source;
    /**
     * Initializes a new instance of the `FileSystemInstruction` class.
     */
    constructor(options: IFileSystemInstructionOptions);
    /**
     * Gets or sets the path to the file-system entry the instruction is bound to.
     */
    Source: string;
    /**
     * @inheritdoc
     */
    /**
    * @inheritdoc
    */
    FileName: string;
    /**
     * @inheritdoc
     */
    readonly Compiler: InstructionCompiler<FileSystemInstruction>;
    /**
     * Creates a default file-name based on the source of the instruction.
     *
     * @param source
     * The source of the instruction.
     */
    protected MakeDefaultFileName(source: string): string;
}
