carbon-components-svelte/types/Notification/ToastNotification.svelte.d.ts

95 lines
1.9 KiB
TypeScript

import type { SvelteComponentTyped } from "svelte";
import type { SvelteHTMLElements } from "svelte/elements";
type $RestProps = SvelteHTMLElements["div"];
type $Props = {
/**
* Specify the kind of notification
* @default "error"
*/
kind?:
| "error"
| "info"
| "info-square"
| "success"
| "warning"
| "warning-alt";
/**
* Set to `true` to use the low contrast variant
* @default false
*/
lowContrast?: boolean;
/**
* Set the timeout duration (ms) to hide the notification after opening it
* @default 0
*/
timeout?: number;
/**
* Set the `role` attribute
* @default "alert"
*/
role?: string;
/**
* Specify the title text
* @default ""
*/
title?: string;
/**
* Specify the subtitle text
* @default ""
*/
subtitle?: string;
/**
* Specify the caption text
* @default ""
*/
caption?: string;
/**
* Specify the ARIA label for the status icon
* @default kind + " icon"
*/
statusIconDescription?: string;
/**
* Specify the ARIA label for the close button
* @default "Close notification"
*/
closeButtonDescription?: string;
/**
* Set to `true` to hide the close button
* @default false
*/
hideCloseButton?: boolean;
/**
* Set to `true` for the notification to span
* the full width of its containing element.
* @default false
*/
fullWidth?: boolean;
[key: `data-${string}`]: any;
};
export type ToastNotificationProps = Omit<$RestProps, keyof $Props> & $Props;
export default class ToastNotification extends SvelteComponentTyped<
ToastNotificationProps,
{
close: CustomEvent<{ timeout: boolean }>;
click: WindowEventMap["click"];
mouseover: WindowEventMap["mouseover"];
mouseenter: WindowEventMap["mouseenter"];
mouseleave: WindowEventMap["mouseleave"];
},
{ default: {}; caption: {}; subtitle: {}; title: {} }
> {}