1
+ import React , { CSSProperties } from 'react' ;
2
+ import Prefixer from 'inline-style-prefixer' ;
3
+
4
+ export type Size = string | number ;
5
+
6
+ export interface Props {
7
+ allowResize ?: boolean ;
8
+ className ?: string ;
9
+ primary ?: 'first' | 'second' ;
10
+ minSize ?: Size ;
11
+ maxSize ?: Size ;
12
+ defaultSize ?: Size ;
13
+ size ?: Size ;
14
+ split ?: 'vertical' | 'horizontal' ;
15
+ onDragStarted ?: ( ) => void ;
16
+ onDragFinished ?: ( ) => void ;
17
+ onChange ?: ( newSize : number ) => void ;
18
+ onResizerClick ?: ( event : MouseEvent ) => void ;
19
+ onResizerDoubleClick ?: ( event : MouseEvent ) => void ;
20
+ prefixer ?: Prefixer ;
21
+ style ?: CSSProperties ;
22
+ resizerStyle ?: CSSProperties ;
23
+ paneStyle ?: CSSProperties ;
24
+ pane1Style ?: CSSProperties ;
25
+ pane2Style ?: CSSProperties ;
26
+ resizerClassName ?: string ;
27
+ step ?: number ;
28
+ }
29
+
30
+ export interface State {
31
+ active : boolean ;
32
+ resized : boolean ;
33
+ }
34
+
35
+ declare class SplitPane extends React . Component < Props , State > {
36
+ constructor ( ) ;
37
+
38
+ onMouseDown ( event : MouseEvent ) : void ;
39
+
40
+ onTouchStart ( event : TouchEvent ) : void ;
41
+
42
+ onMouseMove ( event : MouseEvent ) : void ;
43
+
44
+ onTouchMove ( event : TouchEvent ) : void ;
45
+
46
+ onMouseUp ( ) : void ;
47
+
48
+ setSize ( props : Props , state : State ) : void ;
49
+
50
+ static defaultProps : Props ;
51
+ }
52
+
53
+ export { SplitPane as default } ;
0 commit comments