import type { Node as PMNode } from '@atlaskit/editor-prosemirror/model';
import type { ReadonlyTransaction } from '@atlaskit/editor-prosemirror/state';
import type { AutoDetectEntry, AutoDetectState } from '../pm-plugins/auto-detect-state';
export declare const shouldTriggerLargeChangeDetection: (lastObservedText: string, text: string) => boolean;
export declare const getFirstLine: (text: string) => string;
export declare const hasEnoughTextForAutoDetection: (text: string) => boolean;
export declare const getLocalId: (node: PMNode) => string | null;
type CreateAutoDetectEntryOptions = {
    preserveDetectionResult?: boolean;
};
export declare const createAutoDetectEntry: (node: PMNode, pos: number, isPending: boolean, previous?: AutoDetectEntry, options?: CreateAutoDetectEntryOptions) => AutoDetectEntry;
export declare const queueAutoDetection: (languageDetectionMap: AutoDetectState["languageDetectionMap"], node: PMNode, pos: number, isPending: boolean) => AutoDetectState["languageDetectionMap"];
export declare const removeAutoDetection: (languageDetectionMap: AutoDetectState["languageDetectionMap"], localId: string) => AutoDetectState["languageDetectionMap"];
export declare const updateAutoDetectState: (tr: ReadonlyTransaction, pluginState: AutoDetectState) => AutoDetectState["languageDetectionMap"];
export {};
