import { LitElement, nothing } from 'lit';
import type { Constructor } from '../common/mixins/constructor.js';
import type { ResizeCallbackParams, ResizeGhostFactory, ResizeMode } from './types.js';
/** @ignore */
export interface IgcResizeContainerComponentEventMap {
    igcResizeStart: CustomEvent<ResizeCallbackParams>;
    igcResize: CustomEvent<ResizeCallbackParams>;
    igcResizeEnd: CustomEvent<ResizeCallbackParams>;
    igcResizeCancel: CustomEvent<unknown>;
}
declare const IgcResizeContainerComponent_base: Constructor<import("../common/mixins/event-emitter.js").EventEmitterInterface<IgcResizeContainerComponentEventMap>> & Constructor<LitElement>;
/**
 * @element igc-resize
 *
 * @slot - renders the element(s) that should be resized
 * @slot side-adorner - renders the side resize handle.
 * @slot corner-adorner - renders the corner resize handle.
 * @slot bottom-adorner - renders the bottom resize handle.
 *
 */
export default class IgcResizeContainerComponent extends IgcResizeContainerComponent_base {
    static readonly tagName = "igc-resize";
    static styles: import("lit").CSSResult[];
    static register(): void;
    private _controller;
    private _mode;
    private _ghostFactory?;
    /** The DOM container doing the actual resizing */
    private _container;
    /** Resize component adorners */
    private _adorners;
    private _isActive;
    /**
     * Whether to always show the resize element adorners.
     */
    active: boolean;
    set ghostFactory(value: ResizeGhostFactory);
    get ghostFactory(): ResizeGhostFactory | undefined;
    /** Get/Set the mode of the resizing operation. */
    set mode(value: ResizeMode);
    get mode(): ResizeMode;
    constructor();
    protected createRenderRoot(): HTMLElement | DocumentFragment;
    private _updateResizingState;
    private _handlePointerEnter;
    private _handlePointerLeave;
    private _handleResizeStart;
    private _handleResize;
    private _handleResizeEnd;
    private _handleResizeCancel;
    protected _renderAdorner(name: 'side' | 'corner' | 'bottom', part: string): import("lit-html").TemplateResult<1>;
    protected _renderAdorners(): typeof nothing | import("lit-html").TemplateResult<1>;
    protected render(): import("lit-html").TemplateResult<1>;
}
declare global {
    interface HTMLElementTagNameMap {
        'igc-resize': IgcResizeContainerComponent;
    }
}
export {};
