import { type Behavior, ElementStyles, FASTElement } from '@ni/fast-element'; /** * A behavior to add or remove a stylesheet from an element based on a property. The behavior ensures that * styles are applied while the property matches and that styles are not applied if the property does * not match. * * @public */ export declare class MultivaluePropertyStyleSheetBehavior implements Behavior { private readonly propertyName; private readonly value; private readonly styles; /** * Constructs a {@link MultivaluePropertyStyleSheetBehavior} instance. * @param propertyName - The property name to operate from. * @param value - The property value or values to operate from. * @param styles - The styles to coordinate with the property. */ constructor(propertyName: string, value: PropertyType | PropertyType[], styles: ElementStyles); /** * Binds the behavior to the element. * @param elementInstance - The element for which the property is applied. */ bind(elementInstance: FASTElement): void; /** * Unbinds the behavior from the element. * @param source - The element for which the behavior is unbinding. */ unbind(source: FASTElement & HTMLElement): void; /** * Change event for the provided element. * @param source - the element for which to attach or detach styles. * @param key - the key to lookup to know if the element already has the styles * @internal */ handleChange(source: FASTElement, key: string): void; }