import { Ref } from 'vue'; import { default as ApiInterface } from '../types/api-interface'; export interface PaginatedApiOptions { endpoint: string; api?: ApiInterface; params: Ref<{ [code: string]: string | string[]; }>; perPage: Ref; paginationType?: string; itemConverter?: (item: any) => any; scrollPagination?: boolean; responseItemsKey?: string; responseTotalKey?: string; orderingKey?: string; requestPageKey?: string; requestPerPageKey?: string; paramsSerialization?: string; } export default function usePaginatedApi(options: PaginatedApiOptions): { page: any; pages: any; count: any; isLoading: any; items: Ref; load: any; reload: () => Promise; loadNext: () => Promise; loadPrev: () => Promise; loadPage: (p: number) => Promise; setSort: (s: string) => void; sort: any; sortDir: any; };