import { DiffModeEnum } from '../utils/symbol.js'; import { DiffFile, type DiffHighlighter, SplitSide, type MultiSelectResult, type LineRange, type MultiSelectState } from '@git-diff-view/core'; import { type Snippet } from 'svelte'; import type { HTMLAttributes } from 'svelte/elements'; declare function $$render(): { props: { data?: { oldFile?: { fileName?: string | null; fileLang?: string | null; content?: string | null; }; newFile?: { fileName?: string | null; fileLang?: string | null; content?: string | null; }; hunks: string[]; }; extendData?: { oldFile?: Record; newFile?: Record; }; initialWidgetState?: { side: SplitSide; lineNumber: number; }; diffFile?: DiffFile; class?: string; style?: HTMLAttributes["style"]; registerHighlighter?: Omit; diffViewMode?: DiffModeEnum; diffViewWrap?: boolean; diffViewTheme?: "light" | "dark"; diffViewFontSize?: number; diffViewHighlight?: boolean; diffViewAddWidget?: boolean; /** * Enable multi-select feature * @default true */ enableMultiSelect?: boolean; /** * Callback when multi-line selection is complete */ onMultiSelectComplete?: (result: MultiSelectResult) => void; /** * Callback when selection changes (during drag) */ onMultiSelectChange?: (range: LineRange | null, state: MultiSelectState) => void; /** * Custom function to scope selection to one hunk */ scopeMultiSelectToHunk?: (range: LineRange) => LineRange | null; onAddWidgetClick?: (props: { lineNumber: number; fromLineNumber?: number; side: SplitSide; }) => void; renderWidgetLine?: Snippet<[{ lineNumber: number; fromLineNumber: number; side: SplitSide; diffFile: DiffFile; onClose: () => void; }]>; renderExtendLine?: Snippet<[{ lineNumber: number; side: SplitSide; data: T; diffFile: DiffFile; onUpdate: () => void; }]>; onInstanceCreated?: (instance: { getDiffFileInstance: () => DiffFile | null; getSelectionResult: () => MultiSelectResult | null; getSelectionState: () => MultiSelectState; clearSelection: () => void; setPreselectedLines: (lines: { old: number[]; new: number[]; }) => void; }) => void; }; exports: {}; bindings: ""; slots: {}; events: {}; }; declare class __sveltets_Render { props(): ReturnType>['props']; events(): ReturnType>['events']; slots(): ReturnType>['slots']; bindings(): ""; exports(): {}; } interface $$IsomorphicComponent { new (options: import('svelte').ComponentConstructorOptions['props']>>): import('svelte').SvelteComponent['props']>, ReturnType<__sveltets_Render['events']>, ReturnType<__sveltets_Render['slots']>> & { $$bindings?: ReturnType<__sveltets_Render['bindings']>; } & ReturnType<__sveltets_Render['exports']>; (internal: unknown, props: ReturnType<__sveltets_Render['props']> & {}): ReturnType<__sveltets_Render['exports']>; z_$$bindings?: ReturnType<__sveltets_Render['bindings']>; } declare const DiffViewWithMultiSelect: $$IsomorphicComponent; type DiffViewWithMultiSelect = InstanceType>; export default DiffViewWithMultiSelect;