import { AnnotationLineMap, AnnotationSide, AnnotationSpan, BaseCodeOptions, BaseDiffOptions, BundledLanguage, ChangeContent, ChangeHunk, ChangeTypes, CodeToHastOptions, ContextContent, DecorationItem, DiffLineAnnotation, DiffLineEventBaseProps, ExpansionDirections, ExtensionFormatMap, FileContents, FileDiffMetadata, GapSpan, Hunk, HunkData, HunkLineType, HunkSeparators, LanguageRegistration, LineAnnotation, LineDiffTypes, LineEventBaseProps, LineInfo, LineSpans, LineTypes, ObservedAnnotationNodes, ObservedGridNodes, PJSHighlighter, PJSThemeNames, ParsedPatch, PrePropertiesConfig, RenderDiffFilesResult, RenderDiffHunksResult, RenderDiffOptions, RenderDiffResult, RenderFileMetadata, RenderFileOptions, RenderFileResult, RenderHeaderMetadataCallback, RenderHeaderMetadataProps, RenderedDiffASTCache, RenderedFileASTCache, SharedRenderState, ShikiTransformer, SupportedLanguages, ThemeRegistrationResolved, ThemeTypes, ThemedDiffResult, ThemedFileResult, ThemedToken, ThemesType } from "./types.js";
import { DiffHunksRenderer, HunksRenderResult } from "./DiffHunksRenderer.js";
import { LineSelectionManager, LineSelectionOptions, SelectedLineRange, SelectionSide, pluckLineSelectionOptions } from "./LineSelectionManager.js";
import { GetHoveredLineResult, LogTypes, MouseEventManager, MouseEventManagerBaseOptions, MouseEventManagerMode, MouseEventManagerOptions, OnDiffLineClickProps, OnDiffLineEnterLeaveProps, OnLineClickProps, OnLineEnterLeaveProps, pluckMouseEventOptions } from "./MouseEventManager.js";
import { File, FileHyrdateProps, FileOptions, FileRenderProps } from "./File.js";
import { FileDiff, FileDiffHydrationProps, FileDiffOptions, FileDiffRenderProps } from "./FileDiff.js";
import { FileRenderResult, FileRenderer, FileRendererOptions } from "./FileRenderer.js";
import { CodeToTokenTransformStreamOptions, RecallToken, ShikiStreamTokenizerEnqueueResult, ShikiStreamTokenizerOptions } from "./shiki-stream/types.js";
import { ShikiStreamTokenizer } from "./shiki-stream/tokenizer.js";
import { CodeToTokenTransformStream } from "./shiki-stream/stream.js";
import { FileStream, FileStreamOptions } from "./FileStream.js";
import { ResizeManager } from "./ResizeManager.js";
import { ScrollSyncManager } from "./ScrollSyncManager.js";
import { queueRender } from "./UniversalRenderer.js";
import { ALTERNATE_FILE_NAMES_GIT, COMMIT_METADATA_SPLIT, CORE_CSS_ATTRIBUTE, DEFAULT_THEMES, FILENAME_HEADER_REGEX, FILENAME_HEADER_REGEX_GIT, FILE_CONTEXT_BLOB, FILE_MODE_FROM_INDEX, GIT_DIFF_FILE_BREAK_REGEX, HEADER_METADATA_SLOT_ID, HUNK_HEADER, SPLIT_WITH_NEWLINES, UNIFIED_DIFF_FILE_BREAK_REGEX, UNSAFE_CSS_ATTRIBUTE } from "./constants.js";
import { areLanguagesAttached, attachResolvedLanguages, cleanUpResolvedLanguages, getResolvedLanguages, getResolvedOrResolveLanguage, hasResolvedLanguages, resolveLanguage, resolveLanguages } from "./highlighter/languages.js";
import { disposeHighlighter, getHighlighterIfLoaded, getSharedHighlighter, isHighlighterLoaded, isHighlighterLoading, isHighlighterNull, preloadHighlighter } from "./highlighter/shared_highlighter.js";
import { areThemesAttached, attachResolvedThemes, cleanUpResolvedThemes, getResolvedOrResolveTheme, getResolvedThemes, hasResolvedThemes, registerCustomTheme, resolveTheme, resolveThemes } from "./highlighter/themes.js";
import { areThemesEqual } from "./utils/areThemesEqual.js";
import { cleanLastNewline } from "./utils/cleanLastNewline.js";
import { createAnnotationElement } from "./utils/createAnnotationElement.js";
import { createAnnotationWrapperNode } from "./utils/createAnnotationWrapperNode.js";
import { createCodeNode } from "./utils/createCodeNode.js";
import { createEmptyRowBuffer } from "./utils/createEmptyRowBuffer.js";
import { CreateFileHeaderElementProps, createFileHeaderElement } from "./utils/createFileHeaderElement.js";
import { createHoverContentNode } from "./utils/createHoverContentNode.js";
import { createNoNewlineElement } from "./utils/createNoNewlineElement.js";
import { createPreElement, createPreWrapperProperties } from "./utils/createPreElement.js";
import { createRowNodes } from "./utils/createRowNodes.js";
import { createSeparator } from "./utils/createSeparator.js";
import { createSpanFromToken } from "./utils/createSpanNodeFromToken.js";
import { createStyleElement } from "./utils/createStyleElement.js";
import { createTransformerWithState } from "./utils/createTransformerWithState.js";
import { diffAcceptRejectHunk } from "./utils/diffAcceptRejectHunk.js";
import { formatCSSVariablePrefix } from "./utils/formatCSSVariablePrefix.js";
import { EXTENSION_TO_FILE_FORMAT, extendFileFormatMap, getFiletypeFromFileName } from "./utils/getFiletypeFromFileName.js";
import { getHighlighterOptions } from "./utils/getHighlighterOptions.js";
import { getHighlighterThemeStyles } from "./utils/getHighlighterThemeStyles.js";
import { getHunkSeparatorSlotName } from "./utils/getHunkSeparatorSlotName.js";
import { getIconForType } from "./utils/getIconForType.js";
import { getLineAnnotationName } from "./utils/getLineAnnotationName.js";
import { getLineEndingType } from "./utils/getLineEndingType.js";
import { getLineNodes } from "./utils/getLineNodes.js";
import { getSingularPatch } from "./utils/getSingularPatch.js";
import { getThemes } from "./utils/getThemes.js";
import { getTotalLineCountFromHunks } from "./utils/getTotalLineCountFromHunks.js";
import { createHastElement, createIconElement, createTextNodeElement, findCodeElement } from "./utils/hast_utils.js";
import { createDiffSpanDecoration, pushOrJoinSpan } from "./utils/parseDiffDecorations.js";
import { parseDiffFromFile } from "./utils/parseDiffFromFile.js";
import { ParsedLine, parseLineType } from "./utils/parseLineType.js";
import { parsePatchFiles } from "./utils/parsePatchFiles.js";
import { prerenderHTMLIfNecessary } from "./utils/prerenderHTMLIfNecessary.js";
import { processLine } from "./utils/processLine.js";
import { renderDiffWithHighlighter } from "./utils/renderDiffWithHighlighter.js";
import { renderFileWithHighlighter } from "./utils/renderFileWithHighlighter.js";
import { setLanguageOverride } from "./utils/setLanguageOverride.js";
import { SetPreNodePropertiesProps, setPreNodeProperties } from "./utils/setWrapperNodeProps.js";
import { codeToHtml } from "shiki";
export { ALTERNATE_FILE_NAMES_GIT, AnnotationLineMap, AnnotationSide, AnnotationSpan, BaseCodeOptions, BaseDiffOptions, BundledLanguage, COMMIT_METADATA_SPLIT, CORE_CSS_ATTRIBUTE, ChangeContent, ChangeHunk, ChangeTypes, CodeToHastOptions, CodeToTokenTransformStream, CodeToTokenTransformStreamOptions, ContextContent, CreateFileHeaderElementProps, DEFAULT_THEMES, DecorationItem, DiffHunksRenderer, DiffLineAnnotation, DiffLineEventBaseProps, EXTENSION_TO_FILE_FORMAT, ExpansionDirections, ExtensionFormatMap, FILENAME_HEADER_REGEX, FILENAME_HEADER_REGEX_GIT, FILE_CONTEXT_BLOB, FILE_MODE_FROM_INDEX, File, FileContents, FileDiff, FileDiffHydrationProps, FileDiffMetadata, FileDiffOptions, FileDiffRenderProps, FileHyrdateProps, FileOptions, FileRenderProps, FileRenderResult, FileRenderer, FileRendererOptions, FileStream, FileStreamOptions, GIT_DIFF_FILE_BREAK_REGEX, GapSpan, GetHoveredLineResult, HEADER_METADATA_SLOT_ID, HUNK_HEADER, Hunk, HunkData, HunkLineType, HunkSeparators, HunksRenderResult, LanguageRegistration, LineAnnotation, LineDiffTypes, LineEventBaseProps, LineInfo, LineSelectionManager, LineSelectionOptions, LineSpans, LineTypes, LogTypes, MouseEventManager, MouseEventManagerBaseOptions, MouseEventManagerMode, MouseEventManagerOptions, ObservedAnnotationNodes, ObservedGridNodes, OnDiffLineClickProps, OnDiffLineEnterLeaveProps, OnLineClickProps, OnLineEnterLeaveProps, PJSHighlighter, PJSThemeNames, ParsedLine, ParsedPatch, PrePropertiesConfig, RecallToken, RenderDiffFilesResult, RenderDiffHunksResult, RenderDiffOptions, RenderDiffResult, RenderFileMetadata, RenderFileOptions, RenderFileResult, RenderHeaderMetadataCallback, RenderHeaderMetadataProps, RenderedDiffASTCache, RenderedFileASTCache, ResizeManager, SPLIT_WITH_NEWLINES, ScrollSyncManager, SelectedLineRange, SelectionSide, SetPreNodePropertiesProps, SharedRenderState, ShikiStreamTokenizer, ShikiStreamTokenizerEnqueueResult, ShikiStreamTokenizerOptions, ShikiTransformer, SupportedLanguages, ThemeRegistrationResolved, ThemeTypes, ThemedDiffResult, ThemedFileResult, ThemedToken, ThemesType, UNIFIED_DIFF_FILE_BREAK_REGEX, UNSAFE_CSS_ATTRIBUTE, areLanguagesAttached, areThemesAttached, areThemesEqual, attachResolvedLanguages, attachResolvedThemes, cleanLastNewline, cleanUpResolvedLanguages, cleanUpResolvedThemes, codeToHtml, createAnnotationElement, createAnnotationWrapperNode, createCodeNode, createDiffSpanDecoration, createEmptyRowBuffer, createFileHeaderElement, createHastElement, createHoverContentNode, createIconElement, createNoNewlineElement, createPreElement, createPreWrapperProperties, createRowNodes, createSeparator, createSpanFromToken, createStyleElement, createTextNodeElement, createTransformerWithState, diffAcceptRejectHunk, disposeHighlighter, extendFileFormatMap, findCodeElement, formatCSSVariablePrefix, getFiletypeFromFileName, getHighlighterIfLoaded, getHighlighterOptions, getHighlighterThemeStyles, getHunkSeparatorSlotName, getIconForType, getLineAnnotationName, getLineEndingType, getLineNodes, getResolvedLanguages, getResolvedOrResolveLanguage, getResolvedOrResolveTheme, getResolvedThemes, getSharedHighlighter, getSingularPatch, getThemes, getTotalLineCountFromHunks, hasResolvedLanguages, hasResolvedThemes, isHighlighterLoaded, isHighlighterLoading, isHighlighterNull, parseDiffFromFile, parseLineType, parsePatchFiles, pluckLineSelectionOptions, pluckMouseEventOptions, preloadHighlighter, prerenderHTMLIfNecessary, processLine, pushOrJoinSpan, queueRender, registerCustomTheme, renderDiffWithHighlighter, renderFileWithHighlighter, resolveLanguage, resolveLanguages, resolveTheme, resolveThemes, setLanguageOverride, setPreNodeProperties };