/** * * 1D slider for a single color channel (`hue`, `saturation`, `brightness`, `lightness`, * `red`, `green`, `blue`, `alpha`, or OKLCh's `L`/`C`/`H`). Captures pointer/keyboard events * and forwards channel updates to the parent `InputColor` via inject. Renders an * `InputColorTransparencyGrid` (when `channel="alpha"`) + `InputColorSliderTrack` + * `InputColorSliderHandle` by default; override the slot to compose differently. * * @module inputcolorslider * */ import type { DefineComponent, DesignToken, EmitFn, HintedString, PassThrough } from '@primevue/core'; import type { ComponentHooks } from '@primevue/core/basecomponent'; import type { PassThroughOptions } from 'primevue/passthrough'; import type { Component, VNode } from 'vue'; /** * Custom passthrough(pt) option type, used to forward attributes via {@link InputColorSliderPassThroughOptions}. */ export declare type InputColorSliderPassThroughOptionType = InputColorSliderPassThroughAttributes | ((options: InputColorSliderPassThroughMethodOptions) => InputColorSliderPassThroughAttributes | string) | string | null | undefined; /** * Custom passthrough(pt) option method. */ export interface InputColorSliderPassThroughMethodOptions { /** * Defines instance. */ instance: any; /** * Defines valid properties. */ props: InputColorSliderProps; /** * Defines valid attributes. */ attrs: any; /** * Defines parent options. */ parent: any; /** * Defines passthrough(pt) options in global config. */ global: object | undefined; } /** * Custom passthrough(pt) options. * @see {@link InputColorSliderProps.pt} */ export interface InputColorSliderPassThroughOptions { /** * Used to pass attributes to the root's DOM element. */ root?: InputColorSliderPassThroughOptionType; /** * Used to manage all lifecycle hooks. * @see {@link BaseComponent.ComponentHooks} */ hooks?: ComponentHooks; } /** * Custom passthrough attributes for each DOM elements. */ export interface InputColorSliderPassThroughAttributes { [key: string]: any; } /** * Color channel that an `InputColorSlider` can drive. */ export type InputColorSliderChannel = HintedString<'hue' | 'saturation' | 'brightness' | 'lightness' | 'alpha' | 'red' | 'green' | 'blue' | 'L' | 'C' | 'H'>; /** * Orientation supported by `InputColorSlider`. */ export type InputColorSliderOrientation = 'horizontal' | 'vertical'; /** * Defines valid properties in InputColorSlider component. */ export interface InputColorSliderProps { /** * Channel this slider drives. * @defaultValue 'hue' */ channel?: InputColorSliderChannel; /** * Slider orientation. * @defaultValue 'horizontal' */ orientation?: InputColorSliderOrientation; /** * Disable just this slider (in addition to the parent `InputColor.disabled`). * @defaultValue false */ disabled?: boolean; /** * Use to change the HTML tag of root element. * @defaultValue DIV */ as?: string | Component | undefined; /** * When enabled, it changes the default rendered element for the one passed as a child element. * @defaultValue false */ asChild?: boolean | undefined; /** * It generates scoped CSS variables using design tokens for the component. */ dt?: DesignToken; /** * Used to pass attributes to DOM elements inside the component. * @type {InputColorSliderPassThroughOptions} */ pt?: PassThrough; /** * Used to configure passthrough(pt) options of the component. * @type {PassThroughOptions} */ ptOptions?: PassThroughOptions; /** * When enabled, it removes component related styles in the core. * @defaultValue false */ unstyled?: boolean; } /** * Defines valid slots in InputColorSlider component. */ export interface InputColorSliderSlots { /** * Default slot, place the track and handle (e.g. `InputColorSliderTrack` + `InputColorSliderHandle`) here. * @param {Object} scope - default slot's params. */ default(scope: { /** * Style class of the slider root. */ class: string; /** * Attributes to spread on the consumer's root element. */ a11yAttrs: Record; }): VNode[]; } /** * Defines valid emits in InputColorSlider component. */ export interface InputColorSliderEmitsOptions {} /** * Type alias for emits resolved from {@link InputColorSliderEmitsOptions}. */ export declare type InputColorSliderEmits = EmitFn; /** * **PrimeVue - InputColorSlider** * * _1D slider for a single color channel of `InputColor`._ * * [Live Demo](https://www.primevue.dev/inputcolor/) * --- --- * ![PrimeVue](https://primefaces.org/cdn/primevue/images/logo-100.png) * * @group Component * */ declare const InputColorSlider: DefineComponent; declare module 'vue' { export interface GlobalComponents { InputColorSlider: DefineComponent; } } export default InputColorSlider;