///
/** Core */
import { CoreComponent } from "cmf.core/src/core";
/** Angular2 */
import * as ng from "@angular/core";
/** Kendo */
import "kendo.slider";
import { ElementQuery } from "../../directives/elementQuery/elementQuery";
/**
* @whatItDoes
*
* Slider component is used to provide a setting tool to the user with the whole range of possible values.
*
* @howToUse
*
* This component is used with the inputs and outputs mentioned below.
*
* ### Inputs:
* `string` : **sliderTitle** - Slider title ;
* `number` : **min** - Minimum slider value ;
* `number` : **max** - Maximum slider value ;
* `number` : **step** - Step slider value ;
* `number` : **value** - Slider value ;
* `string`: **tickPlacement** - "Both" for tick placement up and down the slider or "none" for no tick placement .
*
* ### Outputs:
* `any` : **valueChange** : The selected value selected change event that gets fired when a certain value is clicked
* or dragged by the user, and it informs the Parent component that the current value has changed.
*
* ### Example
* To use the component assume this HTML template as an example:
*
* ```html
*
*
* ```
*
* * @description
*
* ## Slider Component
*
* ### Dependencies
*
* #### Components
* * _This component depend on ElementQueryModule component_
*
* #### Services
* _This component does not depend on any service_
*
* #### Directives
* _This component does not depend on any directive_
*/
export declare class Slider extends CoreComponent implements ng.AfterViewInit, ng.OnDestroy, ng.OnChanges {
private _elementRef;
private _zone;
/**
* Element query element
*/
elementQuery: ElementQuery;
/**
* slider resize event
*/
private _resizeWidthHeightSubscription;
/**
* minimum slider value
*/
min: number;
/**
* maximum slider value
*/
max: number;
/**
* step slider value
*/
step: number;
/**
* step slider value
*/
value: number;
/**
* slider title
*/
sliderTitle: string;
/**
* tick placement option (both or none)
*/
tickPlacement: string;
/**
* emit event to parent when slider value changes
*/
valueChange: ng.EventEmitter;
/**
* slider current value
*/
sliderValue: number;
/**
* kendo slider instance
*/
slider: kendo.ui.Slider;
/**
* Constructor
* @param _elementRef
* @param _zone
*/
constructor(_elementRef: ng.ElementRef, _zone: ng.NgZone);
/**
* Kendo Slider initialization
*/
private kendoSliderInit;
/**
* Kendo Slider "refresh"
* since kendo slider doesn't support dynamic settings for min, max and step
* the only way is to destroy and re-initialize the slider
*/
private kendoSliderRefresh;
/**
* Slider refresh
*/
private sliderRefresh;
/**
* Angular after view init method
*/
ngAfterViewInit(): void;
/**
* On component destruction - unsubscribe events.
*/
ngOnDestroy(): void;
/**
* function the fires the event emit (inside angular zone)
* @param e kendo.ui.SliderChangeEvent
*/
onSliderValueChange(e: kendo.ui.SliderChangeEvent): void;
/**
* Resizes the Slider when the container is resized.
*/
private onSliderResize;
/**
* On changes
* @param changes
*/
ngOnChanges(changes: any): void;
}
export declare class SliderModule {
}