@@ -2,11 +2,38 @@ import { createEffect, createSignal, onCleanup } from "solid-js";
22
33import { useDiffViewContext } from "../components/DiffViewContext" ;
44
5+ import type { DiffViewProps } from "../components/DiffView" ;
56import type { createDiffConfigStore } from "../components/tools" ;
7+ import type { DiffModeEnum } from "@git-diff-view/utils" ;
68
79type AllKey = keyof ReturnType < ReturnType < typeof createDiffConfigStore > [ "getReadonlyState" ] > ;
810
9- type Data = ReturnType < ReturnType < typeof createDiffConfigStore > [ "getReadonlyState" ] > ;
11+ type Data = {
12+ id : string ;
13+ setId : ( id : string ) => void ;
14+ dom : HTMLElement | undefined ;
15+ setDom : ( dom : HTMLElement ) => void ;
16+ mode : DiffModeEnum ;
17+ setMode : ( mode : DiffModeEnum ) => void ;
18+ isMounted : boolean ;
19+ setIsIsMounted : ( isMounted : boolean ) => void ;
20+ enableWrap : boolean ;
21+ setEnableWrap : ( enableWrap : boolean ) => void ;
22+ enableAddWidget : boolean ;
23+ setEnableAddWidget : ( enableAddWidget : boolean ) => void ;
24+ enableHighlight : boolean ;
25+ setEnableHighlight : ( enableHighlight : boolean ) => void ;
26+ fontSize : number ;
27+ setFontSize : ( fontSize : number ) => void ;
28+ extendData : DiffViewProps < any > [ "extendData" ] ;
29+ setExtendData : ( extendData : DiffViewProps < any > [ "extendData" ] ) => void ;
30+ renderWidgetLine : DiffViewProps < any > [ "renderWidgetLine" ] ;
31+ setRenderWidgetLine : ( renderWidgetLine : DiffViewProps < any > [ "renderWidgetLine" ] ) => void ;
32+ renderExtendLine : DiffViewProps < any > [ "renderExtendLine" ] ;
33+ setRenderExtendLine : ( renderExtendLine : DiffViewProps < any > [ "renderExtendLine" ] ) => void ;
34+ onAddWidgetClick : { current : DiffViewProps < any > [ "onAddWidgetClick" ] } ;
35+ setOnAddWidgetClick : ( onAddWidgetClick : { current : DiffViewProps < any > [ "onAddWidgetClick" ] } ) => void ;
36+ } ;
1037
1138export const generateHook = < T extends AllKey , K extends Data [ T ] = Data [ T ] > ( key : T ) => {
1239 return ( ) => {
0 commit comments