@nova-ui/bits
Version:
SolarWinds Nova Framework
32 lines (31 loc) • 975 B
TypeScript
import { CdkDrag, DropListRef } from "@angular/cdk/drag-drop";
import { TrackByFunction } from "@angular/core";
export declare enum RepeatSelectionMode {
multi = "multi",
single = "single",
singleWithRequiredSelection = "singleWithRequiredSelection",
radio = "radio",
radioWithNonRequiredSelection = "radioWithNonRequiredSelection",
none = "none"
}
export declare enum PaddingOptions {
normal = "normal",
compact = "compact"
}
export interface IItemsReorderedEvent<T = IRepeatItem> {
previousIndex: number;
currentIndex: number;
item: CdkDrag<T>;
previousState: T[];
currentState: T[];
dropListRef: DropListRef;
}
export interface ITypedRepeatItem {
disabled?: boolean;
}
export type IRepeatItem = ITypedRepeatItem | any;
export interface IRepeatItemConfig<T extends IRepeatItem = IRepeatItem> {
isDisabled?: (params: T) => boolean;
isDraggable?: (params: T) => boolean;
trackBy?: TrackByFunction<T>;
}