import { PiElement } from "../../language/PiModel";
import { Box } from "./Box";
import { AliasBox } from "./AliasBox";
declare type BoolFunctie = () => boolean;
export declare class OptionalBox extends Box {
    readonly kind = "OptionalBox";
    box: Box;
    whenNoShowingAlias: AliasBox;
    mustShow: boolean;
    condition: () => boolean;
    constructor(exp: PiElement, role: string, condition: BoolFunctie, box: Box, mustShow: boolean, aliasText: string);
    get showByCondition(): boolean;
    get firstLeaf(): Box;
    get lastLeaf(): Box;
    get firstEditableChild(): Box;
    get children(): ReadonlyArray<Box>;
}
export declare function isOptionalBox(b: Box): b is OptionalBox;
export {};
//# sourceMappingURL=OptionalBox.d.ts.map