import { OnChanges, ComponentFactoryResolver, ViewContainerRef, ElementRef, EventEmitter, OnInit, AfterViewInit, NgZone } from '@angular/core';
import { Compiler } from '@angular/core';
import { ThemingService } from "../services/ThemingService";
export declare class Hsva {
    h: number;
    s: number;
    v: number;
    a: number;
    constructor(h: number, s: number, v: number, a: number);
}
export declare class Hsla {
    h: number;
    s: number;
    l: number;
    a: number;
    constructor(h: number, s: number, l: number, a: number);
}
export declare class Rgba {
    r: number;
    g: number;
    b: number;
    a: number;
    constructor(r: number, g: number, b: number, a: number);
}
export declare class SliderPosition {
    h: number;
    s: number;
    v: number;
    a: number;
    constructor(h: number, s: number, v: number, a: number);
}
export declare class SliderDimension {
    h: number;
    s: number;
    v: number;
    a: number;
    constructor(h: number, s: number, v: number, a: number);
}
export declare class ColorPickerService {
    hsla2hsva(hsla: Hsla): Hsva;
    hsva2hsla(hsva: Hsva): Hsla;
    rgbaToHsva(rgba: Rgba): Hsva;
    hsvaToRgba(hsva: Hsva): Rgba;
    stringToHsva(colorString?: string): Hsva;
    outputFormat(hsva: Hsva, outputFormat: string): string;
    hexText(rgba: Rgba): string;
    denormalizeRGBA(rgba: Rgba): Rgba;
}
export declare class TextDirective {
    newValue: EventEmitter<any>;
    text: any;
    rg: number;
    changeInput(value: string): void;
}
export declare class SliderDirective {
    private el;
    newValue: EventEmitter<any>;
    slider: string;
    rgX: number;
    rgY: number;
    private listenerMove;
    private listenerStop;
    constructor(el: ElementRef);
    setCursor(event: any): void;
    move(event: any): void;
    start(event: any): void;
    stop(): void;
    getX(event: any): number;
    getY(event: any): number;
}
export declare class ColorHide implements OnInit, OnChanges {
    private element;
    private nativeElement;
    hide: boolean;
    constructor(element: ElementRef);
    ngOnInit(): void;
    ngOnChanges(changes: any): void;
    private render;
}
export declare class DialogComponent implements OnInit, AfterViewInit {
    private el;
    private colorPickerService;
    private ngZone;
    hsva: Hsva;
    rgbaText: Rgba;
    hslaText: Hsla;
    hexText: string;
    outputColor: string;
    alphaSliderColor: string;
    hueSliderColor: string;
    slider: SliderPosition;
    sliderDimMax: SliderDimension;
    format: number;
    show: boolean;
    top: number;
    left: number;
    position: string;
    directiveInstance: any;
    initialColor: string;
    directiveElementRef: ElementRef;
    listenerMouseDown: any;
    listenerEscape: any;
    listenerResize: any;
    cpPosition: string;
    cpPositionOffset: number;
    cpOutputFormat: string;
    cpPresetLabel: string;
    cpPresetColors: Array<string>;
    cpCancelButton: boolean;
    cpCancelButtonClass: string;
    cpCancelButtonText: string;
    cpHeight: number;
    cpWidth: number;
    cpIgnoredElements: any;
    dialogArrowSize: number;
    dialogArrowOffset: number;
    arrowTop: number;
    hueSlider: any;
    alphaSlider: any;
    dialogElement: any;
    constructor(el: ElementRef, colorPickerService: ColorPickerService, ngZone: NgZone);
    setDialog(instance: any, elementRef: ElementRef, color: any, cpPosition: string, cpPositionOffset: string, cpPositionRelativeToArrow: boolean, cpOutputFormat: string, cpPresetLabel: string, cpPresetColors: Array<string>, cpCancelButton: boolean, cpCancelButtonClass: string, cpCancelButtonText: string, cpHeight: string, cpWidth: string, cpIgnoredElements: any): void;
    updateDialog(color: any, cpHeight: string, cpWidth: string): void;
    setInitialColor(color: any): void;
    ngOnInit(): void;
    ngAfterViewInit(): void;
    openColorPicker(): void;
    onMouseDown(event: any): void;
    onEscape: (event: any) => void;
    closeColorPicker(): void;
    onResize(): void;
    setDialogPosition(): void;
    setSaturation(val: {
        v: number;
        rg: number;
    }): void;
    setLightness(val: {
        v: number;
        rg: number;
    }): void;
    setHue(val: {
        v: number;
        rg: number;
    }): void;
    setAlpha(val: {
        v: number;
        rg: number;
    }): void;
    setR(val: {
        v: number;
        rg: number;
    }): void;
    setG(val: {
        v: number;
        rg: number;
    }): void;
    setB(val: {
        v: number;
        rg: number;
    }): void;
    setSaturationAndBrightness(val: {
        s: number;
        v: number;
        rgX: number;
        rgY: number;
    }): void;
    setColorFromString(value: string): void;
    formatPolicy(): number;
    update(): void;
    cancelColor(): void;
    isDescendant(parent: any, child: any): boolean;
    createBox(element: any, offset: boolean): any;
}
export declare class ColorPickerDirective implements OnInit, OnChanges {
    private compiler;
    private resolver;
    private colorPickerService;
    private vcRef;
    private el;
    colorPicker: string;
    colorPickerChange: EventEmitter<string>;
    cpToggle: boolean;
    cpToggleChange: EventEmitter<boolean>;
    cpPosition: string;
    cpPositionOffset: string;
    cpPositionRelativeToArrow: boolean;
    cpOutputFormat: string;
    cpPresetLabel: string;
    cpPresetColors: Array<string>;
    cpCancelButton: boolean;
    cpCancelButtonClass: string;
    cpCancelButtonText: string;
    cpFallbackColor: string;
    cpHeight: string;
    cpWidth: string;
    cpIgnoredElements: any;
    private dialog;
    private created;
    constructor(compiler: Compiler, resolver: ComponentFactoryResolver, colorPickerService: ColorPickerService, vcRef: ViewContainerRef, el: ElementRef);
    ngOnChanges(changes: any): void;
    ngOnInit(): void;
    onClick(): void;
    openDialog(): void;
    colorChanged(value: string): void;
    changeInput(value: string): void;
    toggle(value: boolean): void;
}
export declare class ColorPickerModule {
}
export interface IColorPickerScope {
    favouriteColor?: Array<string>;
    dropdownVisible?: boolean;
    isColorPickerOpen?: boolean;
    isTopPosition?: () => boolean;
    clickoutHandler?: () => void;
    clickInHandler?: () => void;
    toggleDropdown?: () => void;
    select?: (color: string) => void;
    pickCustomColor?: (event) => void;
}
export declare class ColorPicker {
    themingService: ThemingService;
    position: string;
    color: string;
    colorChange: EventEmitter<string>;
    onColorChange: EventEmitter<string>;
    onSelectColorChange: (event) => void;
    onInputChange: (event) => void;
    textColor: string;
    colorPicker: IColorPickerScope;
    constructor(themingService: ThemingService);
    link: () => void;
}
