UNPKG

@intuitionrobotics/thunderstorm

Version:
56 lines (55 loc) 2.04 kB
import * as React from "react"; import { Module } from "@intuitionrobotics/ts-common"; import { Stylable, StylableBuilder } from "../../tools/Stylable"; import { Color } from "../../components/types"; export declare enum ToastType { "success" = 0, "error" = 1, "info" = 2 } type PositionVertical = "bottom" | "top"; type PositionHorizontal = "left" | "right" | "center"; export type Toast_Model = Stylable & { duration: number; bgColor: Color; type: ToastType; positionVertical?: PositionVertical; positionHorizontal?: PositionHorizontal; content: React.ReactNode; actions: React.ReactElement[]; }; export interface ToastListener { __showToast(toast?: Toast_Model): void; } export declare class ToastBuilder extends StylableBuilder { private bgColor; private duration; private type; private positionVertical; private positionHorizontal; private actions; private content; setType(type: ToastType): this; setContent(content: React.ReactNode): this; setBackground(bgColor: Color): this; setDuration(duration: number): this; setActions(actions: React.ReactElement[]): this; addActions(...actions: React.ReactElement[]): this; setVerticalPosition(positionVertical: PositionVertical): this; setHorizontalPosition(positionHorizontal: PositionHorizontal): this; show(): void; } export declare class ToastModule_Class extends Module<{}> { private DefaultBuilder; constructor(); setDefaultBuilder(DefaultBuilder: ToastBuilder): void; toastError(errorMessage: React.ReactNode, interval?: number, builder?: ToastBuilder): void; toastSuccess(successMessage: React.ReactNode, interval?: number, builder?: ToastBuilder): void; toastInfo(infoMessage: React.ReactNode, interval?: number, builder?: ToastBuilder): void; private toast; adjustStringMessage: (_message: string) => string; hideToast: (toast?: Toast_Model) => void; private toastImpl; } export declare const ToastModule: ToastModule_Class; export {};