/**
 * @license
 * Copyright 2023 Tyler Technologies, Inc. 
 * License: Apache-2.0
 */
import { ICustomElement } from '@tylertech/forge-core';
import { StackAlignMode, StackAlignment } from './stack-constants';
import { BaseComponent } from '../core/base/base-component';
export interface IStackComponent extends ICustomElement {
    inline: boolean;
    wrap: boolean;
    stretch: boolean;
    gap: string;
    alignment: StackAlignMode | StackAlignment;
}
declare global {
    interface HTMLElementTagNameMap {
        'forge-stack': IStackComponent;
    }
}
/**
 * The custom element class behind the `<forge-stack>` component.
 *
 * @tag forge-stack
 */
export declare class StackComponent extends BaseComponent implements IStackComponent {
    static get observedAttributes(): string[];
    private _foundation;
    constructor();
    attributeChangedCallback(name: string, oldValue: string, newValue: string): void;
    /** Controls the direction of the stack. */
    inline: boolean;
    /** Controls if items wrap to a new line in inline mode */
    wrap: boolean;
    /** Controls if items stretch and take up the maximum amount of space */
    stretch: boolean;
    /** Controls the gap between the children within the stack */
    gap: string;
    /** Controls if stack items are at the end of the row or column */
    alignment: StackAlignMode | StackAlignment;
}
