import type { IBoundsLike } from '@visactor/vutils';
import type { ILine } from '@visactor/vrender-core';
import type { PointLocationCfg } from '../core/type';
import type { LineLabelAttrs } from './type';
import { LabelBase } from './base';
import type { ComponentOptions } from '../interface';
export declare class LineLabel extends LabelBase<LineLabelAttrs> {
    name: string;
    static defaultAttributes: Partial<LineLabelAttrs>;
    constructor(attributes: LineLabelAttrs, options?: ComponentOptions);
    protected getGraphicBounds(graphic: ILine, point?: Partial<PointLocationCfg>, position?: string): IBoundsLike;
    protected labeling(textBounds: IBoundsLike, graphicBounds: IBoundsLike, position?: string, offset?: number): {
        x: number;
        y: number;
    };
}
export declare const registerLineDataLabel: () => void;
