import { LitElement } from 'lit';
import { ElementProps } from '../types/typeUtils';
type Props = ElementProps<PktElement, 'strings' | 'role'>;
/**
 * Base class for Punkt shadow DOM elements
 * @extends LitElement
 */
export declare class PktShadowElement<T = {}> extends LitElement {
    [key: string]: any;
    strings: any;
    role: string | null;
    /**
     * Here to support prop typing in Vue
     */
    $props: T & Props;
    /**
     * Add support for Hot Module Reloading in dev mode
     */
    hotReplacedCallback(): void;
}
/**
 * Base class for Punkt light DOM elements
 * This class extends PktShadowElement but renders in light DOM instead of shadow DOM
 * @extends PktShadowElement
 */
export declare class PktElement<T = {}> extends PktShadowElement<T> {
    /**
     * Make sure the component renders in light DOM instead of shadow DOM
     */
    createRenderRoot(): this;
}
export {};
