import { InstructionCompiler } from "../../../Compilation/PackageSystem/Instructions/InstructionCompiler.js";
import { BBCode } from "../../../Customization/BBCodes/BBCode.js";
import { ILocalizationInstruction } from "../Globalization/ILocalizationInstruction.js";
import { NamedDeleteInstruction } from "../NamedDeleteInstruction.js";
import { IBBCodeInstructionOptions } from "./IBBCodeInstructionOptions.js";
/**
 * Represents an instruction which provides bb-codes.
 */
export declare class BBCodeInstruction extends NamedDeleteInstruction implements ILocalizationInstruction {
    /**
     * The bb-codes provided by this instruction.
     */
    private bbCodes;
    /**
     * The path to save the translations to. Gets the path to save the translations to.
     */
    private translationDirectory;
    /**
     * Initializes a new instance of the {@link BBCodeInstruction `BBCodeInstruction`} class.
     *
     * @param options
     * The options of the bbcode-instruction.
     */
    constructor(options: IBBCodeInstructionOptions);
    /**
     * @inheritdoc
     */
    get Type(): string;
    /**
     * Gets the bb-codes provided by this instruction.
     */
    get BBCodes(): BBCode[];
    /**
     * @inheritdoc
     */
    get TranslationDirectory(): string;
    /**
     * @inheritdoc
     */
    set TranslationDirectory(value: string);
    /**
     * @inheritdoc
     */
    get Compiler(): InstructionCompiler<BBCodeInstruction>;
    /**
     * @inheritdoc
     *
     * @returns
     * The messages of the options-instruction.
     */
    GetMessages(): Record<string, Record<string, Record<string, string>>>;
}
