import { LitElement } from 'lit'; import type { Constructor } from '../../../common/mixins/constructor.js'; import type { IgcDragEventArguments, IgcDragMoveEventArguments, IgcDragStartEventArguments } from '../../drag-drop/drag.service.js'; import type { IgcContentPane, IgcDockManagerResourceStrings } from '../dockmanager.interfaces.js'; export interface IgcPaneHeaderEventMap { igcPaneHeaderDragStart: CustomEvent; igcPaneHeaderDragMoved: CustomEvent; igcPaneHeaderDragEnd: CustomEvent; igcPinToggle: CustomEvent; igcMaximize: CustomEvent; igcClose: CustomEvent; elementConnected: CustomEvent; elementDisconnected: CustomEvent; } declare const IgcPaneHeaderComponent_base: Constructor> & Constructor; /** * @hidden * Represents the header section of a pane in the Dock Manager layout. * Displays title content and control buttons like close, maximize, and pin. * * @element igc-pane-header * * @slot - Renders the pane header title. * @slot paneHeaderCloseButton - Renders a custom close button. * @slot paneHeaderMaximizeButton - Renders a custom maximize button. * @slot paneHeaderMinimizeButton - Renders a custom minimize button. * @slot paneHeaderPinButton - Renders a custom pin button. * @slot paneHeaderUnpinButton - Renders a custom unpin button. * * @fires igcPaneHeaderDragStart - Emitted when dragging starts on the header. * @fires igcPaneHeaderDragMoved - Emitted during header dragging. * @fires igcPaneHeaderDragEnd - Emitted when dragging ends on the header. * @fires igcPinToggle - Emitted when the pin button is clicked. * @fires igcMaximize - Emitted when the maximize button is clicked. * @fires igcClose - Emitted when the close button is clicked. * @fires elementConnected - Emitted when the element is connected to the DOM. * @fires elementDisconnected - Emitted when the element is disconnected from the DOM. */ export default class IgcPaneHeaderComponent extends IgcPaneHeaderComponent_base { static readonly tagName = "igc-pane-header"; static styles: import("lit").CSSResult[]; static register(): void; private _dragService; private get commonParts(); /** * Whether the pane is currently pinned. * * @default false */ pinned: boolean; /** * Whether the pane is currently maximized. * * @default false */ maximized: boolean; /** * Disables interaction with the pane header. * * @default false */ disabled: boolean; /** * Indicates whether the header is used in a floating window. * * @attr is-floating * @default false */ isFloating: boolean; /** * Indicates that the header is used in a floating pane context. * * @attr is-floating-pane-header * @default false */ isFloatingPaneHeader: boolean; /** * Marks the header as active. * * @attr is-active * @default false */ isActive: boolean; /** * Forces drag behavior on the pane header. * * @attr forced-drag * @default false */ forcedDrag: boolean; /** * Enables or disables closing. * * @attr allow-close * @default false */ allowClose: boolean; /** * Enables or disables maximizing. * * @attr allow-maximize * @default true */ allowMaximize: boolean; /** * Enables or disables pinning. * * @attr allow-pinning * @default false */ allowPinning: boolean; /** * Reference to the content pane associated with this header. * * @type {IgcContentPane} */ pane?: IgcContentPane; /** * Localized strings used for icon button accessibility. */ resourceStrings?: IgcDockManagerResourceStrings; constructor(); connectedCallback(): void; disconnectedCallback(): void; private forceDragging; protected visualStateChanged(): void; private _handleDragStart; private _handleDragMove; private _handleDragEnd; private _handlePinButtonClick; private _handleMaximizeButtonClick; private _handleCloseButtonClick; private renderCloseButton; private renderMaximizeButton; private renderMinimizeButton; private renderPinButton; private renderUnpinButton; protected render(): import("lit-html").TemplateResult<1>; } declare global { interface HTMLElementTagNameMap { 'igc-pane-header': IgcPaneHeaderComponent; } } export {};