import { CustomElement } from '../../Abstracts/CustomElement';
import { IFlowBoardColumnComposerElementProps } from './IFlowBoardColumnComposerElementProps';
declare const FlowBoardColumnComposerElement_base: (abstract new (...args: Array<any>) => import("../../../Behaviors/Themeable").IThemeableProps) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Slottable").ISlottableProps & import("../../../Behaviors/Slottable").ISlottable) & typeof CustomElement & import("../../../Behaviors/Themeable").IThemeableCtor;
/**
 * FlowBoardColumnComposer - A composer for creating new columns in a FlowBoard.
 *
 * @description
 * Provides a trigger+form pattern for adding new columns to a board.
 * This component is completely data-agnostic - it accepts any data structure.
 * The user provides their own form fields via the `form` slot.
 * Intended for use in the `slot="append"` of the FlowBoard.
 *
 * @name FlowBoardColumnComposerElement
 * @element mosaik-flow-board-column-composer
 * @category Layouts
 *
 * @slot form - The form content for creating new columns (completely user-defined)
 * @slot trigger - The trigger element that opens the form (e.g., "Add another list" button)
 *
 * @csspart container - The main container element
 * @csspart form - The form section wrapper
 * @csspart trigger - The trigger section wrapper
 *
 * @cssprop {String} --flow-board-column-composer-background-color - The board column composer background color CSS custom property.
 * @cssprop {String} --flow-board-column-composer-border-radius - The board column composer border radius CSS custom property.
 * @cssprop {String} --flow-board-column-composer-focus-ring-active-width - The board column composer focus ring active width CSS custom property.
 * @cssprop {String} --flow-board-column-composer-focus-ring-color - The board column composer focus ring color CSS custom property.
 * @cssprop {String} --flow-board-column-composer-focus-ring-inward-offset - The board column composer focus ring inward offset CSS custom property.
 * @cssprop {String} --flow-board-column-composer-focus-ring-outward-offset - The board column composer focus ring outward offset CSS custom property.
 * @cssprop {String} --flow-board-column-composer-font-family - The board column composer font family CSS custom property.
 * @cssprop {String} --flow-board-column-composer-font-letter-spacing - The board column composer font letter spacing CSS custom property.
 * @cssprop {String} --flow-board-column-composer-font-line-height - The board column composer font line height CSS custom property.
 * @cssprop {String} --flow-board-column-composer-font-size - The board column composer font size CSS custom property.
 * @cssprop {String} --flow-board-column-composer-font-text-decoration - The board column composer font text decoration CSS custom property.
 * @cssprop {String} --flow-board-column-composer-font-text-transform - The board column composer font text transform CSS custom property.
 * @cssprop {String} --flow-board-column-composer-font-weight - The board column composer font weight CSS custom property.
 * @cssprop {String} --flow-board-column-composer-foreground-color - The board column composer foreground color CSS custom property.
 * @cssprop {String} --flow-board-column-composer-gap - The board column composer gap CSS custom property.
 * @cssprop {String} --flow-board-column-composer-padding - The board column composer padding CSS custom property.
 * @cssprop {String} --flow-board-column-composer-padding-bottom - The board column composer padding bottom CSS custom property.
 * @cssprop {String} --flow-board-column-composer-padding-left - The board column composer padding left CSS custom property.
 * @cssprop {String} --flow-board-column-composer-padding-right - The board column composer padding right CSS custom property.
 * @cssprop {String} --flow-board-column-composer-padding-top - The board column composer padding top CSS custom property.
 * @cssprop {String} --flow-board-column-composer-shadow - The board column composer shadow CSS custom property.
 * @cssprop {String} --flow-board-column-composer-shadow-blur - The board column composer shadow blur CSS custom property.
 * @cssprop {String} --flow-board-column-composer-shadow-color - The board column composer shadow color CSS custom property.
 * @cssprop {String} --flow-board-column-composer-shadow-offset-x - The board column composer shadow offset x CSS custom property.
 * @cssprop {String} --flow-board-column-composer-shadow-offset-y - The board column composer shadow offset y CSS custom property.
 * @cssprop {String} --flow-board-column-composer-shadow-spread - The board column composer shadow spread CSS custom property.
 * @cssprop {String} --flow-board-column-composer-transition-duration - The board column composer transition duration CSS custom property.
 * @cssprop {String} --flow-board-column-composer-transition-mode - The board column composer transition mode CSS custom property.
 * @cssprop {String} --flow-board-column-composer-transition-property - The board column composer transition property CSS custom property.
 * @cssprop {String} --flow-board-column-composer-translate - The board column composer translate CSS custom property.
 *
 * @fires flowBoardBeforeColumnCreate {FlowBoardBeforeColumnCreateEvent} - Fired before column creation (cancelable)
 * @fires flowBoardColumnCreate {FlowBoardColumnCreateEvent} - Fired when column is created with user-defined data
 *
 * @example
 * Basic usage with simple form:
 * ```html
 * <mosaik-flow-board-column-composer id="composer" slot="append">
 *   <mosaik-button slot="trigger" label="Add Column"></mosaik-button>
 *   <div slot="form">
 *     <mosaik-textbox id="title" placeholder="Enter column name…"></mosaik-textbox>
 *     <mosaik-button id="create" label="Create"></mosaik-button>
 *   </div>
 * </mosaik-flow-board-column-composer>
 *
 * <script>
 *   document.getElementById('create').addEventListener('click', () => {
 *     const composer = document.getElementById('composer');
 *     const title = document.getElementById('title').value;
 *     composer.create({ title });
 *   });
 * </script>
 * ```
 *
 * @public
 *
 * @remarks
 * The composer emits generic `create` events with user-defined data:
 * - Element properties (title, columnKey, pinned, reorderable, etc.)
 * - Metadata (ownerId, tags, status, limits, custom fields, etc.)
 * - Any other data the application needs
 */
export declare class FlowBoardColumnComposerElement extends FlowBoardColumnComposerElement_base implements IFlowBoardColumnComposerElementProps {
    private readonly _composerController;
    private readonly _flowBoardBeforeColumnCreate;
    private readonly _flowBoardColumnCreate;
    /**
     * Constructs a new instance of the `FlowBoardColumnComposerElement` class.
     *
     * @public
     */
    constructor();
    /**
     * Returns the `is` property.
     *
     * @public
     * @static
     * @readonly
     */
    static get is(): string;
    /**
     * Gets or sets whether the composer form is open.
     *
     * @public
     * @attr
     */
    get open(): boolean;
    set open(value: boolean);
    /**
     * Creates a new column with the provided data.
     * Emits flowBoardBeforeColumnCreate (cancelable) and flowBoardColumnCreate events.
     *
     * @param data The data for the new column (completely user-defined)
     * @returns True if created, false if canceled
     *
     * @public
     */
    create(data: unknown): boolean;
    /**
     * Toggles the composer between open and closed state.
     *
     * @public
     */
    toggle(): void;
    /**
     * Closes the composer form.
     *
     * @public
     */
    close(): void;
}
/**
 * @public
 */
export declare namespace FlowBoardColumnComposerElement {
    type Props = IFlowBoardColumnComposerElementProps;
}
/**
 * @public
 */
declare global {
    interface HTMLElementTagNameMap {
        'mosaik-flow-board-column-composer': FlowBoardColumnComposerElement;
    }
}
export {};
//# sourceMappingURL=FlowBoardColumnComposerElement.d.ts.map