Files
klz-cables.com/.pnpm-store/v10/files/51/69dd4ab0b8b326608dc718cb0743ccf953af0312386ddc6bbfc9a8928220d6ee91dc3eff6218b75c832358f10513ef9acef43972fb72bc44869c3d02695767
Marc Mintel 5397309103
Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 20s
Build & Deploy / 🧪 QA (push) Failing after 34s
Build & Deploy / 🏗️ Build (push) Has started running
Build & Deploy / 🚀 Deploy (push) Has been cancelled
Build & Deploy / 🧪 Smoke Test (push) Has been cancelled
Build & Deploy / ⚡ Lighthouse (push) Has been cancelled
Build & Deploy / 🔔 Notify (push) Has been cancelled
fix(products): fix breadcrumbs and product filtering (backport from main)
2026-02-24 16:04:21 +01:00

50 lines
1.6 KiB
Plaintext

import { ValueContainer } from './Ast';
import { MatcherFunction } from './Types';
/**
* Simple wrapper around the matcher function.
* Recommended return type for builder plugins.
*
* @typeParam L - the type of HTML Element in the targeted DOM AST.
* @typeParam V - the type of associated values.
*/
export declare class Picker<L, V> {
private f;
/**
* Create new Picker object.
*
* @typeParam L - the type of HTML Element in the targeted DOM AST.
* @typeParam V - the type of associated values.
*
* @param f - the function that matches an element
* and returns all associated values.
*/
constructor(f: MatcherFunction<L, V>);
/**
* Run the selectors decision tree against one HTML Element
* and return all matched associated values
* along with selector specificities.
*
* Client code then decides how to further process them
* (sort, filter, etc).
*
* @param el - an HTML Element.
*
* @returns all associated values along with
* selector specificities for all matched selectors.
*/
pickAll(el: L): ValueContainer<V>[];
/**
* Run the selectors decision tree against one HTML Element
* and choose the value from the most specific matched selector.
*
* @param el - an HTML Element.
*
* @param preferFirst - option to define which value to choose
* when there are multiple matches with equal specificity.
*
* @returns the value from the most specific matched selector
* or `null` if nothing matched.
*/
pick1(el: L, preferFirst?: boolean): V | null;
}