import { LitElement } from 'lit';
import { ElementSpacing, Size } from '../../common/types';
type Constructor<T = Record<string, unknown>> = {
    new (...args: any[]): T;
    prototype: T;
};
export interface SizedElementInterface {
    size: Size;
    parentSized: string;
    spacing: ElementSpacing;
    /** Breakpoint→size map; e.g. "md:lg" = at md and narrower use size lg. Keys: xs, sm, md, lg, xl, 2xl. Values: xxs, xs, sm, md, lg. */
    sizeMap: string;
    /** The size used for rendering; viewport-adjusted when sizeMap applies, otherwise the requested size. */
    readonly effectiveSize: Size;
}
export declare function SizedMixin<T extends Constructor<LitElement>>(constructor: T): T & Constructor<SizedElementInterface>;
export {};
