import { LitElement } from 'lit'; import { Icon } from '../icon'; import { Control } from '../forms'; import { Divider } from '../divider'; import { Menu, MenuItem } from '../menu'; import { Switch } from '../switch'; export type ColorScheme = 'auto' | 'light' | 'dark' | 'high-contrast'; export type Scale = 'default' | 'compact' | 'relaxed'; export type Variant = 'reduced-motion'; export interface PreferencesInputValue { 'color-scheme'?: ColorScheme | string; scale?: Scale | string; 'reduced-motion'?: boolean; } declare const PreferencesInput_base: import('@nvidia-elements/forms/mixins').FormControlMixinReturn; /** * @element nve-preferences-input * @description A preferences input is a widget for controlling apperance. Stylesheets register to the preferences input by including a css-property, see Standard for an example. * @since 1.23.7 * @entrypoint \@nvidia-elements/core/preferences-input * @event input - Dispatched when the value has changed * @event change - Dispatched when the value has changed * @cssprop --color * @cssprop --width * @csspart control - The control wrapper elements that contain the labels and menus * @csspart menu - The menu elements that display color scheme and scale options * @csspart menu-item - The individual menu item elements for each selectable option * @csspart icon - The icon element displayed next to color scheme options * @csspart divider - The divider elements that separate preference sections * @csspart switch - The switch element for the reduced motion toggle * * @aria https://www.w3.org/WAI/ARIA/apg/patterns/listbox/ * */ export declare class PreferencesInput extends PreferencesInput_base { #private; /** * Enables updating internal string values for internationalization. */ i18n: Partial; static styles: import('lit').CSSResult[]; static readonly metadata: { tag: string; version: string; valueSchema: { type: "object"; properties: { 'color-scheme': { type: "string"; }; scale: { type: "string"; }; 'reduced-motion': { type: "boolean"; }; }; }; }; static elementDefinitions: { [Control.metadata.tag]: typeof Control; [Divider.metadata.tag]: typeof Divider; [Icon.metadata.tag]: typeof Icon; [Menu.metadata.tag]: typeof Menu; [MenuItem.metadata.tag]: typeof MenuItem; [Switch.metadata.tag]: typeof Switch; }; private activePreferences; render(): import('lit').TemplateResult<1>; constructor(); connectedCallback(): void; /** @private */ updateValue(value: PreferencesInputValue): void; } export {};