import { LimelPickerCustomEvent, ListItem } from '@limetech/lime-elements';
import { PrimitiveMetadata, RuleValidationIssue, Translator } from '@limetech/lime-web-components';
/**
 * Event emitted by `limel-picker` when its value changes. Single-select
 * pickers receive a single item, multi-select pickers receive an array.
 */
export type PickerChangeEvent = LimelPickerCustomEvent<ListItem<string> | Array<ListItem<string>>>;
/**
 * Event emitted by `limel-picker` when the user interacts with an
 * existing chip (e.g. clicks it).
 */
export type PickerInteractEvent = LimelPickerCustomEvent<ListItem<string>>;
/**
 * Class map for a rule-node container. Adds the type modifier and an
 * `invalid` flag when validation issues attach to this node.
 * @param type
 * @param issues
 */
export declare function nodeClasses(type: 'all' | 'any', issues: RuleValidationIssue[]): Record<string, boolean>;
/**
 * Build the searchable list shown by the primitive pickers. Cached on
 * the render context so it isn't recomputed per node. `meta.title` and
 * `meta.description` are passed through the translator so callers can
 * register translation keys as metadata — plain strings travel through
 * unchanged.
 * @param metadataById
 * @param translator
 */
export declare function createPrimitiveOptions(metadataById: Map<string, PrimitiveMetadata>, translator: Translator): Array<ListItem<string>>;
/**
 * Find the picker item for `id`, falling back to a placeholder marked
 * with the unknown-primitive icon when the id isn't in the registry.
 * @param allItems
 * @param id
 */
export declare function resolveItem(allItems: Array<ListItem<string>>, id: string): ListItem<string>;
/**
 * Build a picker `searcher` bound to a fixed item list. Both the ref
 * picker and the chip picker want exactly this — wrapping
 * {@link searchItems} in a promise — and deserve to share it.
 * @param items
 */
export declare function createSearcher(items: Array<ListItem<string>>): (query: string) => Promise<Array<ListItem<string>>>;
//# sourceMappingURL=view-helpers.d.ts.map