import type { CanvasFontSpec, Color } from 'chart.js';
import type { SankeyLabelPosition, SankeyNode, SankeyNodeLabelOption } from './types.js';
type ResolvableNodeLabelValue = boolean | Color | SankeyLabelPosition;
type ResolvedLabelPosition = Exclude<SankeyLabelPosition, 'auto'>;
export interface DrawLabelOptions {
    autoPosition: ResolvedLabelPosition;
    backgroundColor?: Color;
    borderRadius: number;
    borderWidth: number;
    color: Color;
    font: CanvasFontSpec;
    height: number;
    lineOffset: number;
    padding: number;
    position: SankeyLabelPosition;
    width: number;
    x: number;
    y: number;
}
export declare function resolveNodeLabelOption<T extends ResolvableNodeLabelValue>(option: SankeyNodeLabelOption<T> | undefined, node: SankeyNode): T | undefined;
export declare function drawLabel(ctx: CanvasRenderingContext2D, label: string, options: DrawLabelOptions): void;
export {};
