import { Entity, EntityIncludeParam } from "../../interfaces/models/Entity";
import { PaginatedResponse } from "../../interfaces/PaginatedResponse";
import { EntityListSortByOptions, SortByReaction, SortDirection, SortType } from "../../interfaces/EntityListSortByOptions";
import { TimeFrame } from "../../interfaces/TimeFrame";
import { KeywordsFilters } from "../../interfaces/entity-filters/KeywordsFilters";
import { TitleFilters } from "../../interfaces/entity-filters/TitleFilters";
import { ContentFilters } from "../../interfaces/entity-filters/ContentFilters";
import { AttachmentsFilters } from "../../interfaces/entity-filters/AttachmentsFilters";
import { LocationFilters } from "../../interfaces/entity-filters/LocationFilters";
import { MetadataFilters } from "../../interfaces/entity-filters/MetadataFilters";
interface FetchManyEntitiesParams {
    page?: number;
    limit?: number;
    sortBy?: EntityListSortByOptions;
    sortByReaction?: SortByReaction;
    sortDir?: SortDirection | null;
    sortType?: SortType;
    timeFrame?: TimeFrame | null;
    sourceId?: string | null;
    spaceId?: string | null;
    userId?: string | null;
    followedOnly?: boolean;
    keywordsFilters?: KeywordsFilters | null;
    titleFilters?: TitleFilters | null;
    contentFilters?: ContentFilters | null;
    attachmentsFilters?: AttachmentsFilters | null;
    locationFilters?: LocationFilters | null;
    metadataFilters?: MetadataFilters | null;
    include?: EntityIncludeParam;
}
declare function useFetchManyEntities(): (params?: FetchManyEntitiesParams) => Promise<PaginatedResponse<Entity>>;
export default useFetchManyEntities;
