import { IgrAxis } from "./igr-axis";
import { IgrSeries } from "./igr-series";
import { UserBaseAnnotation as UserBaseAnnotation_internal } from './UserBaseAnnotation';
/**
 * Represents base class for all user annotations, e.g. UserPointAnnotation, UserSliceAnnotation, UserStripAnnotation, UserAxisAnnotation
*/
export declare abstract class IgrUserBaseAnnotation {
    protected createImplementation(): UserBaseAnnotation_internal;
    protected _implementation: any;
    protected mounted: boolean;
    get nativeElement(): HTMLElement;
    /**
     * @hidden
     */
    get i(): UserBaseAnnotation_internal; /**
                                 * @hidden
                                 */
    static _createFromInternal(internal: any): IgrUserBaseAnnotation;
    constructor();
    protected _provideImplementation(i: any): void;
    protected onImplementationCreated(): void;
    get identifier(): string;
    set identifier(v: string);
    /**
     * Gets or sets the text that should be displayed on axis annotation.
    */
    get label(): string;
    set label(v: string);
    /**
     * Gets or sets the additional data that should be stored with the annotation.
    */
    get annotationData(): string;
    set annotationData(v: string);
    /**
     * Gets or sets whether to the annotations is rendered
    */
    get isVisible(): boolean;
    set isVisible(v: boolean);
    /**
     * Gets or sets the color of text displayed in the annotation.
    */
    get labelColor(): string;
    set labelColor(v: string);
    /**
     * Gets or sets the background text displayed in the annotation.
    */
    get labelBackground(): string;
    set labelBackground(v: string);
    /**
     * Gets or sets the border color of the axis annotation.
    */
    get labelBorderColor(): string;
    set labelBorderColor(v: string);
    /**
     * Gets or sets border thickness of the axis annotations.
    */
    get labelBorderThickness(): number;
    set labelBorderThickness(v: number);
    /**
     * Gets or sets the border radius of the annotation.
    */
    get labelBorderRadius(): number;
    set labelBorderRadius(v: number);
    /**
     * Gets or sets padding around the label in annotation.
    */
    get labelPadding(): number;
    set labelPadding(v: number);
    /**
     * Gets or sets whether to draw the badge in annotation
    */
    get badgeVisible(): boolean;
    set badgeVisible(v: boolean);
    /**
     * Gets or sets the background of badge annotation.
    */
    get badgeBackground(): string;
    set badgeBackground(v: string);
    /**
     * Gets or sets the outline of badge annotation.
    */
    get badgeOutline(): string;
    set badgeOutline(v: string);
    /**
     * Gets or sets thickness of the badge annotations.
    */
    get badgeThickness(): number;
    set badgeThickness(v: number);
    /**
     * Gets or sets size of the badge annotations.
    */
    get badgeSize(): number;
    set badgeSize(v: number);
    /**
     * Gets or sets border radius of the badge annotations.
    */
    get badgeCornerRadius(): number;
    set badgeCornerRadius(v: number);
    /**
     * Gets or sets margin of the badge annotations.
    */
    get badgeMargin(): number;
    set badgeMargin(v: number);
    /**
     * Gets or sets image path for displayed in the badge annotations.
    */
    get badgeImagePath(): string;
    set badgeImagePath(v: string);
    /**
     * Gets or sets whether the annotation is pill shaped.
    */
    get isPillShaped(): boolean;
    set isPillShaped(v: boolean);
    findByName(name: string): any;
    bindAxes(axes: IgrAxis[]): void;
    bindSeries(series: IgrSeries[]): void;
}
