forked from DefinitelyTyped/DefinitelyTyped
-
Notifications
You must be signed in to change notification settings - Fork 0
/
webcola.d.ts
71 lines (64 loc) · 2.06 KB
/
webcola.d.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
// Type definitions for webcola 3.0.1
// Project: https://github.com/tgdwyer/WebCola
// Definitions by: Qinfeng Chen <https://github.com/qinfchen>
// Definitions: https://github.com/borisyankov/DefinitelyTyped
declare module WebCola{
interface Adaptor {
new(options: { [index:number]: any }): Adaptor;
avoidOverlaps(avodOverLaps: boolean): Adaptor;
constraints(constraints: any): Adaptor;
convergenceThreshold(convergenceThreshold: number): Adaptor;
flowLayout(axis: string, minSeparation: number): Adaptor;
handleDisconnected(handleDisconnected: boolean): Adaptor;
links(links: any): Adaptor;
linkDistance(linkLength: number): Adaptor;
nodes(nodes: any): Adaptor;
resume(): void;
size(dimension: number[]): Adaptor;
start(
initialUnconstrainedIterations: number,
initialUserConstraintIterations: number,
initialAllConstraintsIterations: number
): void;
stop(): void;
tick(): any;
}
interface Cola {
adaptor: Adaptor;
colaDragstart(node: { [index: number]: any }): void;
colaDragend(node: { [index: number]: any }): void;
start(): void;
stop(): void;
}
interface Constraint {
axis: string;
gap: number;
left: number;
right: number;
}
interface FlowLayout {
axis: string;
minSeparation?: number;
}
interface Node {
height: number;
id: string;
size: number;
width: number;
x: number;
y: number;
}
interface Options {
avoidOverlaps?: boolean;
convergenceThreshold?: number;
constraints?: {[key: string]: any}[];
flowLayout?: FlowLayout;
handleDisconnected?: boolean;
linkDistance?: number;
initialUnconstrainedIterations?: number;
initialUserConstraintIterations?: number;
initialAllConstraintsIterations?: number;
symmetricDiffLinkLengths?: number;
}
}
declare var cola: WebCola.Cola;