import { HorizontalAlignment } from '../../../Types/HorizontalAlignment';
import { VerticalAlignment } from '../../../Types/VerticalAlignment';
import { LayoutElement } from '../Abstracts/LayoutElement';
import type { IStackElementProps } from './IStackElementProps';
declare const StackElement_base: (abstract new (...args: Array<any>) => import("../../../Behaviors/Themeable").IThemeableProps) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Reversible").IReversibleProps) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Orientable").IOrientableProps) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Fitable").IFitableProps) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Gapable").IGapableProps) & typeof LayoutElement & import("../../../Behaviors/Themeable").IThemeableCtor;
/**
 * Stack - A flexible layout component for arranging child elements in vertical or horizontal linear sequences.
 *
 * Provides powerful layout capabilities with support for orientation control, alignment options,
 * gap management, and responsive behavior. Ideal for creating organized linear layouts such as
 * navigation menus, button groups, content columns, and form layouts with consistent spacing.
 *
 * @name StackElement
 * @element mosaik-stack
 * @category Layouts
 *
 * @slot - Default content area for child elements to be arranged in stack layout
 *
 * @csspart container - Main stack container for layout and alignment control
 * @csspart content - Content wrapper for stack items and elements
 *
 * @cssprop --stack-gap - Spacing between stack items and elements
 *
 * @example
 * ```html
 * <!-- Basic vertical stack -->
 * <mosaik-stack>
 *   <mosaik-button>Action 1</mosaik-button>
 *   <mosaik-button>Action 2</mosaik-button>
 *   <mosaik-button>Action 3</mosaik-button>
 * </mosaik-stack>
 *
 * <!-- Horizontal button group -->
 * <mosaik-stack orientation="horizontal" gap="small">
 *   <mosaik-button appearance="primary">Save</mosaik-button>
 *   <mosaik-button appearance="soft">Cancel</mosaik-button>
 *   <mosaik-button appearance="ghost">Reset</mosaik-button>
 * </mosaik-stack>
 *
 * <!-- Card content stack -->
 * <mosaik-stack gap="medium" alignment="stretch">
 *   <mosaik-text variant="headline">Card Title</mosaik-text>
 *   <mosaik-text variant="body">
 *     Card content with multiple lines of text that should be properly stacked
 *     with consistent spacing between elements.
 *   </mosaik-text>
 *   <mosaik-stack orientation="horizontal" gap="small" alignment="end">
 *     <mosaik-button size="small">Learn More</mosaik-button>
 *     <mosaik-button appearance="primary" size="small">Get Started</mosaik-button>
 *   </mosaik-stack>
 * </mosaik-stack>
 *
 * <!-- Navigation menu stack -->
 * <mosaik-stack gap="none">
 *   <mosaik-cell>
 *     <mosaik-icon slot="start" data="home"></mosaik-icon>
 *     <mosaik-text slot="label">Dashboard</mosaik-text>
 *   </mosaik-cell>
 *   <mosaik-cell>
 *     <mosaik-icon slot="start" data="users"></mosaik-icon>
 *     <mosaik-text slot="label">Users</mosaik-text>
 *   </mosaik-cell>
 *   <mosaik-cell>
 *     <mosaik-icon slot="start" data="settings"></mosaik-icon>
 *     <mosaik-text slot="label">Settings</mosaik-text>
 *   </mosaik-cell>
 * </mosaik-stack>
 *
 * <!-- Form field stack -->
 * <mosaik-stack gap="large" fit="width">
 *   <mosaik-text-box label="First Name" placeholder="Enter first name"></mosaik-text-box>
 *   <mosaik-text-box label="Last Name" placeholder="Enter last name"></mosaik-text-box>
 *   <mosaik-text-box label="Email" type="email" placeholder="Enter email"></mosaik-text-box>
 * </mosaik-stack>
 *
 * <!-- Centered content stack -->
 * <mosaik-stack
 *   alignment="center"
 *   justify="center"
 *   style="min-height: 200px;">
 *   <mosaik-icon data="check-circle" size="large" style="color: green;"></mosaik-icon>
 *   <mosaik-text variant="headline">Success!</mosaik-text>
 *   <mosaik-text variant="body" alignment="center">
 *     Your action has been completed successfully.
 *   </mosaik-text>
 * </mosaik-stack>
 * ```
 *
 * @public
 */
export declare class StackElement extends StackElement_base implements IStackElementProps {
    private _horizontalAlignment;
    private _verticalAlignment;
    private _wrap;
    /**
     * Constructs a new instance of the `StackElement` class.
     *
     * @public
     */
    constructor();
    /**
     * Returns the `is` property.
     *
     * @public
     * @static
     * @override
     * @readonly
    */
    static get is(): string;
    /**
     * Gets or sets the `horizontalAlignment` property.
     *
     * @public
     * @attr
     */
    get horizontalAlignment(): HorizontalAlignment;
    set horizontalAlignment(value: HorizontalAlignment);
    /**
     * Gets or sets the `verticalAlignment` property.
     *
     * @public
     * @attr
     */
    get verticalAlignment(): VerticalAlignment;
    set verticalAlignment(value: VerticalAlignment);
    /**
     * Gets or sets the `wrap` property.
     *
     * @public
     * @attr
     */
    get wrap(): boolean;
    set wrap(value: boolean);
}
/**
 * @public
 */
export declare namespace StackElement {
    type Props = IStackElementProps;
}
/**
 * @public
 */
declare global {
    interface HTMLElementTagNameMap {
        'mosaik-stack': StackElement;
    }
}
export {};
//# sourceMappingURL=StackElement.d.ts.map