import type { JSX } from '../../stencil-public-runtime';
import type { AlignPropType, DrawerAPI, DrawerStates, HasCloserPropType, HeadingLevel, KoliBriModalEventCallbacks, LabelPropType, OpenPropType } from '../../schema';
export declare class KolDrawer implements DrawerAPI {
    private readonly host?;
    private dialogElement?;
    private dialogWrapperElement?;
    private readonly cardHeadingId;
    private isModal;
    show(modal?: boolean): Promise<void>;
    showModal(): Promise<void>;
    open(): Promise<void>;
    close(): Promise<void>;
    private readonly _cardOn;
    private getWrapperRef;
    private renderDialogContent;
    private getRef;
    render(): JSX.Element;
    _open?: OpenPropType;
    _align?: AlignPropType;
    _hasCloser?: boolean;
    _label: LabelPropType;
    _level?: HeadingLevel;
    _on?: KoliBriModalEventCallbacks;
    state: DrawerStates;
    validateLabel(value?: LabelPropType): void;
    validateAlign(value?: AlignPropType): void;
    validateHasCloser(value?: HasCloserPropType): void;
    validateLevel(value?: HeadingLevel): void;
    validateOpen(value?: OpenPropType): void;
    private openOrCloseBasedOnState;
    validateOn(value?: KoliBriModalEventCallbacks): void;
    private handleCancelEvent;
    private handleCloseDialog;
    private readonly handleClose;
    private readonly handleAnimationEnd;
    componentDidLoad(): void;
    disconnectedCallback(): void;
    componentWillLoad(): void;
}
