import type { DragRef } from '../../../../DragDrop';
import { CustomElement } from '../../Abstracts/CustomElement.js';
import { IFlowBoardColumnItemElementProps } from './IFlowBoardColumnItemElementProps.js';
declare const FlowBoardColumnItemElement_base: (abstract new (...args: Array<any>) => import("../../../Behaviors/Themeable.js").IThemeableProps) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Rippleable.js").IRippleableProps) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Slottable.js").ISlottableProps & import("../../../Behaviors/Slottable.js").ISlottable) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Focusable.js").IFocusableProps) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Disableable.js").IDisableableProps) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Variantable.js").IVariantableProps) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Valueable.js").IValueableProps<unknown>) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Appearanceable.js").IAppearanceableProps) & typeof CustomElement & import("../../../Behaviors/Themeable.js").IThemeableCtor;
/**
 * FlowBoardColumnItem - An item within a FlowBoard column.
 *
 * Represents a draggable/reorderable item in a FlowBoard column.
 * Supports pinning, activation events, and custom slot content.
 *
 * @name FlowBoardColumnItemElement
 * @element mosaik-flow-board-column-item
 * @category Layouts
 *
 * @slot actions - Action buttons or links related to the item
 * @slot footer - Footer content with actions or avatars
 * @slot meta - Additional metadata like price or status
 * @slot subtitle - The subtitle content of the item
 * @slot title - The title content of the item
 *
 * @csspart actions - The actions part.
 * @csspart container - The main container element
 * @csspart focusRing - The focusRing part.
 * @csspart footer - The footer section
 * @csspart header - The header section containing title and subtitle
 * @csspart meta - The meta information section
 * @csspart ripple - The ripple part.
 * @csspart subtitle - The subtitle section
 * @csspart title - The title section
 * @csspart titleGroup - The wrapper around title and subtitle for layout purposes
 *
 * @cssprop {String} --flow-board-column-item-background-color - The board column item background color CSS custom property.
 * @cssprop {String} --flow-board-column-item-border-color - The board column item border color CSS custom property.
 * @cssprop {String} --flow-board-column-item-border-radius - The board column item border radius CSS custom property.
 * @cssprop {String} --flow-board-column-item-border-style - The board column item border style CSS custom property.
 * @cssprop {String} --flow-board-column-item-border-width - The board column item border width CSS custom property.
 * @cssprop {String} --flow-board-column-item-drag-opacity - The board column item drag opacity CSS custom property.
 * @cssprop {String} --flow-board-column-item-focus-ring-active-width - The board column item focus ring active width CSS custom property.
 * @cssprop {String} --flow-board-column-item-focus-ring-color - The board column item focus ring color CSS custom property.
 * @cssprop {String} --flow-board-column-item-focus-ring-inward-offset - The board column item focus ring inward offset CSS custom property.
 * @cssprop {String} --flow-board-column-item-focus-ring-outward-offset - The board column item focus ring outward offset CSS custom property.
 * @cssprop {String} --flow-board-column-item-font-family - The board column item font family CSS custom property.
 * @cssprop {String} --flow-board-column-item-font-letter-spacing - The board column item font letter spacing CSS custom property.
 * @cssprop {String} --flow-board-column-item-font-line-height - The board column item font line height CSS custom property.
 * @cssprop {String} --flow-board-column-item-font-size - The board column item font size CSS custom property.
 * @cssprop {String} --flow-board-column-item-font-text-decoration - The board column item font text decoration CSS custom property.
 * @cssprop {String} --flow-board-column-item-font-text-transform - The board column item font text transform CSS custom property.
 * @cssprop {String} --flow-board-column-item-font-weight - The board column item font weight CSS custom property.
 * @cssprop {String} --flow-board-column-item-foreground-color - The board column item foreground color CSS custom property.
 * @cssprop {String} --flow-board-column-item-gap - The board column item gap CSS custom property.
 * @cssprop {String} --flow-board-column-item-padding - The board column item padding CSS custom property.
 * @cssprop {String} --flow-board-column-item-padding-bottom - The board column item padding bottom CSS custom property.
 * @cssprop {String} --flow-board-column-item-padding-left - The board column item padding left CSS custom property.
 * @cssprop {String} --flow-board-column-item-padding-right - The board column item padding right CSS custom property.
 * @cssprop {String} --flow-board-column-item-padding-top - The board column item padding top CSS custom property.
 * @cssprop {String} --flow-board-column-item-pinned-background-color - The board column item pinned background color CSS custom property.
 * @cssprop {String} --flow-board-column-item-shadow - The board column item shadow CSS custom property.
 * @cssprop {String} --flow-board-column-item-shadow-blur - The board column item shadow blur CSS custom property.
 * @cssprop {String} --flow-board-column-item-shadow-color - The board column item shadow color CSS custom property.
 * @cssprop {String} --flow-board-column-item-shadow-offset-x - The board column item shadow offset x CSS custom property.
 * @cssprop {String} --flow-board-column-item-shadow-offset-y - The board column item shadow offset y CSS custom property.
 * @cssprop {String} --flow-board-column-item-shadow-spread - The board column item shadow spread CSS custom property.
 * @cssprop {String} --flow-board-column-item-transition-duration - The board column item transition duration CSS custom property.
 * @cssprop {String} --flow-board-column-item-transition-mode - The board column item transition mode CSS custom property.
 * @cssprop {String} --flow-board-column-item-transition-property - The board column item transition property CSS custom property.
 * @cssprop {String} --flow-board-column-item-translate - The board column item translate CSS custom property.
 *
 * @fires flowBoardBeforeItemActivate {FlowBoardBeforeItemActivateEvent} - Fired before item activation
 * @fires flowBoardItemActivate {FlowBoardItemActivateEvent} - Fired when item is activated
 * @fires flowBoardBeforeItemPinChange {FlowBoardBeforeItemPinChangeEvent} - Fired before pin state changes
 * @fires flowBoardItemPinChange {FlowBoardItemPinChangeEvent} - Fired when pin state changes
 *
 * @dependency mosaik-focus-ring - The Focus Ring element.
 * @dependency mosaik-ripple - The Ripple element.
 *
 * @example
 * ```html
 * <mosaik-flow-board-column-item item-key="task-1" draggable reorderable>
 *   <div slot="title">Task Title</div>
 *   <div slot="subtitle">Project Name</div>
 *   <div slot="meta"><mark>High</mark></div>
 *   <div slot="footer"><mosaik-avatar size="xs"></mosaik-avatar></div>
 * </mosaik-flow-board-column-item>
 * ```
 *
 * @public
 */
