/** * Utility functions for handling color transparency while preserving color positions */ export interface RGB { r: number; g: number; b: number; a: number; } export declare class ColorTransparencyHandler { private persistentOpacity; private isInternalUpdate; private isColorSelectUpdate; constructor(initialOpacity?: number); /** * Converts hex color to RGBA while preserving opacity */ hexToRgba(hex: string): RGB; /** * Converts RGBA values to hex color */ rgbaToHex(r: number, g: number, b: number, a: number): string; /** * Updates opacity from slider position */ updateOpacityFromPosition(event: MouseEvent, sliderElement: HTMLDivElement, onUpdate: (hexValue: string, rgb: RGB) => void, currentRgb: RGB): void; /** * Updates opacity from input value */ updateOpacityFromInput(inputValue: number, onUpdate: (hexValue: string, rgb: RGB) => void, currentRgb: RGB): void; /** * Gets the current opacity percentage */ getOpacityPercentage(): number; /** * Gets the current persistent opacity value */ getCurrentOpacity(): number; /** * Checks if an update is internal */ isUpdatingInternally(): boolean; /** * Checks if an update is from color select */ isUpdatingFromColorSelect(): boolean; /** * Sets the color select update flag */ setColorSelectUpdate(value: boolean): void; } export declare function getRGBABorder(color: string, opacity: number): string;