import { Editor } from '../../core/Editor.js';
import { BlockNodeAddress, ListItemAddress, ListItemInfo, ListKind, ListsListQuery, ListsListResult } from '../../../../../../document-api/src/index.js';
import { BlockCandidate, BlockIndex } from './node-address-resolver.js';
export type ListItemProjection = {
    candidate: BlockCandidate;
    address: ListItemAddress;
    numId?: number;
    level?: number;
    marker?: string;
    path?: number[];
    ordinal?: number;
    kind?: ListKind;
    text?: string;
};
export declare function projectListItemCandidate(editor: Editor, candidate: BlockCandidate): ListItemProjection;
export declare function listItemProjectionToInfo(projection: ListItemProjection, listId: string): ListItemInfo;
export declare function resolveBlockScopeRange(index: BlockIndex, within?: BlockNodeAddress): {
    start: number;
    end: number;
} | undefined;
export declare function buildListItemIndex(editor: Editor): {
    index: BlockIndex;
    items: ListItemProjection[];
};
export declare function listListItems(editor: Editor, query?: ListsListQuery): ListsListResult;
export declare function resolveListItem(editor: Editor, address: ListItemAddress): ListItemProjection;
//# sourceMappingURL=list-item-resolver.d.ts.map