class_docstr: Syntax synchronizer. This is a tool that finds a start position for the
  lexer. This is especially important when editing big documents; we don't
  want to start the highlighting by running the lexer from the beginning of
  the file. That is very slow when editing.
class_docstr_tok: ["Syntax","synchronizer",".","This","is","a","tool","that","finds","a","start","position","for","the","lexer",".","This","is","especially","important","when","editing","big","documents",";","we","don't","want","to","start","the","highlighting","by","running","the","lexer","from","the","beginning","of","the","file",".","That","is","very","slow","when","editing","."]
docstr: Return the position from where we can start lexing as a (row, column)
  tuple.
  
  :param document: `Document` instance that contains all the lines.
  :param lineno: The line that we want to highlight. (We need to return
      this line, or an earlier position.)
docstr_tok: ["Return","the","position","from","where","we","can","start","lexing","as","a","(","row",",","column",")","tuple",".",":","param","document",":","`","Document","`","instance","that","contains","all","the","lines",".",":","param","lineno",":","The","line","that","we","want","to","highlight",".","(","We","need","to","return","this","line",",","or","an","earlier","position",".",")"]
code: def get_sync_start_position(
      self, document: Document, lineno: int
  ) -> tuple[int, int]:
      """
      Return the position from where we can start lexing as a (row, column)
      tuple.
  
      :param document: `Document` instance that contains all the lines.
      :param lineno: The line that we want to highlight. (We need to return
          this line, or an earlier position.)
      """
  
imports: from __future__ import annotations
  import re
  from abc import ABCMeta, abstractmethod
  from typing import TYPE_CHECKING, Callable, Dict, Generator, Iterable, Tuple
  from prompt_toolkit.document import Document
  from prompt_toolkit.filters import FilterOrBool, to_filter
  from prompt_toolkit.formatted_text.base import StyleAndTextTuples
  from prompt_toolkit.formatted_text.utils import split_lines
  from prompt_toolkit.styles.pygments import pygments_token_to_classname
  from .base import Lexer, SimpleLexer
label_desc: Use image node_id 1 for calling the SyntaxSync obj's underlying member method code with example usage: obj.get_sync_start_position(document, lineno) without return types