import { StateBaseElement } from '../Abstracts/StateBaseElement';
import { IErrorStateElementProps } from './IErrorStateElementProps';
declare const ErrorStateElement_base: (abstract new (...args: Array<any>) => import("../../../Behaviors/Themeable").IThemeableProps) & typeof StateBaseElement & import("../../../Behaviors/Themeable").IThemeableCtor;
/**
 * ErrorState - An error handling component that displays failure states and recovery options for users.
 *
 * Presents clear error messaging with contextual information and actionable recovery steps when
 * operations fail or exceptions occur. Helps users understand what went wrong and provides
 * pathways to resolve issues or retry failed actions.
 *
 * @name ErrorStateElement
 * @element mosaik-error-state
 * @category States
 *
 * @slot - Default content area for additional error information or custom content
 * @slot actions - Action buttons for error recovery (retry, refresh, contact support, etc.)
 *
 * @csspart header - Header text container for primary error messaging
 * @csspart content - Content text container for detailed error explanation
 * @csspart code - Code container for technical error details or error codes
 * @csspart icon - Icon container for error state visual indicators
 *
 * @cssprop --error-state-header-font-family - Font family for header text
 * @cssprop --error-state-header-font-size - Font size for header text
 * @cssprop --error-state-header-font-line-height - Line height for header text
 * @cssprop --error-state-header-font-weight - Font weight for header text
 * @cssprop --error-state-header-font-letter-spacing - Letter spacing for header text
 * @cssprop --error-state-header-font-text-decoration - Text decoration for header text
 * @cssprop --error-state-header-font-text-transform - Text transform for header text
 *
 * @dependency IconElement - For displaying error icons and warning indicators
 * @dependency TextElement - For rendering header, content, and code text
 * @dependency StackElement - For layout management and content arrangement
 *
 * @example
 * ```html
 * <!-- Network error with retry -->
 * <mosaik-error-state>
 *   <mosaik-icon slot="icon" data="wifi-off"></mosaik-icon>
 *   <mosaik-text slot="header">Connection Failed</mosaik-text>
 *   <mosaik-text slot="content">Unable to connect to the server. Please check your connection and try again.</mosaik-text>
 *   <div slot="actions">
 *     <mosaik-button appearance="primary" onclick="retryConnection()">Retry</mosaik-button>
 *   </div>
 * </mosaik-error-state>
 *
 * <!-- API error with code -->
 * <mosaik-error-state>
 *   <mosaik-icon slot="icon" data="alert-circle"></mosaik-icon>
 *   <mosaik-text slot="header">Request Failed</mosaik-text>
 *   <mosaik-text slot="content">The server encountered an error processing your request.</mosaik-text>
 *   <mosaik-text slot="code">Error Code: 500</mosaik-text>
 *   <div slot="actions">
 *     <mosaik-button onclick="contactSupport()">Contact Support</mosaik-button>
 *     <mosaik-button appearance="soft" onclick="goBack()">Go Back</mosaik-button>
 *   </div>
 * </mosaik-error-state>
 *
 * <!-- Form validation error -->
 * <mosaik-error-state>
 *   <mosaik-icon slot="icon" data="exclamation-triangle"></mosaik-icon>
 *   <mosaik-text slot="header">Validation Error</mosaik-text>
 *   <mosaik-text slot="content">Please correct the highlighted fields and try again.</mosaik-text>
 *   <div slot="actions">
 *     <mosaik-button appearance="primary" onclick="validateForm()">Check Again</mosaik-button>
 *   </div>
 * </mosaik-error-state>
 *
 * <!-- File upload error -->
 * <mosaik-error-state>
 *   <mosaik-icon slot="icon" data="file-x"></mosaik-icon>
 *   <mosaik-text slot="header">Upload Failed</mosaik-text>
 *   <mosaik-text slot="content">The file could not be uploaded. Please check the file size and format.</mosaik-text>
 *   <mosaik-text slot="code">Max size: 10MB, Allowed formats: PNG, JPG, PDF</mosaik-text>
 *   <div slot="actions">
 *     <mosaik-button appearance="primary" onclick="selectNewFile()">Choose Another File</mosaik-button>
 *   </div>
 * </mosaik-error-state>
 * ```
 *
 * @public
 */
export declare class ErrorStateElement extends ErrorStateElement_base implements IErrorStateElementProps {
    private _icon;
    private _header;
    private _code;
    /**
     * Constructs a new instance of the `ErrorStateElement` class.
     *
     * @public
     */
    constructor();
    /**
     * Returns the `is` property.
     *
     * @public
     * @static
     * @readonly
    */
    static get is(): string;
    /**
     * Gets or sets the error icon property of the state.
     *
     * @public
     */
    get icon(): string;
    set icon(value: string);
    /**
     * Gets or sets the error header property of the state.
     *
     * @public
     */
    get header(): string;
    set header(value: string);
    /**
     * Gets or sets the error code property of the state.
     *
     * @public
     * @attr
     */
    get code(): string;
    set code(value: string);
}
/**
 * @public
 */
export declare namespace ErrorStateElement {
    type Props = IErrorStateElementProps;
}
/**
 * @public
 */
declare global {
    interface HTMLElementTagNameMap {
        'mosaik-error-state': ErrorStateElement;
    }
}
export {};
//# sourceMappingURL=ErrorStateElement.d.ts.map