import type { ExportSvgOptions } from '../LinearGenomeView/types.ts';
import type { ThemeOptions } from '@mui/material';
export interface Layout {
    minX: number;
    minY: number;
    maxX: number;
    maxY: number;
    name: string;
}
export interface FloatingLabelData {
    text: string;
    relativeY: number;
    color: string;
    textWidth: number;
    isOverlay?: boolean;
    parentFeatureId?: string;
    subfeatureId?: string;
    tooltip?: string;
}
export interface LayoutFeatureMetadata {
    refName: string;
    floatingLabels?: FloatingLabelData[];
    totalFeatureHeight?: number;
    featureWidth?: number;
    actualTopPx?: number;
    featureStartBp?: number;
    featureEndBp?: number;
}
export declare function createSubfeatureLabelMetadata(args: {
    refName: string;
    floatingLabels: FloatingLabelData[];
    totalFeatureHeight: number;
    featureWidth: number;
    actualTopPx: number;
    featureStartBp: number;
    featureEndBp: number;
}): LayoutFeatureMetadata;
export type LayoutRecord = [number, number, number, number] | [number, number, number, number, LayoutFeatureMetadata];
export interface ExportSvgDisplayOptions extends ExportSvgOptions {
    overrideHeight?: number;
    theme?: ThemeOptions;
    legendWidth?: number;
}
