import { ParagraphMeasure, ResolvedListMarkerItem, SourceAnchor } from '../../../../contracts/src/index.js';
import { MinimalMarker, MinimalWordLayout, ResolvedListMarkerGeometry } from '../../../../../shared/common/list-marker-utils.js';
type PainterListTextStartParams = {
    wordLayout: MinimalWordLayout | undefined;
    indentLeftPx: number;
    hangingIndentPx: number;
    firstLineIndentPx: number;
    markerTextWidthPx?: number;
};
export declare const resolvePainterListMarkerGeometry: ({ wordLayout, indentLeftPx, hangingIndentPx, firstLineIndentPx, markerTextWidthPx, }: PainterListTextStartParams) => ResolvedListMarkerGeometry | undefined;
export declare const resolvePainterListTextStartPx: ({ wordLayout, indentLeftPx, hangingIndentPx, firstLineIndentPx, markerTextWidthPx, }: PainterListTextStartParams) => number | undefined;
type MarkerRunStyle = {
    fontFamily?: string | null;
    fontSize?: number | null;
    bold?: boolean | null;
    italic?: boolean | null;
    color?: string | null;
    letterSpacing?: number | null;
    vanish?: boolean | null;
    allCaps?: boolean | null;
    smallCaps?: boolean | null;
};
export declare const createListMarkerElement: (doc: Document, markerText: string, run: MarkerRunStyle, sourceAnchor?: SourceAnchor) => HTMLElement;
export declare const renderLegacyListMarker: (params: {
    doc: Document;
    lineEl: HTMLElement;
    wordLayout?: MinimalWordLayout;
    markerLayout: MinimalMarker;
    markerMeasure: ParagraphMeasure["marker"];
    markerTextWidthPx?: number;
    indentLeftPx: number;
    hangingIndentPx: number;
    firstLineIndentPx: number;
    isRtl?: boolean;
    sourceAnchor?: SourceAnchor;
}) => void;
export declare const renderResolvedListMarker: (params: {
    doc: Document;
    lineEl: HTMLElement;
    marker: ResolvedListMarkerItem;
    isRtl?: boolean;
    sourceAnchor?: SourceAnchor;
}) => void;
export {};
//# sourceMappingURL=list-marker.d.ts.map