UNPKG

@jiaozhiye/qm-design-vue

Version:

A Component Library for Vue3.0

54 lines (53 loc) 1.52 kB
import type { PropType, Ref, CSSProperties, ExtractPropTypes, InjectionKey, StyleValue } from 'vue'; import type { Arrayable } from '../../_utils/types'; type IEvent = { scrollTop: number; scrollLeft: number; }; export declare const _props: { wrapClassName: { type: StringConstructor; }; wrapStyle: { type: PropType<string | CSSProperties>; }; barWidth: { type: NumberConstructor; default: number; }; always: { type: BooleanConstructor; }; minSize: { type: NumberConstructor; default: number; }; native: { type: BooleanConstructor; }; class: { type: PropType<string | Arrayable<Record<string, boolean>>>; }; style: { type: PropType<StyleValue>; }; }; export declare const _emits: { scroll: ({ scrollTop, scrollLeft }: IEvent) => boolean; }; export type ScrollbarProps = ExtractPropTypes<typeof _props>; export type ScrollbarPropsEmits = typeof _emits; export type ScrollbarInstance = { container: Ref<HTMLElement | undefined>; scrollTop: () => number; scrollLeft: () => number; SET_SCROLL_TOP: (value: number, animate?: boolean) => void; SET_SCROLL_LEFT: (value: number, animate?: boolean) => void; }; export type ScrollbarInject = { dragging: Ref<boolean>; scrollbarElement: Ref<HTMLElement | undefined>; wrapElement: Ref<HTMLElement | undefined>; }; export declare const scrollbarContextKey: InjectionKey<ScrollbarInject>; export {};