import { type ReferenceElement } from '@floating-ui/dom';
import type { UniComponent } from '../../../_common/components/uni-component/uni-component.js';
import { Matcher } from '../../logical/matcher.js';
import type { TType } from '../../logical/typesystem.js';
export declare const renderLiteral: (type: TType, value: unknown, onChange: (value: unknown) => void) => import("lit").TemplateResult | undefined;
export declare const popLiteralEdit: (target: ReferenceElement, type: TType, value: unknown, onChange: (value: unknown) => void) => void;
export type LiteralViewProps<Value = unknown, Type extends TType = TType> = {
    type: Type;
    value?: Value;
    onChange: (value?: Value) => void;
};
export type LiteralData<Value = unknown> = {
    view: UniComponent<LiteralViewProps<Value>>;
    popEdit: (position: ReferenceElement, props: LiteralViewProps<Value>) => void;
};
export declare const literalMatcher: Matcher<LiteralData<unknown>, TType>;
//# sourceMappingURL=matcher.d.ts.map