@progress/kendo-angular-sortable 24.2.2 → 25.0.0-develop.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.d.ts CHANGED
@@ -2,19 +2,928 @@
2
2
  * Copyright © 2026 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
- export { SortableComponent } from './sortable.component';
6
- export { SortableModule } from './sortable.module';
7
- export { PreventableEvent } from './events/preventable-event';
8
- export { DraggableEvent } from './events/draggable-event';
9
- export { DragStartEvent, DragEndEvent, DragOverEvent } from './events/sortable-events';
10
- export { SortableEvent } from './events/sortable-event-args.interface';
11
- export { NavigateEvent } from './events/navigate-event';
12
- export { DataEvent } from './events/data-event-args.interface';
13
- export { DataMoveEvent, DataAddEvent, DataRemoveEvent } from './events/data-events';
14
- export { DraggableDirective } from "./draggable.directive";
15
- export { SortableBindingDirective } from "./binding.directive";
16
- export { PlaceholderTemplateDirective } from './item-template.directive';
17
- export { ItemTemplateDirective } from './item-template.directive';
18
- export { SortableService } from './sortable.service';
19
- export { SortableContainer } from './sortable-container';
20
- export * from './directives';
5
+ import * as i0 from '@angular/core';
6
+ import { OnInit, ElementRef, Renderer2, OnDestroy, NgZone, AfterViewInit, AfterViewChecked, AfterContentInit, TrackByFunction, QueryList, TemplateRef, EventEmitter, ChangeDetectorRef, Injector } from '@angular/core';
7
+ import { Subject } from 'rxjs';
8
+ import { LocalizationService } from '@progress/kendo-angular-l10n';
9
+
10
+ /**
11
+ * @hidden
12
+ */
13
+ declare abstract class SortableContainer {
14
+ abstract activeIndex: number;
15
+ abstract removeDataItem(index: number): void;
16
+ static ɵfac: i0.ɵɵFactoryDeclaration<SortableContainer, never>;
17
+ static ɵprov: i0.ɵɵInjectableDeclaration<SortableContainer>;
18
+ }
19
+
20
+ /**
21
+ * @hidden
22
+ */
23
+ declare class DraggableDirective implements OnInit {
24
+ parent: SortableContainer;
25
+ el: ElementRef;
26
+ private renderer;
27
+ set index(value: number);
28
+ get index(): number;
29
+ set disabled(value: boolean);
30
+ get disabled(): boolean;
31
+ set hidden(value: boolean);
32
+ get hidden(): boolean;
33
+ get _focused(): boolean;
34
+ get display(): string;
35
+ set display(display: string);
36
+ private _display;
37
+ private _index;
38
+ private _disabled;
39
+ private _hidden;
40
+ constructor(parent: SortableContainer, el: ElementRef, renderer: Renderer2);
41
+ ngOnInit(): void;
42
+ private updateDisplayStyle;
43
+ static ɵfac: i0.ɵɵFactoryDeclaration<DraggableDirective, never>;
44
+ static ɵdir: i0.ɵɵDirectiveDeclaration<DraggableDirective, "[kendoDraggable]", never, { "index": { "alias": "index"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "hidden": { "alias": "hidden"; "required": false; }; }, {}, never, never, true, never>;
45
+ }
46
+
47
+ /**
48
+ * The `SortableService` is a service that manages the drag-and-drop functionality
49
+ * for transferring items between Sortable components.
50
+ */
51
+ declare class SortableService implements OnDestroy {
52
+ private ngZone;
53
+ /**
54
+ * Specifies the Draggable item that is currently being moved.
55
+ */
56
+ activeDraggable: DraggableDirective;
57
+ /**
58
+ * Specifies the Draggable item from which the dragging started.
59
+ */
60
+ originDraggable: DraggableDirective;
61
+ /**
62
+ * @hidden
63
+ */
64
+ originIndex: number;
65
+ /**
66
+ * @hidden
67
+ */
68
+ targetSortable: {
69
+ component: SortableComponent;
70
+ index: number;
71
+ };
72
+ /**
73
+ * Specifies the Draggable item that last emitted an event.
74
+ */
75
+ lastDraggable: DraggableDirective;
76
+ /**
77
+ * @hidden
78
+ */
79
+ onPressSubject: Subject<any>;
80
+ /**
81
+ * @hidden
82
+ */
83
+ onDragSubject: Subject<any>;
84
+ /**
85
+ * @hidden
86
+ */
87
+ onReleaseSubject: Subject<any>;
88
+ /**
89
+ * Specifies the `SortableComponent` instance under the currently dragged item.
90
+ */
91
+ set target(target: SortableComponent);
92
+ get target(): SortableComponent;
93
+ private subscriptions;
94
+ private source;
95
+ private _target;
96
+ private sortableCounter;
97
+ private sortableRegister;
98
+ private pressArgs;
99
+ /**
100
+ * @hidden
101
+ */
102
+ readonly source$: i0.Signal<SortableComponent>;
103
+ /**
104
+ * @hidden
105
+ */
106
+ constructor(ngZone: NgZone);
107
+ /**
108
+ * @hidden
109
+ */
110
+ onPress(e: any): void;
111
+ /**
112
+ * @hidden
113
+ */
114
+ onDrag(e: any): void;
115
+ /**
116
+ * @hidden
117
+ */
118
+ onRelease(e: any): void;
119
+ /**
120
+ * @hidden
121
+ */
122
+ ngOnDestroy(): void;
123
+ /**
124
+ * Registers a `SortableComponent` with the `SortableService` so that it can be managed by the service.
125
+ *
126
+ * @param sortableComponent - The `SortableComponent`.
127
+ * @return - The unique key that the current `SortableComponent` gets when registered.
128
+ */
129
+ registerComponent(sortableComponent: SortableComponent): string;
130
+ /**
131
+ * Removes a `SortableComponent` from the registered `SortableComponents` with which the service operates.
132
+ *
133
+ * @param key - The key of the `SortableComponent` which will be removed from the register.
134
+ * Obtained when `registerComponent` is called.
135
+ */
136
+ unregisterComponent(key: string): void;
137
+ /**
138
+ * Sets the `SortableComponent` as a source component. When dragging an item from one Sortable to another,
139
+ * the source component is the one from which the item originates.
140
+ *
141
+ * @param sortable - The `SortableComponent`.
142
+ */
143
+ setSource(sortable: SortableComponent): void;
144
+ /**
145
+ * Returns the source `SortableComponent` from which
146
+ * an item is dragged to other Sortable components.
147
+ *
148
+ * @return - The `SourceComponent`.
149
+ */
150
+ getSource(): SortableComponent;
151
+ /**
152
+ * The method that finds the `SortableComponent` which is registered to
153
+ * the `SortableService` by using the arguments of the `touch` event.
154
+ *
155
+ * @param touch - A Touch-Object of the `Touch` type interface.
156
+ * Represents a single contact point (finger or stylus)
157
+ * on a touch-sensitive device (touchscreen or trackpad).
158
+ *
159
+ * @return { component: SortableComponent, index: number } - An object where the component is the `SortableComponent` that owns the item and the index is the index of the touched item.
160
+ */
161
+ getSortableComponentFromTouch(touch: any): {
162
+ component: SortableComponent;
163
+ index: number;
164
+ };
165
+ private start;
166
+ private release;
167
+ private drag;
168
+ static ɵfac: i0.ɵɵFactoryDeclaration<SortableService, never>;
169
+ static ɵprov: i0.ɵɵInjectableDeclaration<SortableService>;
170
+ }
171
+
172
+ /**
173
+ * Defines an event whose default action can be prevented
174
+ * by calling the `preventDefault` method.
175
+ *
176
+ * @hidden
177
+ */
178
+ declare abstract class PreventableEvent {
179
+ private prevented;
180
+ /**
181
+ * Prevents the default action for a specified event.
182
+ * In this way, the source component suppresses
183
+ * the built-in behavior that follows the event.
184
+ */
185
+ preventDefault(): void;
186
+ /**
187
+ * If the event was prevented
188
+ * by any of its subscribers, returns `true`.
189
+ *
190
+ * @returns `true` if the default action was prevented. Otherwise, returns `false`.
191
+ */
192
+ isDefaultPrevented(): boolean;
193
+ }
194
+
195
+ /**
196
+ * Represents the arguments for the `dataAdd` and `dataRemove` events.
197
+ * @hidden
198
+ */
199
+ interface DataEvent {
200
+ /**
201
+ * Specifies the index of the data item.
202
+ */
203
+ index: number;
204
+ /**
205
+ * Specifies the data item to add or remove.
206
+ */
207
+ dataItem: object;
208
+ /**
209
+ * Specifies the Sortable component that emits the event.
210
+ */
211
+ sender: SortableComponent;
212
+ }
213
+
214
+ /**
215
+ * Represents the arguments for the `SortableComponent` `dataAdd` event.
216
+ */
217
+ declare class DataAddEvent implements DataEvent {
218
+ /**
219
+ * Specifies the index of the data item.
220
+ */
221
+ index: number;
222
+ /**
223
+ * Specifies the data item to add.
224
+ */
225
+ dataItem: any;
226
+ /**
227
+ * Specifies the Sortable component that emits the event.
228
+ */
229
+ sender: SortableComponent;
230
+ /**
231
+ * @hidden
232
+ */
233
+ constructor(options: any);
234
+ }
235
+ /**
236
+ * Represents the arguments for the `SortableComponent` `dataRemove` event.
237
+ */
238
+ declare class DataRemoveEvent implements DataEvent {
239
+ /**
240
+ * Specifies the index of the data item.
241
+ */
242
+ index: number;
243
+ /**
244
+ * Specifies the data item to remove.
245
+ */
246
+ dataItem: any;
247
+ /**
248
+ * Specifies the Sortable component that emits the event.
249
+ */
250
+ sender: SortableComponent;
251
+ /**
252
+ * @hidden
253
+ */
254
+ constructor(options: any);
255
+ }
256
+ /**
257
+ * Represents the arguments for the `SortableComponent` `dataMove` event.
258
+ */
259
+ declare class DataMoveEvent extends PreventableEvent implements DataEvent {
260
+ /**
261
+ * Specifies the index of the data item.
262
+ */
263
+ index: number;
264
+ /**
265
+ * Specifies the old index of the data item.
266
+ */
267
+ oldIndex: number;
268
+ /**
269
+ * Specifies the data item to move.
270
+ */
271
+ dataItem: any;
272
+ /**
273
+ * Specifies the Sortable component that emits the event.
274
+ */
275
+ sender: SortableComponent;
276
+ /**
277
+ * @hidden
278
+ */
279
+ constructor(options: any);
280
+ }
281
+
282
+ /**
283
+ * Represents the [Kendo UI Sortable component for Angular](https://www.telerik.com/kendo-angular-ui/components/sortable).
284
+ *
285
+ * @example
286
+ * ```html
287
+ * <kendo-sortable [data]="['Item 1', 'Item 2', 'Item 3']"></kendo-sortable>
288
+ * ```
289
+ */
290
+ declare class SortableComponent implements OnInit, OnDestroy, AfterViewInit, AfterViewChecked, AfterContentInit, SortableContainer {
291
+ private ngZone;
292
+ private renderer;
293
+ private cdr;
294
+ private localization;
295
+ private injector;
296
+ /**
297
+ * Specifies the tab index of the Sortable component.
298
+ */
299
+ set tabIndex(value: number);
300
+ get tabIndex(): number;
301
+ /**
302
+ * Configures how the Sortable component tracks changes in its items collection.
303
+ */
304
+ set trackBy(value: TrackByFunction<any>);
305
+ get trackBy(): TrackByFunction<any>;
306
+ /**
307
+ * Sets an array of any data that is used as a data source for the Sortable.
308
+ */
309
+ set data(data: Array<any>);
310
+ get data(): Array<any>;
311
+ /**
312
+ * Sets a boolean value that determines whether the Sortable items are navigable using the keyboard. [See example](https://www.telerik.com/kendo-angular-ui/components/sortable/keyboard-navigation).
313
+ * @default true
314
+ *
315
+ * @remarks
316
+ * This property is related to accessibility.
317
+ */
318
+ set navigable(value: boolean);
319
+ get navigable(): boolean;
320
+ /**
321
+ * Enables or disables built-in animations.
322
+ * @default false
323
+ */
324
+ set animation(value: boolean);
325
+ get animation(): boolean;
326
+ /**
327
+ * Sets an array of integers that represent the indexes of the disabled items from the data array. [See example](https://www.telerik.com/kendo-angular-ui/components/sortable/items#disabling-items).
328
+ */
329
+ set disabledIndexes(value: number[]);
330
+ get disabledIndexes(): number[];
331
+ /**
332
+ * Sets a string that represents the name of the zone to which the Sortable belongs
333
+ * ([see example](https://www.telerik.com/kendo-angular-ui/components/sortable/items#transferring-items)). Items can be transferred
334
+ * between Sortables in the same zone.
335
+ */
336
+ set zone(value: string);
337
+ get zone(): string;
338
+ /**
339
+ * Defines the zones from which items can be transferred onto the current Sortable component
340
+ * ([see example](https://www.telerik.com/kendo-angular-ui/components/sortable/items#transferring-items)). If the `acceptZones` property
341
+ * of the target Sortable is set, you can transfer items between Sortables in different zones.
342
+ */
343
+ set acceptZones(value: string[]);
344
+ get acceptZones(): string[];
345
+ /**
346
+ * Represents the CSS styles applied to each Sortable item.
347
+ */
348
+ set itemStyle(value: {
349
+ [key: string]: string;
350
+ });
351
+ get itemStyle(): {
352
+ [key: string]: string;
353
+ };
354
+ /**
355
+ * Defines the CSS styles applied to an empty item ([see example](https://www.telerik.com/kendo-angular-ui/components/sortable/templates)).
356
+ */
357
+ set emptyItemStyle(value: {
358
+ [key: string]: string;
359
+ });
360
+ get emptyItemStyle(): {
361
+ [key: string]: string;
362
+ };
363
+ /**
364
+ * Defines the CSS styles which are applied to the currently dragged item ([see example](https://www.telerik.com/kendo-angular-ui/components/sortable/templates)).
365
+ */
366
+ set activeItemStyle(value: {
367
+ [key: string]: string;
368
+ });
369
+ get activeItemStyle(): {
370
+ [key: string]: string;
371
+ };
372
+ /**
373
+ * Defines the CSS styles which are applied to all disabled items.
374
+ */
375
+ set disabledItemStyle(value: {
376
+ [key: string]: string;
377
+ });
378
+ get disabledItemStyle(): {
379
+ [key: string]: string;
380
+ };
381
+ /**
382
+ * Defines the class which is applied to each Sortable item.
383
+ */
384
+ set itemClass(value: string | string[] | Set<string>);
385
+ get itemClass(): string | string[] | Set<string>;
386
+ /**
387
+ * Defines the class which is applied to the active Sortable item.
388
+ */
389
+ set activeItemClass(value: string | string[] | Set<string>);
390
+ get activeItemClass(): string | string[] | Set<string>;
391
+ /**
392
+ * Defines the class which is applied to the empty item when the Sortable has empty data.
393
+ */
394
+ set emptyItemClass(value: string | string[] | Set<string>);
395
+ get emptyItemClass(): string | string[] | Set<string>;
396
+ /**
397
+ * Defines the class which is applied to each disabled Sortable item.
398
+ */
399
+ set disabledItemClass(value: string | string[] | Set<string>);
400
+ get disabledItemClass(): string | string[] | Set<string>;
401
+ /**
402
+ * Sets the text message that will be displayed when the Sortable has no items.
403
+ */
404
+ set emptyText(value: string);
405
+ get emptyText(): string;
406
+ /**
407
+ * @hidden
408
+ */
409
+ defaultTemplateRef: QueryList<TemplateRef<any>>;
410
+ /**
411
+ * Defines the template that will be used for rendering the items.
412
+ * @hidden
413
+ */
414
+ itemTemplateDirectiveRef: QueryList<TemplateRef<any>>;
415
+ /**
416
+ * Defines the template that will be used for rendering the placeholder.
417
+ * @hidden
418
+ */
419
+ placeholderTemplateDirectiveRef: QueryList<TemplateRef<any>>;
420
+ itemWrappers: QueryList<any>;
421
+ draggables: QueryList<DraggableDirective>;
422
+ noDataContainer: ElementRef;
423
+ hint: ElementRef;
424
+ /**
425
+ * Fires when the dragging of an item is started.
426
+ */
427
+ dragStart: EventEmitter<any>;
428
+ /**
429
+ * Fires when the dragging of an item is completed.
430
+ */
431
+ dragEnd: EventEmitter<any>;
432
+ /**
433
+ * Fires while the dragging of an item is in progress.
434
+ */
435
+ dragOver: EventEmitter<any>;
436
+ /**
437
+ * Fires when dragging an item outside of the component.
438
+ */
439
+ dragLeave: EventEmitter<any>;
440
+ /**
441
+ * Fires while the moving an item from one position to another.
442
+ */
443
+ dataMove: EventEmitter<DataMoveEvent>;
444
+ /**
445
+ * Fires when a new item is added to the Sortable.
446
+ */
447
+ dataAdd: EventEmitter<DataAddEvent>;
448
+ /**
449
+ * Fires when an item is removed from the Sortable.
450
+ */
451
+ dataRemove: EventEmitter<DataRemoveEvent>;
452
+ /**
453
+ * Fires when navigating using the keyboard.
454
+ */
455
+ navigate: EventEmitter<any>;
456
+ /**
457
+ * The index of the currently focused item.
458
+ * If no item is focused, set to `-1`.
459
+ */
460
+ set activeIndex(value: number);
461
+ get activeIndex(): number;
462
+ get touchAction(): string;
463
+ get dir(): string;
464
+ hostRole: string;
465
+ /**
466
+ * Flag indicating if the component is currently playing animations.
467
+ * @hidden
468
+ */
469
+ animating: boolean;
470
+ /**
471
+ * The index of the currently dragged item.
472
+ */
473
+ set dragIndex(value: number);
474
+ get dragIndex(): number;
475
+ /**
476
+ * The index of the item above which the dragged item is.
477
+ */
478
+ set dragOverIndex(value: number);
479
+ get dragOverIndex(): number;
480
+ onDragStartSubject: Subject<any>;
481
+ onDragOverSubject: Subject<any>;
482
+ onDragLeaveSubject: Subject<any>;
483
+ onDragEndSubject: Subject<any>;
484
+ /**
485
+ * The SortableComponent's HTMLElement.
486
+ */
487
+ wrapper: HTMLElement;
488
+ /**
489
+ * The location of the hint indicator when dragging on mobile devices.
490
+ */
491
+ set hintLocation(value: {
492
+ x: number;
493
+ y: number;
494
+ });
495
+ get hintLocation(): {
496
+ x: number;
497
+ y: number;
498
+ };
499
+ id: string;
500
+ itemTemplateRef: TemplateRef<any>;
501
+ placeholderTemplateRef: TemplateRef<any>;
502
+ _localData: Array<any>;
503
+ /**
504
+ * @hidden
505
+ */
506
+ ariaKeyShortcuts: string;
507
+ private _tabIndex;
508
+ private _trackBy;
509
+ private _data;
510
+ private _navigable;
511
+ private _animation;
512
+ private _disabledIndexes;
513
+ private _zone;
514
+ private _acceptZones;
515
+ private _itemStyle;
516
+ private _emptyItemStyle;
517
+ private _activeItemStyle;
518
+ private _disabledItemStyle;
519
+ private _itemClass;
520
+ private _activeItemClass;
521
+ private _emptyItemClass;
522
+ private _disabledItemClass;
523
+ private _emptyText;
524
+ private _activeIndex;
525
+ private _dragIndex;
526
+ private _dragOverIndex;
527
+ private _hintLocation;
528
+ private localizationChangeSubscription;
529
+ private dragStartSubscription;
530
+ private dragOverSubscription;
531
+ private dragLeaveSubscription;
532
+ private dragEndSubscription;
533
+ private childrenTabindexSubscription;
534
+ private focusableItems;
535
+ private animationDuration;
536
+ private afterKeyPress;
537
+ private sortableService;
538
+ private _hideActiveItem;
539
+ private prevActiveIndex;
540
+ private _direction;
541
+ private _animating;
542
+ private draggable;
543
+ private offsetParent;
544
+ protected setItemData(data: any, i: number): any;
545
+ /**
546
+ * @hidden
547
+ */
548
+ itemTemplate(index: number): TemplateRef<any>;
549
+ /**
550
+ * @hidden
551
+ */
552
+ readonly hintVisible: i0.Signal<boolean>;
553
+ constructor(ngZone: NgZone, renderer: Renderer2, cdr: ChangeDetectorRef, localization: LocalizationService, wrapper: ElementRef, sortableService: SortableService, injector: Injector);
554
+ ngOnInit(): void;
555
+ ngAfterViewInit(): void;
556
+ ngOnDestroy(): void;
557
+ ngAfterContentInit(): void;
558
+ ngAfterViewChecked(): void;
559
+ /**
560
+ * @hidden
561
+ */
562
+ setFocusableChildren(): void;
563
+ /**
564
+ * @hidden
565
+ */
566
+ updateCacheIndices(): void;
567
+ /**
568
+ * @hidden
569
+ */
570
+ cacheData(): void;
571
+ /**
572
+ * @hidden
573
+ */
574
+ startDrag(event: any): boolean;
575
+ /**
576
+ * @hidden
577
+ */
578
+ setInitialItemTabindex(): void;
579
+ /**
580
+ * @hidden
581
+ */
582
+ drag(event: any): boolean;
583
+ /**
584
+ * @hidden
585
+ */
586
+ leave(event: any): boolean;
587
+ /**
588
+ * @hidden
589
+ */
590
+ endDrag(event: any): boolean;
591
+ /**
592
+ * @hidden
593
+ */
594
+ currentItemStyle(index: number): {
595
+ [key: string]: string;
596
+ };
597
+ /**
598
+ * @hidden
599
+ */
600
+ currentItemClass(index: number): string | string[] | Set<string>;
601
+ /**
602
+ * @hidden
603
+ */
604
+ hintStyle(): {
605
+ [key: string]: string;
606
+ };
607
+ /**
608
+ * @hidden
609
+ */
610
+ itemEnabled(index: number): boolean;
611
+ /**
612
+ * @hidden
613
+ */
614
+ acceptDragFrom(sortableComponent: SortableComponent): boolean;
615
+ /**
616
+ * @hidden
617
+ */
618
+ ariaDropEffect(index: number): string;
619
+ /**
620
+ * @hidden
621
+ */
622
+ focusHandler(index: number): void;
623
+ /**
624
+ * @hidden
625
+ */
626
+ blurHandler(): void;
627
+ /**
628
+ * @hidden
629
+ */
630
+ onArrowHandler(event: any, keyCode: string): void;
631
+ /**
632
+ * @hidden
633
+ */
634
+ onEnterHandler(item: any): void;
635
+ /**
636
+ * @hidden
637
+ */
638
+ onEscapeHandler(event: KeyboardEvent): void;
639
+ /**
640
+ * @hidden
641
+ */
642
+ keydownHandler: (event: KeyboardEvent) => void;
643
+ /**
644
+ * Removes the currently active item from the Data collection that the Sortable uses.
645
+ */
646
+ removeDataItem(index: number): void;
647
+ /**
648
+ * Sets a boolean value that indicates whether the item will be hidden or not.
649
+ * @hidden
650
+ */
651
+ hideItem(index: number, hidden?: boolean): void;
652
+ /**
653
+ * Gets or sets a boolean value that indicates whether the currently dragged item will be hidden.
654
+ *
655
+ * If the currently dragged item is hidden, returns `true`.
656
+ * If the currently dragged item is visible, returns `false`.
657
+ */
658
+ get hideActiveItem(): boolean;
659
+ set hideActiveItem(value: boolean);
660
+ /**
661
+ * Clears the active item.
662
+ * An active item is the one that is currently focused when the user navigates with the keyboard.
663
+ */
664
+ clearActiveItem(): void;
665
+ /**
666
+ * Returns the currently active item when the user navigates with the keyboard.
667
+ * @return - The data item which is currently active.
668
+ */
669
+ getActiveItem(): any;
670
+ /**
671
+ * Inserts a new data item at a particular index in the Sortable component.
672
+ * @param dataItem - The data item.
673
+ * @param index - The index at which the data item is inserted.
674
+ */
675
+ addDataItem(dataItem: any, index: number): void;
676
+ /**
677
+ * Moves a data item from one index to another in the Sortable component.
678
+ * @param fromIndex - The data item's index.
679
+ * @param toIndex - The index which the data item should be moved to. Item currently sitting at that index is pushed back one position.
680
+ */
681
+ moveItem(fromIndex: number, toIndex: number): void;
682
+ /**
683
+ * @hidden
684
+ */
685
+ animate(draggables: any[]): void;
686
+ /**
687
+ * @hidden
688
+ */
689
+ positionHintFromEvent(event: any): void;
690
+ /**
691
+ * @hidden
692
+ */
693
+ parentOffset(): any;
694
+ /**
695
+ * @hidden
696
+ */
697
+ markForCheck(): void;
698
+ /**
699
+ * @hidden
700
+ */
701
+ reflow(element: any): void;
702
+ /**
703
+ * @hidden
704
+ */
705
+ swapFocusableChildren(firstItemIndex: number, secondItemIndex: number): void;
706
+ /**
707
+ * @hidden
708
+ */
709
+ applyAnimationStyle(el: any, prop: any, val: string): void;
710
+ private subscribeEvents;
711
+ private unsubscribeEvents;
712
+ private placeHolderItemData;
713
+ private fixFocus;
714
+ static ɵfac: i0.ɵɵFactoryDeclaration<SortableComponent, never>;
715
+ static ɵcmp: i0.ɵɵComponentDeclaration<SortableComponent, "kendo-sortable", ["kendoSortable"], { "tabIndex": { "alias": "tabIndex"; "required": false; }; "trackBy": { "alias": "trackBy"; "required": false; }; "data": { "alias": "data"; "required": false; }; "navigable": { "alias": "navigable"; "required": false; }; "animation": { "alias": "animation"; "required": false; }; "disabledIndexes": { "alias": "disabledIndexes"; "required": false; }; "zone": { "alias": "zone"; "required": false; }; "acceptZones": { "alias": "acceptZones"; "required": false; }; "itemStyle": { "alias": "itemStyle"; "required": false; }; "emptyItemStyle": { "alias": "emptyItemStyle"; "required": false; }; "activeItemStyle": { "alias": "activeItemStyle"; "required": false; }; "disabledItemStyle": { "alias": "disabledItemStyle"; "required": false; }; "itemClass": { "alias": "itemClass"; "required": false; }; "activeItemClass": { "alias": "activeItemClass"; "required": false; }; "emptyItemClass": { "alias": "emptyItemClass"; "required": false; }; "disabledItemClass": { "alias": "disabledItemClass"; "required": false; }; "emptyText": { "alias": "emptyText"; "required": false; }; "activeIndex": { "alias": "activeIndex"; "required": false; }; }, { "dragStart": "dragStart"; "dragEnd": "dragEnd"; "dragOver": "dragOver"; "dragLeave": "dragLeave"; "dataMove": "dataMove"; "dataAdd": "dataAdd"; "dataRemove": "dataRemove"; "navigate": "navigate"; }, ["defaultTemplateRef", "itemTemplateDirectiveRef", "placeholderTemplateDirectiveRef"], never, true, never>;
716
+ }
717
+
718
+ /**
719
+ * @hidden
720
+ */
721
+ declare class ItemTemplateDirective {
722
+ templateRef: TemplateRef<any>;
723
+ constructor(templateRef: TemplateRef<any>);
724
+ static ɵfac: i0.ɵɵFactoryDeclaration<ItemTemplateDirective, never>;
725
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ItemTemplateDirective, "[kendoSortableItemTemplate]", never, {}, {}, never, never, true, never>;
726
+ }
727
+ /**
728
+ * @hidden
729
+ */
730
+ declare class PlaceholderTemplateDirective {
731
+ templateRef: TemplateRef<any>;
732
+ constructor(templateRef: TemplateRef<any>);
733
+ static ɵfac: i0.ɵɵFactoryDeclaration<PlaceholderTemplateDirective, never>;
734
+ static ɵdir: i0.ɵɵDirectiveDeclaration<PlaceholderTemplateDirective, "[kendoSortablePlaceholderTemplate]", never, {}, {}, never, never, true, never>;
735
+ }
736
+
737
+ /**
738
+ * Represents a directive that handles common scenarios such as reordering and moving items between Sortables, reducing boilerplate code.
739
+ *
740
+ * This directive subscribes to the Sortable's events and handles them using the provided API methods.
741
+ *
742
+ * @example
743
+ * ```html
744
+ * <kendo-sortable
745
+ * [kendoSortableBinding]="items"
746
+ * [navigable]="true"
747
+ * [animation]="true"
748
+ * itemClass="item col-xs-6 col-sm-3"
749
+ * activeItemClass="item col-xs-6 col-sm-3 active">
750
+ * </kendo-sortable>
751
+ * ```
752
+ *
753
+ * @remarks
754
+ * Applied to: {@link SortableComponent}
755
+ */
756
+ declare class SortableBindingDirective implements OnInit, OnDestroy {
757
+ sortable: SortableComponent;
758
+ private sortableService;
759
+ private removeHiddenSubscription;
760
+ private dragOverSubscription;
761
+ private navigateSubscription;
762
+ private dragEndSubscription;
763
+ private dragStartSubscription;
764
+ private lastTarget;
765
+ private originalSource;
766
+ private addedItemIndex;
767
+ private pendingDataAdd;
768
+ private pendingDataRemove;
769
+ /**
770
+ * Sets a data-bound array that is used as a data source for the Sortable ([see example](https://www.telerik.com/kendo-angular-ui/components/sortable)).
771
+ */
772
+ set data(data: any[]);
773
+ constructor(sortable: SortableComponent, sortableService: SortableService);
774
+ private nextEnabledIndex;
775
+ private addItem;
776
+ private removeItem;
777
+ private moveItem;
778
+ /**
779
+ * Removes the Draggable item from which the drag started.
780
+ * @hidden
781
+ */
782
+ private removeOriginDraggable;
783
+ private onDragOver;
784
+ private onNavigate;
785
+ private onDragStart;
786
+ private onDragEnd;
787
+ ngOnInit(): void;
788
+ ngOnDestroy(): void;
789
+ static ɵfac: i0.ɵɵFactoryDeclaration<SortableBindingDirective, never>;
790
+ static ɵdir: i0.ɵɵDirectiveDeclaration<SortableBindingDirective, "[kendoSortableBinding]", never, { "data": { "alias": "kendoSortableBinding"; "required": false; }; }, {}, never, never, true, never>;
791
+ }
792
+
793
+ /**
794
+ * Represents the [`NgModule`](link:site.data.urls.angular['ngmoduleapi']) definition for the Sortable component.
795
+ *
796
+ * @example
797
+ * ```typescript
798
+ * import { NgModule } from '@angular/core';
799
+ * import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
800
+ * import { SortableModule } from '@progress/kendo-angular-sortable';
801
+ * import { AppComponent } from './app.component';
802
+ *
803
+ * @NgModule({
804
+ * declarations: [AppComponent],
805
+ * imports: [BrowserModule, SortableModule],
806
+ * bootstrap: [AppComponent]
807
+ * })
808
+ * export class AppModule {}
809
+ * ```
810
+ */
811
+ declare class SortableModule {
812
+ static ɵfac: i0.ɵɵFactoryDeclaration<SortableModule, never>;
813
+ static ɵmod: i0.ɵɵNgModuleDeclaration<SortableModule, never, [typeof SortableComponent, typeof DraggableDirective, typeof PlaceholderTemplateDirective, typeof ItemTemplateDirective, typeof SortableBindingDirective], [typeof SortableComponent, typeof DraggableDirective, typeof PlaceholderTemplateDirective, typeof ItemTemplateDirective, typeof SortableBindingDirective]>;
814
+ static ɵinj: i0.ɵɵInjectorDeclaration<SortableModule>;
815
+ }
816
+
817
+ /**
818
+ * Represents the arguments for the `DraggableDirective` events.
819
+ * @hidden
820
+ */
821
+ declare class DraggableEvent extends PreventableEvent {
822
+ /**
823
+ * Specifies the target `DraggableDirective` instance.
824
+ */
825
+ target: DraggableDirective;
826
+ /**
827
+ * Specifies the browser event emitted by the target's native element.
828
+ */
829
+ originalEvent: any;
830
+ /**
831
+ * @hidden
832
+ */
833
+ constructor(options: any);
834
+ }
835
+
836
+ /**
837
+ * Represents the arguments for the `dragStart`, `dragOver`, and `dragEnd` events.
838
+ * @hidden
839
+ */
840
+ interface SortableEvent {
841
+ /**
842
+ * Specifies the index of the data item.
843
+ */
844
+ index: number;
845
+ /**
846
+ * Specifies the previous index of the data item.
847
+ */
848
+ oldIndex: number;
849
+ }
850
+
851
+ /**
852
+ * Represents the arguments for the `dragStart` event.
853
+ */
854
+ declare class DragStartEvent extends PreventableEvent implements SortableEvent {
855
+ /**
856
+ * Specifies the index of the draggable item.
857
+ */
858
+ index: number;
859
+ /**
860
+ * Specifies the previous index of the draggable item.
861
+ * This property is used for the `dragEnd and `dragOver` events to determine the original position of the item before dragging.
862
+ * It doesn't apply to the `dragStart` event as there is no previous position at that point.
863
+ */
864
+ oldIndex: number;
865
+ /**
866
+ * @hidden
867
+ */
868
+ constructor(options: any);
869
+ }
870
+ /**
871
+ * Represents the arguments for the `dragOver` event.
872
+ */
873
+ declare class DragOverEvent extends DragStartEvent {
874
+ }
875
+ /**
876
+ * Represents the arguments for the `dragEnd` event.
877
+ */
878
+ declare class DragEndEvent extends DragOverEvent {
879
+ }
880
+
881
+ /**
882
+ * Represents the event arguments for the `navigate` event, which is emitted when you use the keyboard arrows.
883
+ */
884
+ declare class NavigateEvent extends PreventableEvent implements SortableEvent {
885
+ /**
886
+ * Specifies the index of the draggable item.
887
+ */
888
+ index: number;
889
+ /**
890
+ * Specifies the old index of the draggable item.
891
+ */
892
+ oldIndex: number;
893
+ /**
894
+ * Indicates whether the `Ctrl` or meta keys are pressed.
895
+ */
896
+ ctrlKey: boolean;
897
+ /**
898
+ * @hidden
899
+ */
900
+ constructor(options: any);
901
+ }
902
+
903
+ /**
904
+ * Use this utility array to access all `@progress/kendo-angular-sortable`-related components and directives in a standalone Angular component.
905
+ *
906
+ * @example
907
+ * ```typescript
908
+ * import { Component } from '@angular/core';
909
+ * import { KENDO_SORTABLE } from '@progress/kendo-angular-sortable';
910
+ *
911
+ * @Component({
912
+ * selector: 'my-app',
913
+ * standalone: true,
914
+ * imports: [KENDO_SORTABLE],
915
+ * template: `
916
+ * <kendo-sortable [kendoSortableBinding]="items">
917
+ * </kendo-sortable>
918
+ * `
919
+ * })
920
+ *
921
+ * export class AppComponent {
922
+ * public items = ['Item 1', 'Item 2', 'Item 3'];
923
+ * }
924
+ * ```
925
+ */
926
+ declare const KENDO_SORTABLE: readonly [typeof SortableComponent, typeof DraggableDirective, typeof PlaceholderTemplateDirective, typeof ItemTemplateDirective, typeof SortableBindingDirective];
927
+
928
+ export { DataAddEvent, DataMoveEvent, DataRemoveEvent, DragEndEvent, DragOverEvent, DragStartEvent, DraggableDirective, DraggableEvent, ItemTemplateDirective, KENDO_SORTABLE, NavigateEvent, PlaceholderTemplateDirective, PreventableEvent, SortableBindingDirective, SortableComponent, SortableContainer, SortableModule, SortableService };
929
+ export type { DataEvent, SortableEvent };