// 类dag布局
declare namespace LayoutLayer {
  /**
   * @function layoutLayer
   * @description 采用类dag图布局方式
   * @param {Object} options
   * @param {string|string[]} options.root 根节点
   * @param {string} options.expandFirst 展开方向
   * @param {number} options.levelGap 层间隔
   * @param {number} options.nodeGap 节点间隔
   * @param {number} options.maxLevel 最大层
   * @param {number} options.width 画布宽
   * @param {number} options.height 画布高
   * @param {Object} options.padding 画布内边距 {left, right, top, bottom}
   */
  interface layoutLayer {
    (options: {
      root: string | string[];
      expandFirst: 'next' | 'prev';
      levelGap: number;
      nodeGap: number;
      maxLevel: number;
      width: number;
      height: number;
      padding: {
        left: number;
        right: number;
        top: number;
        bottom: number;
      };
    }): void;
  }
}

export default LayoutLayer;
