import type { BeforePasteEvent, DomToModelContext, ElementProcessor } from 'roosterjs-content-model-types';
/**
* @internal
*/
export interface OneNoteListContext {
listStyleType?: string;
startNumberOverride?: number;
}
/**
* @internal
*/
export interface OneNoteDomToModelContext extends DomToModelContext {
oneNoteListContext?: OneNoteListContext;
}
/**
* @internal
* Processes the content pasted from OneNote by setting up custom processors
* for ordered lists (`
`) and list items (`- `). These processors handle
* specific list styles and numbering overrides that may be present in OneNote
* content.
*
* @param event - The `BeforePasteEvent` containing the DOM-to-model options
* and other context information for the paste operation.
*/
export declare function processPastedContentFromOneNote(event: BeforePasteEvent): void;
/**
* @internal exported only for unit test
* Content from OneNote may have ordered lists with specific styles and start numbers.
* This function processes the `
` elements, extracting the `type` and `start` custom attributes
* to set the appropriate list style and starting number in the `oneNoteListContext` of the provided context.
* Which is then used to format the list items within the list.
*/
export declare const processOrderedList: ElementProcessor;
/**
* @internal exported only for unit test
* Content from OneNote may have ordered lists with specific styles and start numbers.
* This function processes the `` elements, extracting the `type` custom attribute
* to set the appropriate list style in the `oneNoteListContext` of the provided context.
* Which is then used to format the list items within the list.
*/
export declare const processUnorderedList: ElementProcessor;
/**
* @internal exported only for unit test
* Processes the `- ` elements within a list. It checks if the `oneNoteListContext`
* is present in the provided context. If so, it applies the list style type and
* start number override to the last level of the list format.
* This ensures that the list items are formatted correctly according to the
* OneNote list context.
*/
export declare const processListItem: ElementProcessor;