import { ControllerBase, type ControllerHost } from '../../Controls/Controllers/Abstracts/ControllerBase'; import type { DragRef } from '../Core/DragRef'; import { type DropListRef } from '../Core/DropListRef'; import type { IDropListRefConfig } from '../Core/Types'; /** * Lit Reactive Controller for drop list functionality. * Wraps DropListRef to integrate with Lit components. * * @public */ export declare class DropListController extends ControllerBase { private _dropListRef; private _config; private _initialized; private readonly _listeners; private _groupController; constructor(host: ControllerHost, config?: IDropListRefConfig); /** * Called when the host connects to the DOM. * * @public * @override */ hostConnected(): void; /** * Called when the host disconnects from the DOM. * * @public * @override */ hostDisconnected(): void; /** * Get the underlying DropListRef. * * @public */ get dropListRef(): DropListRef | null; /** * Get/set disabled state. * * @public */ get disabled(): boolean; set disabled(value: boolean); /** * Get/set orientation. * * @public */ get orientation(): 'horizontal' | 'vertical' | 'mixed'; set orientation(value: 'horizontal' | 'vertical' | 'mixed'); /** * Get/set associated data. * * @public */ get data(): TData | undefined; set data(value: TData | undefined); /** * Get items. * * @public */ get items(): ReadonlyArray>; /** * Get ID. * * @public */ get id(): string; /** * Update configuration. * * @param config - New configuration. * * @public */ updateConfig(config: Partial): void; /** * Set items in the list. * * @param items - Drag items. * * @public */ withItems(items: Array>): void; /** * Connect to other drop lists. * * @param lists - Connected lists. * * @public */ connectTo(lists: Array>): void; /** * Connect to other drop list controllers. * * @param controllers - Connected controllers. * * @public */ connectToControllers(controllers: Array>): void; /** * Initialize the controller. * * @private */ private _initialize; /** * Register with parent drop list group (if any). * * @private */ private _registerWithGroup; /** * Set up event forwarding from DropListRef to host. * * @private */ private _setupEventForwarding; /** * Add an event listener and track it for cleanup. * * @param type - Event type. * @param handler - Event handler. * * @private */ private _addListener; /** * Cleanup resources. * * @private */ private _cleanup; } //# sourceMappingURL=DropListController.d.ts.map