Справочник API
Типы TypeScript
Все публичные типы экспортируются из корня пакета:
ts
import type {
// Определение столбца для VirtualTable
ColumnDef,
// Определение группы для GroupedVirtualList
GroupDef,
// Выравнивание прокрутки
ScrollAlign, // 'start' | 'center' | 'end' | 'auto'
// Опции для scrollTo/scrollToOffset — { behavior?: 'auto' | 'smooth' }
ScrollBehaviorOptions,
// Видимый диапазон, возвращаемый useVirtualScroll
VisibleRange, // { start: number; end: number }
// Публичный API VirtualList (используйте вместо InstanceType для generic-компонентов)
VirtualListExpose,
// Публичный API GroupedVirtualList
GroupedVirtualListExpose,
// Payload события сортировки от VirtualTable
SortChange, // { key: string; direction: 'asc' | 'desc' | null }
// Низкоуровневый тип для строки GroupedVirtualList
VirtualRow,
VirtualRowType,
// Типы дерева, экспортируемые из VirtualTree
TreeNode,
FlatTreeRow,
// Провайдер размера для PositionManager / useVirtualScroll
SizeProvider, // number | ((index: number) => number)
// Типы опций/возврата для useRowSelection
UseRowSelectionOptions,
UseRowSelectionReturn,
// Типы опций/возврата для useVisibilityTracker
UseVisibilityTrackerOptions,
UseVisibilityTrackerReturn,
} from 'vue-virtual-scroller-kit'VirtualListExpose против InstanceType
Generic Vue SFC (generic="T") несовместимы с InstanceType<typeof Component>. Вместо этого используйте выделенные интерфейсы публичного API:
ts
// ✗ Не работает для generic SFC
const listRef = ref<InstanceType<typeof VirtualList> | null>(null)
// ✓ Правильно
import type { VirtualListExpose } from 'vue-virtual-scroller-kit'
const listRef = ref<VirtualListExpose | null>(null)