import { InstructionCompiler } from "../../../Compilation/PackageSystem/Instructions/InstructionCompiler.js";
import { FileSystemInstruction } from "./FileSystemInstruction.js";
import { IApplicationFileSystemInstructionOptions } from "./IApplicationFileSystemInstructionOptions.js";
/**
 * Represents an instruction which uploads files for a specific application.
 */
export declare class ApplicationFileSystemInstruction extends FileSystemInstruction {
    /**
     * The application to upload the files to.
     */
    private application;
    /**
     * Initializes a new instance of the {@link ApplicationFileSystemInstruction `ApplicationFileSystemInstruction`}.
     *
     * @param options
     * The options of the application file-system instruction.
     */
    constructor(options: IApplicationFileSystemInstructionOptions);
    /**
     * @inheritdoc
     */
    get Type(): string;
    /**
     * Gets or sets the application to upload the files to.
     */
    get Application(): string;
    /**
     * @inheritdoc
     */
    set Application(value: string);
    /**
     * @inheritdoc
     */
    get Compiler(): InstructionCompiler<ApplicationFileSystemInstruction>;
    /**
     * Gets the name of the directory to save the assets archive to.
     */
    protected get AssetDirectoryName(): string;
    /**
     * @inheritdoc
     *
     * @param source
     * The source of the instruction.
     *
     * @returns
     * The default filename.
     */
    protected MakeDefaultFileName(source: string): string;
    /**
     * Gets the default name of the asset file.
     *
     * @param source
     * The source of the instruction.
     *
     * @returns
     * The default name of the asset file.
     */
    protected GetAssetFileName(source: string): string;
}
