UNPKG

tdesign-mobile-vue

Version:
66 lines (65 loc) 2.14 kB
import { PickerColumn } from './type'; import { KeysType } from '../common'; export interface PickerOptions { defaultIndex?: number; keys?: KeysType; defaultPickerColumns?: PickerColumn; el: HTMLElement | HTMLDivElement | HTMLUListElement; onChange: (index: number) => void; swipeDuration?: string | number; } export declare const DEFAULT_ITEM_HEIGHT = 40; export declare const ANIMATION_TIME_LIMIT = 460; export declare const ANIMATION_DISTANCE_LIMIT = 15; declare class Picker { holder: HTMLElement | HTMLUListElement; options: PickerOptions; list: HTMLUListElement | null; elementItems: HTMLLIElement[]; height: number; curIndex: number; itemClassName: string; itemSelectedClassName: string; itemHeight: number; lastMoveTime: number; lastMoveStart: number; stopInertiaMove: boolean; startY: number; isPicking: boolean; offsetYOfStartBound: number; offsetYOfEndBound: number; offsetY: number; offsetYOfStart: number; offsetYOfEnd: number; curValue: string | null; onChange: (index: number) => void; itemGroupHeight: number; indicatorOffset: number; swipeDuration?: number | string; pickerColumns: PickerColumn; constructor(options: PickerOptions); init(): void; updateItems(): void; initScrollParams(): void; bindEvent(): void; touchStartHandler(event: TouchEvent): void; getCount(): number; getRange(thresholdA?: number, thresholdB?: number): { min: number; max: number; }; touchMoveHandler(event: TouchEvent): void; touchEndHandler(event: TouchEvent): void; updateInertiaParams(event: TouchEvent, isStart: boolean): void; scrollDist(now: number, startOffsetY: number, dist: number, duration: number): void; update(options?: any): void; updateIndex(index: number, options?: any): void; updateOptions(options?: PickerColumn): void; getCurIndex(): number; fix3d(index: number): void; setSelectedClassName(): void; setOffsetY(offsetY: number): void; endScroll(): void; destroy(): void; } export default Picker;