1 | import { Group } from '../Group';
|
2 | import { DragulaOptions } from '../DragulaOptions';
|
3 | import { Observable } from 'rxjs';
|
4 | import { DrakeFactory } from '../DrakeFactory';
|
5 | export declare class DragulaService {
|
6 | private drakeFactory;
|
7 | private dispatch$;
|
8 | drag: (groupName?: string) => Observable<{
|
9 | name: string;
|
10 | el: Element;
|
11 | source: Element;
|
12 | }>;
|
13 | dragend: (groupName?: string) => Observable<{
|
14 | name: string;
|
15 | el: Element;
|
16 | }>;
|
17 | drop: (groupName?: string) => Observable<{
|
18 | name: string;
|
19 | el: Element;
|
20 | target: Element;
|
21 | source: Element;
|
22 | sibling: Element;
|
23 | }>;
|
24 | private elContainerSource;
|
25 | cancel: (groupName?: string) => Observable<{
|
26 | name: string;
|
27 | el: Element;
|
28 | container: Element;
|
29 | source: Element;
|
30 | }>;
|
31 | remove: (groupName?: string) => Observable<{
|
32 | name: string;
|
33 | el: Element;
|
34 | container: Element;
|
35 | source: Element;
|
36 | }>;
|
37 | shadow: (groupName?: string) => Observable<{
|
38 | name: string;
|
39 | el: Element;
|
40 | container: Element;
|
41 | source: Element;
|
42 | }>;
|
43 | over: (groupName?: string) => Observable<{
|
44 | name: string;
|
45 | el: Element;
|
46 | container: Element;
|
47 | source: Element;
|
48 | }>;
|
49 | out: (groupName?: string) => Observable<{
|
50 | name: string;
|
51 | el: Element;
|
52 | container: Element;
|
53 | source: Element;
|
54 | }>;
|
55 | cloned: (groupName?: string) => Observable<{
|
56 | name: string;
|
57 | clone: Element;
|
58 | original: Element;
|
59 | cloneType: "mirror" | "copy";
|
60 | }>;
|
61 | dropModel: <T = any>(groupName?: string) => Observable<{
|
62 | name: string;
|
63 | el: Element;
|
64 | target: Element;
|
65 | source: Element;
|
66 | sibling: Element;
|
67 | item: T;
|
68 | sourceModel: T[];
|
69 | targetModel: T[];
|
70 | sourceIndex: number;
|
71 | targetIndex: number;
|
72 | }>;
|
73 | removeModel: <T = any>(groupName?: string) => Observable<{
|
74 | name: string;
|
75 | el: Element;
|
76 | container: Element;
|
77 | source: Element;
|
78 | item: T;
|
79 | sourceModel: T[];
|
80 | sourceIndex: number;
|
81 | }>;
|
82 | private groups;
|
83 | constructor(drakeFactory?: DrakeFactory);
|
84 | /** Public mainly for testing purposes. Prefer `createGroup()`. */
|
85 | add(group: Group): Group;
|
86 | find(name: string): Group;
|
87 | destroy(name: string): void;
|
88 | /**
|
89 | * Creates a group with the specified name and options.
|
90 | *
|
91 | * Note: formerly known as `setOptions`
|
92 | */
|
93 | createGroup<T = any>(name: string, options: DragulaOptions<T>): Group;
|
94 | private handleModels({name, drake, options});
|
95 | private setupEvents(group);
|
96 | private domIndexOf(child, parent);
|
97 | }
|