import '../../../../globals.js';
/**
 * Represents an element in the RichText hierarchy that has child content (renders nothing on its own, but has its own
 * scale, positioning, style, etc.). <span> or <b> are examples of something that would create this.
 *
 * @author Jonathan Olson <jonathan.olson@colorado.edu>
 */
import Pool, { TPoolable } from '../../../../phet-core/js/Pool.js';
import { Node, RichTextLeaf, RichTextNode } from '../../imports.js';
declare const RichTextElement_base: typeof Node & import("../../../../phet-core/js/types/Constructor.js").default<{
    readonly isCleanable: boolean;
    clean(): void;
}>;
export default class RichTextElement extends RichTextElement_base implements TPoolable {
    private isLTR;
    leftSpacing: number;
    rightSpacing: number;
    /**
     * @param isLTR - Whether this container will lay out elements in the left-to-right order (if false, will be
     *                          right-to-left).
     */
    constructor(isLTR: boolean);
    initialize(isLTR: boolean): this;
    /**
     * Adds a child element.
     *
     * @returns- Whether the item was actually added.
     */
    addElement(element: RichTextElement | RichTextLeaf | RichTextNode): boolean;
    /**
     * Adds an amount of spacing to the "before" side.
     */
    addExtraBeforeSpacing(amount: number): void;
    freeToPool(): void;
    static readonly pool: Pool<typeof RichTextElement>;
}
export {};
//# sourceMappingURL=RichTextElement.d.ts.map