import { Routines } from './domRoutines';
import { Direction } from '../inputs/index';
import { Item as _Item, ItemAdapter } from '../interfaces/index';
export declare class Item<Data = unknown> implements _Item<Data> {
  private static nextUid;
  nodeId: string;
  routines: Routines;
  preSize: number;
  size: number;
  invisible: boolean;
  toRemove: boolean;
  toInsert: boolean;
  removeDirection: Direction;
  private container;
  get uid(): number;
  set uid(value: number);
  get $index(): number;
  set $index(value: number);
  get data(): Data;
  set data(value: Data);
  get element(): HTMLElement;
  set element(value: HTMLElement);
  constructor($index: number, data: Data, routines: Routines);
  dispose(): void;
  setSize(preSize?: number): void;
  makeVisible(): void;
  hide(): void;
  scrollTo(argument?: boolean | ScrollIntoViewOptions): void;
  updateIndex(index: number): void;
  get(): ItemAdapter<Data>;
}