export declare class FlowBoardColumnItemElement extends FlowBoardColumnItemElement_base implements IFlowBoardColumnItemElementProps {
    private _itemKey;
    private _isDraggable;
    private _reorderable;
    private _pinned;
    private readonly _flowBoardBeforeItemActivate;
    private readonly _flowBoardItemActivate;
    private readonly _flowBoardBeforeItemPinChange;
    private readonly _flowBoardItemPinChange;
    private readonly _slotController;
    private readonly _inheritance;
    private readonly _dragCtrl;
    /**
     * Constructs a new instance of the `FlowBoardColumnItemElement` class.
     *
     * @public
     */
    constructor();
    /**
     * Returns the `is` property.
     *
     * @public
     * @static
     * @readonly
     */
    static get is(): string;
    /**
     * Gets or sets the unique key for the item.
     * If not provided, a key will be generated on connect.
     *
     * @public
     * @attr item-key
     */
    get itemKey(): string;
    set itemKey(value: string);
    /**
     * Gets or sets whether the item can be dragged.
     * This attribute must be present along with `reorderable` for the item to be movable.
     *
     * @public
     * @attr
     */
    get draggable(): boolean;
    set draggable(value: boolean);
    /**
     * Gets or sets whether the item can be reordered.
     *
     * @public
     * @attr
     */
    get reorderable(): boolean;
    set reorderable(value: boolean);
    /**
     * Gets or sets whether the item is pinned (fixed at top of column).
     * Pinned items cannot be dragged and always render before non-pinned items.
     *
     * @public
     * @attr
     */
    get pinned(): boolean;
    set pinned(value: boolean);
    /**
     * Gets the column key from the parent column.
     *
     * @public
     * @readonly
     */
    get columnKey(): string;
    /**
     * Whether the item can currently be dragged.
     * Returns true only if draggable, reorderable, and not pinned.
     *
     * @public
     * @readonly
     */
    get canDrag(): boolean;
    /**
     * @public
     * @override
     */
    connectedCallback(): void;
    /**
     * Returns this item's DragRef for registration with a parent DropList.
     *
     * @public
     * @returns The DragRef or null.
     */
    getDragRef(): DragRef | null;
    /**
     * Activates the item, triggering the appropriate events.
     *
     * @public
     * @param trigger The trigger for the activation.
     */
    activate(trigger: 'click' | 'keyboard'): void;
    /**
     * Pins the item, making it fixed at the top of the column.
     *
     * @public
     */
    pin(): void;
    /**
     * Unpins the item, allowing it to be reordered with other items.
     *
     * @public
     */
    unpin(): void;
    protected onPinnedChanged(_prev: boolean, _next: boolean): void;
}
/**
 * @public
 */
export declare namespace FlowBoardColumnItemElement {
    type Props = IFlowBoardColumnItemElementProps;
}
/**
 * @public
 */
declare global {
    interface HTMLElementTagNameMap {
        'mosaik-flow-board-column-item': FlowBoardColumnItemElement;
    }
}
export {};
//# sourceMappingURL=FlowBoardColumnItemElement.d.ts.map