import { GlossaristModel } from '../models/base.js'; declare const HUNK_EQUAL = "equal"; declare const HUNK_ADDED = "added"; declare const HUNK_REMOVED = "removed"; export type TextHunkType = typeof HUNK_EQUAL | typeof HUNK_ADDED | typeof HUNK_REMOVED; export interface TextHunkJson { type: TextHunkType; text: string; } export declare class TextHunk extends GlossaristModel { readonly type: TextHunkType; readonly text: string; constructor(data?: TextHunkJson); toJSON(): TextHunkJson; static fromJSON(data: TextHunkJson): TextHunk; } export interface TextDiffJson { oldText?: string; old_text?: string; newText?: string; new_text?: string; hunks?: ReadonlyArray; } export declare class TextDiff extends GlossaristModel { readonly oldText: string; readonly newText: string; private readonly _hunks; constructor(data?: TextDiffJson); get hunks(): ReadonlyArray; get hasChanges(): boolean; get addedText(): string; get removedText(): string; toJSON(): TextDiffJson & { old_text: string; new_text: string; hunks: ReadonlyArray; }; static fromJSON(data: TextDiffJson): TextDiff; } export declare function diffText(oldText: string | null | undefined, newText: string | null | undefined): TextDiff; export {}; //# sourceMappingURL=text-diff.d.ts.map