yanzhen-design-vue
Version:
60 lines (59 loc) • 2.46 kB
TypeScript
import { useScroll } from '@vueuse/core';
import { ExtractPropTypes, UnwrapNestedRefs } from 'vue';
import { ExtractEmitsTypes } from '@yanzhen-libs/utils-vue';
import { ContactsItem } from '../../contacts/src/constants';
export type ListLoadMoreState = UnwrapNestedRefs<ReturnType<typeof useScroll>>;
export type ListLoadMoreFn = (state?: ListLoadMoreState) => void;
export declare const listOptions: {
ns: any;
name: any;
};
export declare const listName: any;
export declare const listModes: readonly ["default", "virtual", "tree"];
export declare const listProps: {
class: {
type: import('vue').PropType<any>;
};
style: {
type: import('vue').PropType<any>;
};
mode: import('@yanzhen-libs/utils-vue').EpPropFinalized<import('vue').PropType<readonly ["default", "virtual", "tree"]>, "default" | "virtual" | "tree", unknown, "default", boolean>;
dataSource: import('@yanzhen-libs/utils-vue').EpPropFinalized<import('vue').PropType<ContactsItem[]>, unknown, unknown, () => any[], boolean>;
loading: import('@yanzhen-libs/utils-vue').EpPropFinalized<BooleanConstructor, unknown, unknown, boolean, boolean>;
disabled: import('@yanzhen-libs/utils-vue').EpPropFinalized<BooleanConstructor, unknown, unknown, boolean, boolean>;
height: {
type: (StringConstructor | NumberConstructor)[];
};
distance: import('@yanzhen-libs/utils-vue').EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
tag: import('@yanzhen-libs/utils-vue').EpPropFinalized<StringConstructor, unknown, unknown, string, boolean>;
onLoadMore: {
type: import('vue').PropType<ListLoadMoreFn>;
};
"onUpdate:loading": {
type: import('vue').PropType<(loading: boolean) => void>;
};
};
export declare const listEmits: {
"load-more": (state?: {
x: number;
y: number;
isScrolling: boolean;
arrivedState: {
left: boolean;
right: boolean;
top: boolean;
bottom: boolean;
};
directions: {
left: boolean;
right: boolean;
top: boolean;
bottom: boolean;
};
measure: () => void;
}) => boolean;
"update:loading": (loading: boolean) => boolean;
};
export type ListProps = ExtractPropTypes<typeof listProps>;
export type ListPropsKey = keyof ListProps;
export type ListEmits = ExtractEmitsTypes<typeof listEmits>;