{"version":3,"file":"FileDiff.d.ts","names":["GetHoveredLineResult","GetLineIndexUtility","InteractionManager","InteractionManagerBaseOptions","SelectedLineRange","ResizeManager","ScrollSyncManager","DiffHunksRenderer","HunksRenderResult","BaseDiffOptions","CustomPreProperties","DiffLineAnnotation","ExpansionDirections","FileContents","FileDiffMetadata","HunkData","HunkSeparators","PrePropertiesConfig","RenderHeaderMetadataCallback","RenderHeaderPrefixCallback","RenderRange","ThemeTypes","WorkerPoolManager","FileDiffRenderProps","LAnnotation","HTMLElement","FileDiffHydrationProps","Omit","FileDiffOptions","Exclude","FileDiff","DocumentFragment","AnnotationElementCache","CustomHunkElementCache","SVGElement","HTMLPreElement","HTMLStyleElement","Map","__0","AnnotationSide","oldFile","newFile","fileDiff","forceRender","preventEmit","lineAnnotations","fileContainer","containerWrapper","renderRange","themeStyles","baseThemeType","additionsContentAST","deletionsContentAST","totalLines"],"sources":["../../src/components/FileDiff.d.ts"],"sourcesContent":["import { type GetHoveredLineResult, type GetLineIndexUtility, InteractionManager, type InteractionManagerBaseOptions, type SelectedLineRange } from '../managers/InteractionManager';\nimport { ResizeManager } from '../managers/ResizeManager';\nimport { ScrollSyncManager } from '../managers/ScrollSyncManager';\nimport { DiffHunksRenderer, type HunksRenderResult } from '../renderers/DiffHunksRenderer';\nimport type { BaseDiffOptions, CustomPreProperties, DiffLineAnnotation, ExpansionDirections, FileContents, FileDiffMetadata, HunkData, HunkSeparators, PrePropertiesConfig, RenderHeaderMetadataCallback, RenderHeaderPrefixCallback, RenderRange, ThemeTypes } from '../types';\nimport type { WorkerPoolManager } from '../worker';\nexport interface FileDiffRenderProps {\n fileDiff?: FileDiffMetadata;\n oldFile?: FileContents;\n newFile?: FileContents;\n forceRender?: boolean;\n preventEmit?: boolean;\n fileContainer?: HTMLElement;\n containerWrapper?: HTMLElement;\n lineAnnotations?: DiffLineAnnotation[];\n renderRange?: RenderRange;\n}\nexport interface FileDiffHydrationProps extends Omit, 'fileContainer'> {\n fileContainer: HTMLElement;\n prerenderedHTML?: string;\n}\nexport interface FileDiffOptions extends Omit, InteractionManagerBaseOptions<'diff'> {\n hunkSeparators?: Exclude /**\n * @deprecated Custom hunk separator functions are deprecated and will be\n * removed in a future version.\n */ | ((hunk: HunkData, instance: FileDiff) => HTMLElement | DocumentFragment | null | undefined);\n disableFileHeader?: boolean;\n /**\n * @deprecated Use `enableGutterUtility` instead.\n */\n enableHoverUtility?: boolean;\n renderHeaderPrefix?: RenderHeaderPrefixCallback;\n renderHeaderMetadata?: RenderHeaderMetadataCallback;\n /**\n * When true, errors during rendering are rethrown instead of being caught\n * and displayed in the DOM. Useful for testing or when you want to handle\n * errors yourself.\n */\n disableErrorHandling?: boolean;\n renderAnnotation?(annotation: DiffLineAnnotation): HTMLElement | undefined;\n renderGutterUtility?(getHoveredRow: () => GetHoveredLineResult<'diff'> | undefined): HTMLElement | null | undefined;\n /**\n * @deprecated Use `renderGutterUtility` instead.\n */\n renderHoverUtility?(getHoveredRow: () => GetHoveredLineResult<'diff'> | undefined): HTMLElement | null | undefined;\n onPostRender?(node: HTMLElement, instance: FileDiff): unknown;\n}\ninterface AnnotationElementCache {\n element: HTMLElement;\n annotation: DiffLineAnnotation;\n}\ninterface CustomHunkElementCache {\n element: HTMLElement;\n hunkData: HunkData;\n}\nexport declare class FileDiff {\n options: FileDiffOptions;\n protected workerManager?: WorkerPoolManager | undefined;\n protected isContainerManaged: boolean;\n static LoadedCustomComponent: boolean;\n readonly __id: string;\n protected fileContainer: HTMLElement | undefined;\n protected spriteSVG: SVGElement | undefined;\n protected pre: HTMLPreElement | undefined;\n protected codeUnified: HTMLElement | undefined;\n protected codeDeletions: HTMLElement | undefined;\n protected codeAdditions: HTMLElement | undefined;\n protected bufferBefore: HTMLElement | undefined;\n protected bufferAfter: HTMLElement | undefined;\n protected unsafeCSSStyle: HTMLStyleElement | undefined;\n protected gutterUtilityContent: HTMLElement | undefined;\n protected headerElement: HTMLElement | undefined;\n protected headerPrefix: HTMLElement | undefined;\n protected headerMetadata: HTMLElement | undefined;\n protected separatorCache: Map;\n protected errorWrapper: HTMLElement | undefined;\n protected placeHolder: HTMLElement | undefined;\n protected hunksRenderer: DiffHunksRenderer;\n protected resizeManager: ResizeManager;\n protected scrollSyncManager: ScrollSyncManager;\n protected interactionManager: InteractionManager<'diff'>;\n protected annotationCache: Map>;\n protected lineAnnotations: DiffLineAnnotation[];\n protected deletionFile: FileContents | undefined;\n protected additionFile: FileContents | undefined;\n protected fileDiff: FileDiffMetadata | undefined;\n protected renderRange: RenderRange | undefined;\n protected appliedPreAttributes: PrePropertiesConfig | undefined;\n protected lastRenderedHeaderHTML: string | undefined;\n protected lastRowCount: number | undefined;\n protected enabled: boolean;\n constructor(options?: FileDiffOptions, workerManager?: WorkerPoolManager | undefined, isContainerManaged?: boolean);\n protected handleHighlightRender: () => void;\n protected getHunksRendererOptions(options: FileDiffOptions): BaseDiffOptions;\n protected createHunksRenderer(options: FileDiffOptions): DiffHunksRenderer;\n getLineIndex: GetLineIndexUtility;\n setOptions(options: FileDiffOptions | undefined): void;\n private mergeOptions;\n setThemeType(themeType: ThemeTypes): void;\n getHoveredLine: () => {\n lineNumber: number;\n side: import(\"..\").AnnotationSide;\n } | undefined;\n setLineAnnotations(lineAnnotations: DiffLineAnnotation[]): void;\n private canPartiallyRender;\n setSelectedLines(range: SelectedLineRange | null): void;\n cleanUp(recycle?: boolean): void;\n virtualizedSetup(): void;\n hydrate(props: FileDiffHydrationProps): void;\n rerender(): void;\n handleExpandHunk: (hunkIndex: number, direction: ExpansionDirections, expansionLineCountOverride?: number | undefined) => void;\n expandHunk: (hunkIndex: number, direction: ExpansionDirections, expansionLineCountOverride?: number | undefined) => void;\n render({ oldFile, newFile, fileDiff, forceRender, preventEmit, lineAnnotations, fileContainer, containerWrapper, renderRange }: FileDiffRenderProps): boolean;\n protected emitPostRender(): void;\n private removeRenderedCode;\n private clearAuxiliaryNodes;\n renderPlaceholder(height: number): boolean;\n private cleanChildNodes;\n private renderSeparators;\n private renderAnnotations;\n private renderGutterUtility;\n protected getOrCreateFileContainer(fileContainer?: HTMLElement, parentNode?: HTMLElement): HTMLElement;\n protected getFileContainer(): HTMLElement | undefined;\n private getOrCreatePreNode;\n private syncCodeNodesFromPre;\n private applyHeaderToDOM;\n private injectUnsafeCSS;\n private applyHunksToDOM;\n private applyPartialRender;\n private insertPartialHTML;\n private renderPartialColumn;\n private mergeBuffersIfNecessary;\n private applyRowSpan;\n private trimColumnRows;\n private trimColumns;\n private getBufferSize;\n private updateBufferSize;\n private getCodeColumns;\n private applyBuffers;\n protected applyPreNodeAttributes(pre: HTMLPreElement, { themeStyles, baseThemeType, additionsContentAST, deletionsContentAST, totalLines }: HunksRenderResult, customProperties?: CustomPreProperties): void;\n private applyErrorToDOM;\n private cleanupErrorWrapper;\n}\nexport {};\n//# sourceMappingURL=FileDiff.d.ts.map"],"mappings":"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"}