ahooks-vue
Version:
35 lines (34 loc) • 840 B
TypeScript
import { Ref, ComputedRef } from 'vue-demi';
export declare type SortDirection = 'ascend' | 'descend';
export interface Page {
index: number;
size: number;
}
export interface Sort {
key: string;
direction: SortDirection;
compareFn: (a: any, b: any) => number;
}
export interface Search {
text: string;
isReg: boolean;
keys: string[];
}
export interface DefaultParams {
page?: Partial<Page>;
search?: Partial<Search>;
sort?: Partial<Sort>;
}
export interface Pramas {
page: Page;
search: Search;
sort: Sort;
}
export declare function useTable<T>(data: Ref<T[]> | T[], options?: DefaultParams): {
data: Ref<T[]>;
page: Ref<Page>;
sort: Ref<Sort>;
search: Ref<Search>;
pagedData: ComputedRef<T[]>;
total: ComputedRef<number>;
};