import type { NodeType, Node as PMNode, Schema } from '@atlaskit/editor-prosemirror/model';
import type { Transaction } from '@atlaskit/editor-prosemirror/state';
import type { TransformContext } from './list-types';
type TransformListRecursivelyProps = {
    isSourceBulletOrOrdered: boolean;
    isSourceTask: boolean;
    isTargetBulletOrOrdered: boolean;
    isTargetTask: boolean;
    listNode: PMNode;
    schema: Schema;
    supportedListTypes: Set<NodeType>;
    targetNodeType: NodeType;
};
export declare const transformListRecursively: (props: TransformListRecursivelyProps, onhandleUnsupportedContent?: (content: PMNode) => void) => PMNode;
/**
 * Transform list structure between different list types
 */
export declare const transformListStructure: (context: TransformContext) => Transaction;
/**
 * Transform between different list types
 */
export declare const transformBetweenListTypes: (context: TransformContext) => Transaction | null;
/**
 * Transform selection to task list
 * Handles the special structure where taskItem contains text directly (no paragraph wrapper)
 */
export declare const transformToTaskList: (tr: Transaction, range: {
    end: number;
    start: number;
}, targetNodeType: NodeType, targetAttrs: Record<string, unknown> | undefined, nodes: Record<string, NodeType>) => Transaction | null;
export declare const transformTaskListToBlockNodes: (context: TransformContext) => Transaction | null;
export declare const getFormattedNode: (tr: Transaction) => {
    node: PMNode;
    pos: number;
};
export {};
