import { TemplateRef } from '@angular/core';
import { ThemePalette } from '@angular/material/core';
import { Icon } from '../icon/icon.model';
import { ModalWidthConfig } from './modal-width-config.model';
/**
 * Define modal button configuration
 */
export declare class ModalButton {
    /**
     * Text of the button (required)
     */
    text: string;
    /**
     * Color of the button (required)
     */
    color?: ThemePalette;
    /**
     * Icon of the button
     */
    icon?: string | Icon;
}
/**
 * Define modal data
 */
export interface ModalData {
    /**
     * id (required) : it will be included in ModalResult
     */
    id: string;
    /**
     * width (required) : set the modal width in px, or width configuration object
     */
    width: number | ModalWidthConfig;
    /**
     * title (required) : displayed at the top of the modal
     */
    title: string;
    /**
     * content (required) : use your modal content reference
     */
    content: TemplateRef<any>;
    /**
     * confirm : label of confirm button (if not set, the confirm button is hidden)
     */
    cancel?: ModalButton | string;
    /**
     * cancel : label of cancel button (if not set, the cancel button is hidden)
     */
    confirm?: ModalButton | string;
}
