export interface UseAdaptiveTextareaOptions<T extends HTMLElement = HTMLElement> {
  /**
   * 触发调整大小的依赖列表
   *
   * @defaultValue []
   */
  watch?: DependencyList
  /**
   * 触发调整大小的事件列表
   *
   * @defaultValue ['input']
   */
  events?: (keyof HTMLElementEventMap)[]
  /**
   * 是否自动调整 `textarea` 元素的高度
   *
   * @defaultValue true
   */
  autoHeight?: boolean
  /**
   * 应用高度样式的目标元素
   *
   * @defaultValue undefined
   */
  styleTarget?: ElementTarget<T>
  /**
   * 应用高度值的样式属性
   *
   * @defaultValue 'height'
   */
  styleProp?: 'height' | 'minHeight'
  /**
   * `textarea` 元素高度变化时调用的回调函数
   *
   * @defaultValue undefined
   */
  onResize?: (height: number, prevHeight: number) => void
}