import { UiOrderType } from './type'; export declare enum ToastMessageType { SWAP_ETH_FLOW_SENT_TX = "SWAP_ETH_FLOW_SENT_TX", ORDER_CREATED = "ORDER_CREATED", SWAP_SIGNING_ERROR = "SWAP_SIGNING_ERROR", ORDER_FULFILLED = "ORDER_FULFILLED", ORDER_CANCELLED = "ORDER_CANCELLED", ORDER_EXPIRED = "ORDER_EXPIRED", ORDER_PRESIGNED = "ORDER_PRESIGNED", ONCHAIN_TRANSACTION_MINED = "ONCHAIN_TRANSACTION_MINED", ONCHAIN_TRANSACTION_FAILED = "ONCHAIN_TRANSACTION_FAILED" } export interface ToastMessagePayloads { [ToastMessageType.SWAP_ETH_FLOW_SENT_TX]: { tx: string; }; [ToastMessageType.ORDER_CREATED]: { orderUid: string; orderType: UiOrderType; orderCreationHash?: string; }; [ToastMessageType.SWAP_SIGNING_ERROR]: { type: 'REJECTED' | 'ERROR_SIGNING'; errorCode?: number; message: string; }; [ToastMessageType.ORDER_FULFILLED]: { orderUid: string; orderType: UiOrderType; }; [ToastMessageType.ORDER_CANCELLED]: { orderUid: string; orderType: UiOrderType; }; [ToastMessageType.ORDER_EXPIRED]: { orderUid: string; orderType: UiOrderType; }; [ToastMessageType.ORDER_PRESIGNED]: { orderUid: string; orderType: UiOrderType; }; [ToastMessageType.ONCHAIN_TRANSACTION_MINED]: { transactionHash: string; }; [ToastMessageType.ONCHAIN_TRANSACTION_FAILED]: { transactionHash: string; }; } export interface BaseToastMessagePayload { /** * The type of the toast message */ messageType: T; /** * Plain text message to be displayed. */ message: string; /** * Additional data to be used to create your own message. */ data: ToastMessagePayloads[T]; } /** * The payload of the `onToastMessage` event. * * The type is: * * export type OnToastMessagePayload = * | BaseToastMessagePayload * | BaseToastMessagePayload * ... all other toast message types * * But is defined automatically using some TypeScript magic. To see how we got here, check: */ export declare type OnToastMessagePayload = { [K in keyof typeof ToastMessageType]: BaseToastMessagePayload; }[keyof typeof ToastMessageType];