UNPKG

@siedlerchr/types-ol-ext

Version:
77 lines (63 loc) 2.4 kB
import type { EventsKey } from 'ol/events' import BaseEvent from 'ol/events/Event' import type { ObjectEvent } from 'ol/Object' import type { Types } from 'ol/ObjectEventType' import type { CombinedOnSignature, EventTypes, OnSignature } from 'ol/Observable' import type { Options as BaseOptions } from './Base' import Base from './Base' type SliderOnSignature<Return> = OnSignature<EventTypes, Event, Return> & OnSignature<Types | 'change' | 'error' | 'propertychange', ObjectEvent, Return> & OnSignature<Types | 'change:value', SliderEvent, Return> & CombinedOnSignature<Types | EventTypes | 'change' | 'error' | 'propertychange' | 'change:value', Return>; export enum SliderType { CHANGE_VALUE = 'change:value', } export interface Options extends BaseOptions { className?: string; input?: Element; parent?: Element; align?: 'left' | 'right' | 'middle'; type?: string; min?: number; max?: number; step?: number; overflow?: boolean; before?: string | Element; after?: string | Element; fixed?: boolean; } /** Checkbox input * @constructor * @extends {ol_ext_input_Base} */ export default class Slider extends Base { /** * @param {*} options * @param {string} [options.className] * @param {Element} [options.input] input element, if non create one * @param {Element} [options.parent] parent element, if create an input * @param {string} [options.align=left] align popup left/right * @param {string} [options.type] a slide type as 'size' * @param {number} [options.min] min value, default use input min * @param {number} [options.max] max value, default use input max * @param {number} [options.step] step value, default use input step * @param {boolean} [options.overflow=false] enable values over min/max * @param {string|Element} [options.before] an element to add before the slider * @param {string|Element} [options.after] an element to add after the slider * @param {boolean} [options.fixed=false] no pupop */ constructor(options: any); element: HTMLElement | Text slider: HTMLElement | Text /** Get the current value * @returns {number} */ getValue(): number; on: SliderOnSignature<EventsKey> once: SliderOnSignature<EventsKey> un: SliderOnSignature<void> } export class SliderEvent extends BaseEvent { constructor(type: SliderType, value: number); value: number }