import { CustomElement } from '../../Abstracts/CustomElement'; import { IFlowBoardColumnItemComposerElementProps } from './IFlowBoardColumnItemComposerElementProps'; declare const FlowBoardColumnItemComposerElement_base: (abstract new (...args: Array) => import("../../../Behaviors/Themeable").IThemeableProps) & (abstract new (...args: Array) => import("../../../Behaviors/Slottable").ISlottableProps & import("../../../Behaviors/Slottable").ISlottable) & typeof CustomElement & import("../../../Behaviors/Themeable").IThemeableCtor; /** * FlowBoardColumnItemComposer - A composer for creating new items in a FlowBoard column. * * @description * Provides a trigger+form pattern for adding new items to a column. * This component is completely data-agnostic - it accepts any data structure. * The user provides their own form fields via the `form` slot. * * @remarks * The composer emits generic `create` events with user-defined data: * - Element properties (title, description, labels, etc.) * - Metadata (userId, tags, priority, appointments, custom fields, etc.) * - Any other data the application needs * * @name FlowBoardColumnItemComposerElement * @element mosaik-flow-board-column-item-composer * @category Layouts * * @slot trigger - The trigger element that opens the form (e.g., "Add another item" button) * @slot form - The form content for creating new items (completely user-defined) * * @csspart container - The main container element * @csspart trigger - The trigger section wrapper * @csspart form - The form section wrapper * * @cssprop {String} --flow-board-composer-padding - Padding for the composer * @cssprop {String} --flow-board-composer-gap - Gap between form elements * * @fires flowBoardBeforeItemCreate {FlowBoardBeforeItemCreateEvent} - Fired before item creation (cancelable) * @fires flowBoardItemCreate {FlowBoardItemCreateEvent} - Fired when item is created with user-defined data * * @example * Basic usage with simple form: * ```html * * *
* * *
*
* * * ``` * * @public */ export declare class FlowBoardColumnItemComposerElement extends FlowBoardColumnItemComposerElement_base implements IFlowBoardColumnItemComposerElementProps { private readonly _composerController; private readonly _flowBoardBeforeItemCreate; private readonly _flowBoardItemCreate; private readonly _inheritance; /** * Constructs a new instance of the `FlowBoardColumnItemComposerElement` 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); /** * Gets the column key from the parent column (via inheritance). * Useful for identifying which column the item is being added to. * * @public * @readonly */ get columnKey(): string; /** * Creates a new item with the provided data. * Emits flowBoardBeforeItemCreate (cancelable) and flowBoardItemCreate events. * * @param data The data for the new item (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 FlowBoardColumnItemComposerElement { type Props = IFlowBoardColumnItemComposerElementProps; } /** * @public */ declare global { interface HTMLElementTagNameMap { 'mosaik-flow-board-column-item-composer': FlowBoardColumnItemComposerElement; } } export {}; //# sourceMappingURL=FlowBoardColumnItemComposerElement.d.ts.map