import { OnInit, EventEmitter, ChangeDetectorRef, AfterViewInit, OnDestroy } from '@angular/core'; import { Subscription } from 'rxjs'; interface DataType { name?: string; list?: ListType[]; } interface ListType { title?: any; id?: any; } declare type Trigger = 'click' | 'hover'; export declare class IccOrderComponent implements OnInit, AfterViewInit, OnDestroy { private cdr; constructor(cdr: ChangeDetectorRef); private nameHeight; private itemHeight; /** * 菜单状态 */ menuState: boolean; /** * 当前层级 */ currentLevel: number; /** * 当前层级的索引 */ currentIndex: any; /** * 指示符的top */ tipTop: number; /** * 鼠标移动流 */ mouseMove$: Subscription; /** * 鼠标离开流 */ mouseLeave$: Subscription; /** * 大标题 */ title: string; /** * 组件最大宽度 */ width: number; /** * 组件最大高度(溢出部分滚动条处理) */ height: number; /** * 列表 */ data: DataType[]; /** * 触发方式 * - click 单机 * - hover 鼠标移动(默认) */ trigger: Trigger; /** * 组件的位置 * - [right,bottom] 数字 */ position: number[]; /** * 保存的回调 */ save: EventEmitter; /** * 重置的回调 */ fresh: EventEmitter; content: any; /** * 获取有效区域内元素的总数量 */ getTotalItemCount(): number; /** * 改变指示符的top值 */ changeTipTop(): void; /** * 初始化标记索引 */ ngOnInit(): void; /** * 监听鼠标移动 */ ngAfterViewInit(): void; /** * 释放流 */ ngOnDestroy(): void; /** * 标记索引 */ markIndex(level: number, i: number): void; /** * 移动元素(上和下,临界的元素不移动) * @param level 层级 * @param i 当前层级的索引 * @param positive 是否正序 */ move(level?: number, i?: number, positive?: boolean): void; /** * 乾坤大挪移 * @param arr 容器 * @param index1 当前元素的索引 * @param index2 交换的元素的索引 */ swapArray(arr: any[], index1: number, index2: number): any[]; /** * 控制菜单 */ toggleMenu(): void; /** * 保存 */ saveHandle(): void; /** * 重置 */ freshHandle(): void; } export {};