from _typeshed import Incomplete

class diff_match_patch:
    Diff_Timeout: float
    Diff_EditCost: int
    Match_Threshold: float
    Match_Distance: int
    Patch_DeleteThreshold: float
    Patch_Margin: int
    Match_MaxBits: int
    def __init__(self) -> None: ...
    DIFF_DELETE: int
    DIFF_INSERT: int
    DIFF_EQUAL: int
    def diff_main(
        self,
        text1,
        text2,
        checklines: bool = ...,
        deadline: Incomplete | None = ...,
    ): ...
    def diff_compute(self, text1, text2, checklines, deadline): ...
    def diff_lineMode(self, text1, text2, deadline): ...
    def diff_bisect(self, text1, text2, deadline): ...
    def diff_bisectSplit(self, text1, text2, x, y, deadline): ...
    def diff_linesToChars(self, text1, text2): ...
    def diff_charsToLines(self, diffs, lineArray) -> None: ...
    def diff_commonPrefix(self, text1, text2): ...
    def diff_commonSuffix(self, text1, text2): ...
    def diff_commonOverlap(self, text1, text2): ...
    def diff_halfMatch(self, text1, text2): ...
    def diff_cleanupSemantic(self, diffs) -> None: ...
    def diff_cleanupSemanticLossless(self, diffs): ...
    BLANKLINEEND: Incomplete
    BLANKLINESTART: Incomplete
    def diff_cleanupEfficiency(self, diffs) -> None: ...
    def diff_cleanupMerge(self, diffs) -> None: ...
    def diff_xIndex(self, diffs, loc): ...
    def diff_prettyHtml(self, diffs): ...
    def diff_text1(self, diffs): ...
    def diff_text2(self, diffs): ...
    def diff_levenshtein(self, diffs): ...
    def diff_toDelta(self, diffs): ...
    def diff_fromDelta(self, text1, delta): ...
    def match_main(self, text, pattern, loc): ...
    def match_bitap(self, text, pattern, loc): ...
    def match_alphabet(self, pattern): ...
    def patch_addContext(self, patch, text) -> None: ...
    def patch_make(
        self, a, b: Incomplete | None = ..., c: Incomplete | None = ...
    ): ...
    def patch_deepCopy(self, patches): ...
    def patch_apply(self, patches, text): ...
    def patch_addPadding(self, patches): ...
    def patch_splitMax(self, patches) -> None: ...
    def patch_toText(self, patches): ...
    def patch_fromText(self, textline): ...

class patch_obj:
    diffs: Incomplete
    start1: Incomplete
    start2: Incomplete
    length1: int
    length2: int
    def __init__(self) -> None: ...
