import { SnotifyButton } from './snotify-button.interface';
import { SnotifyAnimate } from './snotify-animate.interface';
import { SnotifyTypeType } from '../types/snotify-type.type';
import { SafeHtml } from '@angular/platform-browser';
import { SnotifyPositionType } from '../types';
/**
* Toast configuration object
*/
export interface SnotifyToastConfig {
/**
* Toast timeout in milliseconds.
* Disable timeout = 0
*/
timeout?: number;
/**
* Enable/Disable progress bar.
* Disabled if timeout is 0.
*/
showProgressBar?: boolean;
/**
* Type of toast, affects toast style.
* It's not recommended to change it.
* Depends on toast type.
*/
type?: SnotifyTypeType;
/**
* Should toast close on click?
*/
closeOnClick?: boolean;
/**
* Should timeout pause on hover?
*/
pauseOnHover?: boolean;
/**
* Buttons config.
*/
buttons?: SnotifyButton[];
/**
* Placeholder for Prompt toast
*/
placeholder?: string;
/**
* Toast title maximum length
*/
titleMaxLength?: number;
/**
* Toast body maximum length
*/
bodyMaxLength?: number;
/**
* Activate custom icon.
* You should provide full tag, e.g.
* ```html
*
* ```
* ```html
*
* ```
*/
icon?: string;
/**
* Custom icon class.
*/
iconClass?: string;
/**
* Backdrop opacity.
* * **Range:** `0.0 - 1.0`.
* * **Disabled:** `-1`
*/
backdrop?: number;
/**
* Animation config
*/
animation?: SnotifyAnimate;
/**
* Html string witch overrides toast content
*/
html?: string | SafeHtml;
/**
* Toasts position on screen
*/
position?: SnotifyPositionType;
}