import * as PIXI from "pixi.js-legacy";
import * as Models from "@ascii-dev-user/medsurf-lib/models";
import * as MedsurfDraw from "../../public-api";
import { BaseContainer, BaseContainerImageModel } from "../../bases/elements/BaseContainer";
export declare class ButtonElementModel extends BaseContainerImageModel {
    text: string;
    description: string;
    descriptionFontSize: number;
    rectangle?: PIXI.Rectangle;
    options?: Models.ElementOptions;
    fontSize?: number;
    fontColor?: number;
}
export declare class ButtonElement extends BaseContainer<ButtonElementModel> {
    private _selectInteraction;
    protected _rectangleElement: MedsurfDraw.Rectangle;
    protected _iconElement: MedsurfDraw.Text;
    constructor(model: ButtonElementModel);
    init(parent: MedsurfDraw.ImageObject): void;
    draw(): void;
    destroy(options?: {
        children?: boolean;
        texture?: boolean;
        baseTexture?: boolean;
    }): void;
    setIconAngle(angle: number): void;
    onRelease(event: PIXI.InteractionEvent): void;
    get text(): string;
    set text(value: string);
    get description(): string;
    set description(value: string);
    get descriptionFontSize(): number;
    set descriptionFontSize(value: number);
    get rectangle(): PIXI.Rectangle;
    set rectangle(value: PIXI.Rectangle);
    get options(): Models.ElementOptions;
    set options(value: Models.ElementOptions);
    get fontSize(): number;
    set fontSize(value: number);
    get fontColor(): number;
    set fontColor(value: number);
    get selectInteraction(): MedsurfDraw.SelectInteraction<ButtonElement>;
    set selectInteraction(value: MedsurfDraw.SelectInteraction<ButtonElement>);
}
