ember-bootstrap-toasts-manager
Version:
Ember-addon that provides a simple mechanism for interaction with user using toasts.
22 lines (21 loc) • 952 B
TypeScript
import { A } from '@ember/array';
import Service from '@ember/service';
import type Component from '@glimmer/component';
import type { ToastOptions } from 'ember-bootstrap-toasts-manager/interfaces/toast-options.type';
import type { ToastQueueItem } from 'ember-bootstrap-toasts-manager/interfaces/toast-queue-item.type';
import { type ToastsBaseSignature } from '../components/toasts/base';
type EmberArray<T> = ReturnType<typeof A<T>>;
export default class ToastsManagerService extends Service {
hideToastTimeout: number;
messagesQueue: EmberArray<ToastQueueItem>;
defaultToastOptions: ToastOptions;
showBaseToast(toastOptions: ToastOptions): void;
showToast(toastComponent: typeof Component<ToastsBaseSignature>, toastOptions: ToastOptions): void;
hideToast(toastQueueItem: ToastQueueItem): void;
}
declare module '@ember/service' {
interface Registry {
'toasts-manager': ToastsManagerService;
}
}
export {};