bootstrap-vue
Version:
BootstrapVue, with over 40 plugins and more than 80 custom components, custom directives, and over 300 icons, provides one of the most comprehensive implementations of Bootstrap v4 components and grid system for Vue.js. With extensive and automated WAI-AR
71 lines (61 loc) • 1.59 kB
TypeScript
//
// Toast
//
import Vue, { VNode } from 'vue'
import { BvPlugin, BvComponent } from '../../'
// Toast Plugin
export declare const ToastPlugin: BvPlugin
// Component: b-toast
export declare class BToast extends BvComponent {
show: () => void
hide: () => void
}
// Component: b-toaster
export declare class BToaster extends BvComponent {}
//
// Interfaces
//
export interface BvToastOptions {
// Commonly used props
toaster?: string
title?: string | VNode | Array<VNode>
variant?: string
solid?: boolean
noAutoHide?: boolean
noHoverPause?: boolean
autoHideDelay?: number
noCloseButton?: boolean
appendToast?: boolean
isStatus?: boolean
noFade?: boolean
toastClass?: string | string[] | Array<any> | object | any
headerClass?: string | string[] | Array<any> | object | any
bodyClass?: string | string[] | Array<any> | object | any
href?: string
to?: string | object | any
// Catch all
[key: string]: any
}
export interface BvToastShortcutMethod {
(message: string | VNode | Array<VNode>, options?: BvToastOptions): void
// Future
// (options?: BvToastOptions): void
// (message: string | VNode | Array<VNode>, title: string | VNode | Array<VNode>, options?: BvToastOptions): void
}
export interface BvToast {
// Show a toast
toast: BvToastShortcutMethod
// Show a toast by id
show: (id: string) => void
// Hide a toast by id (or hide all tosts)
hide: (id?: string) => void
}
//
// Vue Prototype Injections
//
declare module 'vue/types/vue' {
interface Vue {
// Toast injection
readonly $bvToast: BvToast
}
}