/**
 * @license
 * Copyright 2024 Google LLC
 * SPDX-License-Identifier: Apache-2.0
 */
import { WorkspaceComment } from './workspace_comment.js';
import { WorkspaceSvg } from '../workspace_svg.js';
import { Coordinate } from '../utils/coordinate.js';
import { Rect } from '../utils/rect.js';
import { Size } from '../utils/size.js';
import { IBoundedElement } from '../interfaces/i_bounded_element.js';
import { IRenderedElement } from '../interfaces/i_rendered_element.js';
export declare class RenderedWorkspaceComment extends WorkspaceComment implements IBoundedElement, IRenderedElement {
    /** The class encompassing the svg elements making up the workspace comment. */
    private view;
    /** Constructs the workspace comment, including the view. */
    constructor(workspace: WorkspaceSvg, id?: string);
    /**
     * Adds listeners to the view that updates the model (i.e. the superclass)
     * when changes are made to the view.
     */
    private addModelUpdateBindings;
    /** Sets the text of the comment. */
    setText(text: string): void;
    /** Sets the size of the comment. */
    setSize(size: Size): void;
    /** Sets whether the comment is collapsed or not. */
    setCollapsed(collapsed: boolean): void;
    /** Sets whether the comment is editable or not. */
    setEditable(editable: boolean): void;
    /** Returns the root SVG element of this comment. */
    getSvgRoot(): SVGElement;
    /** Returns the bounding rectangle of this comment in workspace coordinates. */
    getBoundingRectangle(): Rect;
    /** Move the comment by the given amounts in workspace coordinates. */
    moveBy(dx: number, dy: number, _reason?: string[] | undefined): void;
    /** Moves the comment to the given location in workspace coordinates. */
    moveTo(location: Coordinate): void;
    /** Disposes of the view. */
    dispose(): void;
}
//# sourceMappingURL=rendered_workspace_comment.d.ts.map