UNPKG

carbon-components-angular

Version:
63 lines (59 loc) 1.83 kB
/** * * carbon-angular v0.0.0 | notification-content.interface.d.ts * * Copyright 2014, 2024 IBM * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import { Subject } from "rxjs"; import { TemplateRef } from "@angular/core"; export declare type NotificationType = "error" | "info" | "info-square" | "success" | "warning" | "warning-alt"; export declare type NotificationVariants = "inline" | "toast"; export interface NotificationContent { [key: string]: any; type: NotificationType; title: string; target?: string; duration?: number; smart?: boolean; closeLabel?: any; message?: string; showClose?: boolean; lowContrast?: boolean; template?: TemplateRef<any>; } export interface ActionableContent extends NotificationContent { actionsTemplate?: TemplateRef<any>; actions?: NotificationAction[]; links?: NotificationLink[]; variant?: NotificationVariants; } export interface ToastContent extends NotificationContent { subtitle: string; caption: string; } export interface NotificationAction { text: string; click: Subject<{ event: Event; action: any; }> | ((event: { event: Event; action: any; }) => any); [key: string]: any; } export interface NotificationLink { text: string; href: string; }