Skip to content

Справочник API

Типы TypeScript

Все публичные типы экспортируются из корня пакета:

ts
import type {
  ToastType, // 'info' | 'success' | 'warning' | 'error' | 'loading' | 'custom'
  ToastPriority, // 'critical' | 'high' | 'normal' | 'low'
  ToastPosition, // 'top-left' | 'top-center' | 'top-right' | 'bottom-*'
  ToastOptions, // Полный объект опций
  ToastItem, // Внутренний реактивный элемент тоста (используется в headless-режиме)
  ToastAction, // { label: string; onClick: () => void }
  ToastUndo, // { label?: string; onUndo: () => void | Promise<void>; duration?: number }
  ToastDesignTokens, // Все ключи CSS-токенов типизированы
  PromiseToastMessages, // { loading, success, error }
  ToastContext, // Изолированный контекст очереди
  GlobalToastOptions, // Опции плагина / модуля
  ToastApi, // Тип возврата useToast()
} from 'vue-toast-kit'

Работа с ToastItem в headless-режиме:

ts
import type { ToastItem } from 'vue-toast-kit'

function renderCustomToast(t: ToastItem) {
  // t.remaining.value — число 0–1
  // t.isPaused.value  — boolean
  // t.groupCount.value — число
  // t.options.type, t.options.priority и т. д.
}

Типизированное переопределение токенов:

ts
import type { ToastDesignTokens } from 'vue-toast-kit'

const darkGlass: ToastDesignTokens = {
  colorBg: 'rgba(15, 15, 20, 0.85)',
  colorText: '#f0f0f0',
  borderRadius: '14px',
  shadow: '0 8px 32px rgba(0,0,0,0.6)',
}

Продвинутые экспорты

Корень пакета также экспортирует несколько низкоуровневых строительных блоков — для продвинутых интеграций (аналитика, кастомные контейнеры, фреймворк-независимая обработка SSR), а не для повседневного использования:

ЭкспортВидОписание
ToastQueueклассДвижок за каждым ToastContext — массивы active/pending, логика дедупликации/вытеснения/приоритетов и события onAdd/onDismiss/onUpdate. См. Эмиттер событий.
UndoTimerклассТаймер обратного отсчёта, стоящий за remaining/pause()/resume() каждого ToastItemstart()/pause()/resume()/destroy(). См. Архитектура.
GroupManagerклассОтслеживает, какие тосты скрыты за ведущим группы и какие группы развёрнуты — add()/remove()/toggleExpand()/isExpanded()/getGroupIds()/hasGroup()/clear().
globalBufferзначение (ToastBuffer)Экземпляр SSR-буфера на уровне модуля, в который пишет каждый вызов toast() на сервере до монтирования <ToastContainer>. См. Поддержка SSR.
isServerзначение (boolean)typeof window === 'undefined', вычисляется один раз при загрузке модуля — то, что проверяет ToastContext.addToast(), чтобы решить буфер или очередь.
PRIORITY_ORDERзначениеRecord<ToastPriority, number> — числовой рейтинг (critical: 3low: 0), по которому очередь сортирует и вытесняет.
DEFAULT_OPTIONSзначениеБазовые дефолты ToastOptions, с которых стартует каждый тост, до наложения GlobalToastOptions и опций конкретного тоста.
TOAST_CONTEXT_KEYзначение (Symbol)Ключ provide/inject, который читает useToastContext(). См. Мульти-инстансы.
GLOBAL_OPTIONS_KEYзначение (Symbol)Ключ provide/inject, который читает <ToastContainer> для своих дефолтов position/theme/maxVisible уровня плагина/модуля. См. ToastContainer.