import type { File, Pagination } from '../../../../../../shared/contracts/files';
declare const PAGE_SIZE = 20;
interface UseInfiniteAssetsOptions {
    folder?: number | null;
    sort?: string;
    search?: string;
    /** Extra `filters[$and]` entries for the files query. */
    filters?: Record<string, unknown>[];
    /**
     * Stable fingerprint of `filters` — a change resets the accumulated pages
     * (the array identity itself changes every render).
     */
    filtersKey?: string;
    /** Structural switch: an `is [folder]`-only type badge means no file can match. */
    enabled?: boolean;
}
declare const useInfiniteAssets: ({ folder, sort, search, filters, filtersKey, enabled, }?: UseInfiniteAssetsOptions) => {
    assets: File[];
    pagination: Pagination | undefined;
    isLoading: boolean;
    isFetchingMore: boolean;
    hasNextPage: boolean;
    fetchNextPage: () => void;
    error: import("@strapi/admin/strapi-admin").BaseQueryError | import("@reduxjs/toolkit").SerializedError | undefined;
};
export { useInfiniteAssets };
export { PAGE_SIZE };
