import { PayloadAction } from "@reduxjs/toolkit"; import type { SublayState } from '../sublayReducers'; import { Entity, EntityIncludeParam } from "../../interfaces/models/Entity"; import { EntityListSortByOptions, SortByReaction, SortDirection, SortType } from "../../interfaces/EntityListSortByOptions"; import { LocationFilters } from "../../interfaces/entity-filters/LocationFilters"; import { TimeFrame } from "../../interfaces/TimeFrame"; import { MetadataFilters } from "../../interfaces/entity-filters/MetadataFilters"; import { TitleFilters } from "../../interfaces/entity-filters/TitleFilters"; import { ContentFilters } from "../../interfaces/entity-filters/ContentFilters"; import { AttachmentsFilters } from "../../interfaces/entity-filters/AttachmentsFilters"; import { KeywordsFilters } from "../../interfaces/entity-filters/KeywordsFilters"; import { NsfwFilter } from "../../interfaces/NsfwFilter"; import { SpaceReputationContextObject } from "../../interfaces/SpaceReputation"; export interface EntityListState { entities: Entity[]; page: number; loading: boolean; hasMore: boolean; error: string | null; lastFetched: number | null; sourceId: string | null; spaceId: string | null; limit: number; include: EntityIncludeParam | null; spaceReputationId: string | null; spaceReputationDescendants: boolean | null; sortBy: EntityListSortByOptions; sortByReaction: SortByReaction; sortDir: SortDirection | null; sortType: SortType; timeFrame: TimeFrame | null; userId: string | null; followedOnly: boolean; keywordsFilters: KeywordsFilters | null; titleFilters: TitleFilters | null; contentFilters: ContentFilters | null; attachmentsFilters: AttachmentsFilters | null; locationFilters: LocationFilters | null; metadataFilters: MetadataFilters | null; nsfwFilter: NsfwFilter | null; } export interface EntityListsState { lists: { [listId: string]: EntityListState; }; } export interface EntityListSort { sortBy: EntityListSortByOptions; sortByReaction?: SortByReaction; sortDir?: SortDirection | null; sortType?: SortType; } export interface EntityListFilters { timeFrame?: TimeFrame | null; userId?: string | null; followedOnly?: boolean; keywordsFilters?: KeywordsFilters | null; titleFilters?: TitleFilters | null; contentFilters?: ContentFilters | null; attachmentsFilters?: AttachmentsFilters | null; locationFilters?: LocationFilters | null; metadataFilters?: MetadataFilters | null; nsfwFilter?: NsfwFilter | null; } export interface EntityListConfig { sourceId?: string | null; spaceId?: string | null; limit?: number; include?: EntityIncludeParam | null; /** * Opt the embedded authors into a space-scoped `spaceReputation`. This is the * primary form; it supersedes the deprecated flat props below. Normalized to * the flat `spaceReputationId`/`spaceReputationDescendants` pair before it is * stored in slice state (the persisted shape stays flat). */ spaceReputation?: SpaceReputationContextObject; /** * Opt into per-row `spaceReputation` on embedded authors. Accepted forms: a * space ``, `"none"`, or `"context"`. * * @deprecated Use `spaceReputation: { spaceId, includeDescendants? }` * instead. Still accepted; ignored when the `spaceReputation` object is supplied. */ spaceReputationId?: string | null; /** * Only honored with an explicit `` `spaceReputationId`. * * @deprecated Use `spaceReputation.includeDescendants` instead. Still * accepted; ignored when the `spaceReputation` object is supplied. */ spaceReputationDescendants?: boolean | null; } export interface EntityListFetchOptions { resetFilters?: boolean; resetSort?: boolean; fetchImmediately?: boolean; clearImmediately?: boolean; } export interface FilterUpdatePayload { listId: string; filters: Partial; sort?: Partial; config?: EntityListConfig; options?: EntityListFetchOptions; } export interface InitializeListPayload { listId: string; } export interface KeywordsUpdatePayload { listId: string; type: "add" | "remove" | "reset" | "replace"; key: "includes" | "doesNotInclude" | "both"; value?: string | string[]; } export interface EntityAddPayload { listId: string; entity: Entity; insertPosition?: "first" | "last"; } export interface EntityRemovePayload { listId: string; entityId: string; } export interface EntitiesSetPayload { listId: string; entities: Entity[]; append?: boolean; } export declare const entityListsSlice: import("@reduxjs/toolkit").Slice) => void; updateFiltersAndSortConfig: (state: { lists: { [x: string]: { entities: { id: string; foreignId: string | null; shortId: string; projectId: string; sourceId: string | null; spaceId: string | null; space?: { id: string; projectId: string; shortId: string; slug: string | null; name: string; description: string | null; avatarFileId: string | null; bannerFileId: string | null; userId: string; readingPermission: import("../..").ReadingPermission; postingPermission: import("../..").PostingPermission; visibility: import("../../interfaces/models/Space").SpaceVisibility; requireJoinApproval: boolean; nsfw: boolean; nsfwEffective: boolean; parentSpaceId: string | null; depth: number; metadata: { [x: string]: any; }; createdAt: string; updatedAt: string; deletedAt: string | null; membersCount: number; childSpacesCount: number; isMember?: boolean | undefined; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | undefined; } | null | undefined; userId: string | null; user?: { id: string; projectId: string; foreignId: string | null; role: import("../..").UserRole; name: string | null; username: string | null; avatar: string | null; avatarFileId: string | null; bannerFileId: string | null; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bio: string | null; birthdate: string | null; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; reputation: number; spaceReputation?: number | undefined; createdAt: string; } | null | undefined; title: string | null; content: string | null; mentions: ({ type: "user"; id: string; foreignId?: string | null | undefined; username: string; } | { type: "space"; id: string; slug: string; })[]; attachments: { [x: string]: any; }[]; files?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; }[] | undefined; keywords: string[]; upvotes: string[]; downvotes: string[]; reactionCounts: { upvote: number; downvote: number; like: number; love: number; wow: number; sad: number; angry: number; funny: number; }; userReaction?: (import("../..").ReactionType | null) | undefined; repliesCount: number; views: number; score: number; scoreUpdatedAt: string; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; nsfw: boolean; nsfwEffective: boolean; topComment: { id: string; user: { id: string; projectId: string; foreignId: string | null; role: import("../..").UserRole; name: string | null; username: string | null; avatar: string | null; avatarFileId: string | null; bannerFileId: string | null; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bio: string | null; birthdate: string | null; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; reputation: number; spaceReputation?: number | undefined; createdAt: string; }; upvotesCount: number; content: string; createdAt: string; } | null; isSaved?: boolean | undefined; createdAt: string; updatedAt: string; deletedAt: string | null; isDraft: boolean | null; moderationStatus: "approved" | "removed" | null; moderatedAt: string | null; moderatedById: string | null; moderatedByType: "client" | "user" | null; moderationReason: string | null; }[]; page: number; loading: boolean; hasMore: boolean; error: string | null; lastFetched: number | null; sourceId: string | null; spaceId: string | null; limit: number; include: string | import("../..").EntityInclude[] | null; spaceReputationId: string | null; spaceReputationDescendants: boolean | null; sortBy: EntityListSortByOptions; sortByReaction: SortByReaction; sortDir: SortDirection | null; sortType: SortType; timeFrame: TimeFrame | null; userId: string | null; followedOnly: boolean; keywordsFilters: { includes?: string[] | undefined; doesNotInclude?: string[] | undefined; } | null; titleFilters: { hasTitle?: boolean | undefined; includes?: string | string[] | undefined; doesNotInclude?: string | string[] | undefined; } | null; contentFilters: { hasContent?: boolean | undefined; includes?: string | string[] | undefined; doesNotInclude?: string | string[] | undefined; } | null; attachmentsFilters: { hasAttachments?: boolean | undefined; } | null; locationFilters: { latitude: number; longitude: number; radius: number; } | null; metadataFilters: { includes?: { [x: string]: unknown; } | undefined; includesAny?: { [x: string]: unknown; }[] | undefined; doesNotInclude?: { [x: string]: unknown; } | undefined; exists?: string[] | undefined; doesNotExist?: string[] | undefined; } | null; nsfwFilter: NsfwFilter | null; }; }; }, action: PayloadAction) => void; setEntityListLoading: (state: { lists: { [x: string]: { entities: { id: string; foreignId: string | null; shortId: string; projectId: string; sourceId: string | null; spaceId: string | null; space?: { id: string; projectId: string; shortId: string; slug: string | null; name: string; description: string | null; avatarFileId: string | null; bannerFileId: string | null; userId: string; readingPermission: import("../..").ReadingPermission; postingPermission: import("../..").PostingPermission; visibility: import("../../interfaces/models/Space").SpaceVisibility; requireJoinApproval: boolean; nsfw: boolean; nsfwEffective: boolean; parentSpaceId: string | null; depth: number; metadata: { [x: string]: any; }; createdAt: string; updatedAt: string; deletedAt: string | null; membersCount: number; childSpacesCount: number; isMember?: boolean | undefined; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | undefined; } | null | undefined; userId: string | null; user?: { id: string; projectId: string; foreignId: string | null; role: import("../..").UserRole; name: string | null; username: string | null; avatar: string | null; avatarFileId: string | null; bannerFileId: string | null; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bio: string | null; birthdate: string | null; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; reputation: number; spaceReputation?: number | undefined; createdAt: string; } | null | undefined; title: string | null; content: string | null; mentions: ({ type: "user"; id: string; foreignId?: string | null | undefined; username: string; } | { type: "space"; id: string; slug: string; })[]; attachments: { [x: string]: any; }[]; files?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; }[] | undefined; keywords: string[]; upvotes: string[]; downvotes: string[]; reactionCounts: { upvote: number; downvote: number; like: number; love: number; wow: number; sad: number; angry: number; funny: number; }; userReaction?: (import("../..").ReactionType | null) | undefined; repliesCount: number; views: number; score: number; scoreUpdatedAt: string; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; nsfw: boolean; nsfwEffective: boolean; topComment: { id: string; user: { id: string; projectId: string; foreignId: string | null; role: import("../..").UserRole; name: string | null; username: string | null; avatar: string | null; avatarFileId: string | null; bannerFileId: string | null; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bio: string | null; birthdate: string | null; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; reputation: number; spaceReputation?: number | undefined; createdAt: string; }; upvotesCount: number; content: string; createdAt: string; } | null; isSaved?: boolean | undefined; createdAt: string; updatedAt: string; deletedAt: string | null; isDraft: boolean | null; moderationStatus: "approved" | "removed" | null; moderatedAt: string | null; moderatedById: string | null; moderatedByType: "client" | "user" | null; moderationReason: string | null; }[]; page: number; loading: boolean; hasMore: boolean; error: string | null; lastFetched: number | null; sourceId: string | null; spaceId: string | null; limit: number; include: string | import("../..").EntityInclude[] | null; spaceReputationId: string | null; spaceReputationDescendants: boolean | null; sortBy: EntityListSortByOptions; sortByReaction: SortByReaction; sortDir: SortDirection | null; sortType: SortType; timeFrame: TimeFrame | null; userId: string | null; followedOnly: boolean; keywordsFilters: { includes?: string[] | undefined; doesNotInclude?: string[] | undefined; } | null; titleFilters: { hasTitle?: boolean | undefined; includes?: string | string[] | undefined; doesNotInclude?: string | string[] | undefined; } | null; contentFilters: { hasContent?: boolean | undefined; includes?: string | string[] | undefined; doesNotInclude?: string | string[] | undefined; } | null; attachmentsFilters: { hasAttachments?: boolean | undefined; } | null; locationFilters: { latitude: number; longitude: number; radius: number; } | null; metadataFilters: { includes?: { [x: string]: unknown; } | undefined; includesAny?: { [x: string]: unknown; }[] | undefined; doesNotInclude?: { [x: string]: unknown; } | undefined; exists?: string[] | undefined; doesNotExist?: string[] | undefined; } | null; nsfwFilter: NsfwFilter | null; }; }; }, action: PayloadAction<{ listId: string; loading: boolean; }>) => void; setEntityListEntities: (state: { lists: { [x: string]: { entities: { id: string; foreignId: string | null; shortId: string; projectId: string; sourceId: string | null; spaceId: string | null; space?: { id: string; projectId: string; shortId: string; slug: string | null; name: string; description: string | null; avatarFileId: string | null; bannerFileId: string | null; userId: string; readingPermission: import("../..").ReadingPermission; postingPermission: import("../..").PostingPermission; visibility: import("../../interfaces/models/Space").SpaceVisibility; requireJoinApproval: boolean; nsfw: boolean; nsfwEffective: boolean; parentSpaceId: string | null; depth: number; metadata: { [x: string]: any; }; createdAt: string; updatedAt: string; deletedAt: string | null; membersCount: number; childSpacesCount: number; isMember?: boolean | undefined; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | undefined; } | null | undefined; userId: string | null; user?: { id: string; projectId: string; foreignId: string | null; role: import("../..").UserRole; name: string | null; username: string | null; avatar: string | null; avatarFileId: string | null; bannerFileId: string | null; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bio: string | null; birthdate: string | null; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; reputation: number; spaceReputation?: number | undefined; createdAt: string; } | null | undefined; title: string | null; content: string | null; mentions: ({ type: "user"; id: string; foreignId?: string | null | undefined; username: string; } | { type: "space"; id: string; slug: string; })[]; attachments: { [x: string]: any; }[]; files?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; }[] | undefined; keywords: string[]; upvotes: string[]; downvotes: string[]; reactionCounts: { upvote: number; downvote: number; like: number; love: number; wow: number; sad: number; angry: number; funny: number; }; userReaction?: (import("../..").ReactionType | null) | undefined; repliesCount: number; views: number; score: number; scoreUpdatedAt: string; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; nsfw: boolean; nsfwEffective: boolean; topComment: { id: string; user: { id: string; projectId: string; foreignId: string | null; role: import("../..").UserRole; name: string | null; username: string | null; avatar: string | null; avatarFileId: string | null; bannerFileId: string | null; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bio: string | null; birthdate: string | null; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; reputation: number; spaceReputation?: number | undefined; createdAt: string; }; upvotesCount: number; content: string; createdAt: string; } | null; isSaved?: boolean | undefined; createdAt: string; updatedAt: string; deletedAt: string | null; isDraft: boolean | null; moderationStatus: "approved" | "removed" | null; moderatedAt: string | null; moderatedById: string | null; moderatedByType: "client" | "user" | null; moderationReason: string | null; }[]; page: number; loading: boolean; hasMore: boolean; error: string | null; lastFetched: number | null; sourceId: string | null; spaceId: string | null; limit: number; include: string | import("../..").EntityInclude[] | null; spaceReputationId: string | null; spaceReputationDescendants: boolean | null; sortBy: EntityListSortByOptions; sortByReaction: SortByReaction; sortDir: SortDirection | null; sortType: SortType; timeFrame: TimeFrame | null; userId: string | null; followedOnly: boolean; keywordsFilters: { includes?: string[] | undefined; doesNotInclude?: string[] | undefined; } | null; titleFilters: { hasTitle?: boolean | undefined; includes?: string | string[] | undefined; doesNotInclude?: string | string[] | undefined; } | null; contentFilters: { hasContent?: boolean | undefined; includes?: string | string[] | undefined; doesNotInclude?: string | string[] | undefined; } | null; attachmentsFilters: { hasAttachments?: boolean | undefined; } | null; locationFilters: { latitude: number; longitude: number; radius: number; } | null; metadataFilters: { includes?: { [x: string]: unknown; } | undefined; includesAny?: { [x: string]: unknown; }[] | undefined; doesNotInclude?: { [x: string]: unknown; } | undefined; exists?: string[] | undefined; doesNotExist?: string[] | undefined; } | null; nsfwFilter: NsfwFilter | null; }; }; }, action: PayloadAction) => void; incrementPage: (state: { lists: { [x: string]: { entities: { id: string; foreignId: string | null; shortId: string; projectId: string; sourceId: string | null; spaceId: string | null; space?: { id: string; projectId: string; shortId: string; slug: string | null; name: string; description: string | null; avatarFileId: string | null; bannerFileId: string | null; userId: string; readingPermission: import("../..").ReadingPermission; postingPermission: import("../..").PostingPermission; visibility: import("../../interfaces/models/Space").SpaceVisibility; requireJoinApproval: boolean; nsfw: boolean; nsfwEffective: boolean; parentSpaceId: string | null; depth: number; metadata: { [x: string]: any; }; createdAt: string; updatedAt: string; deletedAt: string | null; membersCount: number; childSpacesCount: number; isMember?: boolean | undefined; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | undefined; } | null | undefined; userId: string | null; user?: { id: string; projectId: string; foreignId: string | null; role: import("../..").UserRole; name: string | null; username: string | null; avatar: string | null; avatarFileId: string | null; bannerFileId: string | null; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bio: string | null; birthdate: string | null; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; reputation: number; spaceReputation?: number | undefined; createdAt: string; } | null | undefined; title: string | null; content: string | null; mentions: ({ type: "user"; id: string; foreignId?: string | null | undefined; username: string; } | { type: "space"; id: string; slug: string; })[]; attachments: { [x: string]: any; }[]; files?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; }[] | undefined; keywords: string[]; upvotes: string[]; downvotes: string[]; reactionCounts: { upvote: number; downvote: number; like: number; love: number; wow: number; sad: number; angry: number; funny: number; }; userReaction?: (import("../..").ReactionType | null) | undefined; repliesCount: number; views: number; score: number; scoreUpdatedAt: string; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; nsfw: boolean; nsfwEffective: boolean; topComment: { id: string; user: { id: string; projectId: string; foreignId: string | null; role: import("../..").UserRole; name: string | null; username: string | null; avatar: string | null; avatarFileId: string | null; bannerFileId: string | null; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bio: string | null; birthdate: string | null; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; reputation: number; spaceReputation?: number | undefined; createdAt: string; }; upvotesCount: number; content: string; createdAt: string; } | null; isSaved?: boolean | undefined; createdAt: string; updatedAt: string; deletedAt: string | null; isDraft: boolean | null; moderationStatus: "approved" | "removed" | null; moderatedAt: string | null; moderatedById: string | null; moderatedByType: "client" | "user" | null; moderationReason: string | null; }[]; page: number; loading: boolean; hasMore: boolean; error: string | null; lastFetched: number | null; sourceId: string | null; spaceId: string | null; limit: number; include: string | import("../..").EntityInclude[] | null; spaceReputationId: string | null; spaceReputationDescendants: boolean | null; sortBy: EntityListSortByOptions; sortByReaction: SortByReaction; sortDir: SortDirection | null; sortType: SortType; timeFrame: TimeFrame | null; userId: string | null; followedOnly: boolean; keywordsFilters: { includes?: string[] | undefined; doesNotInclude?: string[] | undefined; } | null; titleFilters: { hasTitle?: boolean | undefined; includes?: string | string[] | undefined; doesNotInclude?: string | string[] | undefined; } | null; contentFilters: { hasContent?: boolean | undefined; includes?: string | string[] | undefined; doesNotInclude?: string | string[] | undefined; } | null; attachmentsFilters: { hasAttachments?: boolean | undefined; } | null; locationFilters: { latitude: number; longitude: number; radius: number; } | null; metadataFilters: { includes?: { [x: string]: unknown; } | undefined; includesAny?: { [x: string]: unknown; }[] | undefined; doesNotInclude?: { [x: string]: unknown; } | undefined; exists?: string[] | undefined; doesNotExist?: string[] | undefined; } | null; nsfwFilter: NsfwFilter | null; }; }; }, action: PayloadAction) => void; setEntityListHasMore: (state: { lists: { [x: string]: { entities: { id: string; foreignId: string | null; shortId: string; projectId: string; sourceId: string | null; spaceId: string | null; space?: { id: string; projectId: string; shortId: string; slug: string | null; name: string; description: string | null; avatarFileId: string | null; bannerFileId: string | null; userId: string; readingPermission: import("../..").ReadingPermission; postingPermission: import("../..").PostingPermission; visibility: import("../../interfaces/models/Space").SpaceVisibility; requireJoinApproval: boolean; nsfw: boolean; nsfwEffective: boolean; parentSpaceId: string | null; depth: number; metadata: { [x: string]: any; }; createdAt: string; updatedAt: string; deletedAt: string | null; membersCount: number; childSpacesCount: number; isMember?: boolean | undefined; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | undefined; } | null | undefined; userId: string | null; user?: { id: string; projectId: string; foreignId: string | null; role: import("../..").UserRole; name: string | null; username: string | null; avatar: string | null; avatarFileId: string | null; bannerFileId: string | null; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bio: string | null; birthdate: string | null; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; reputation: number; spaceReputation?: number | undefined; createdAt: string; } | null | undefined; title: string | null; content: string | null; mentions: ({ type: "user"; id: string; foreignId?: string | null | undefined; username: string; } | { type: "space"; id: string; slug: string; })[]; attachments: { [x: string]: any; }[]; files?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; }[] | undefined; keywords: string[]; upvotes: string[]; downvotes: string[]; reactionCounts: { upvote: number; downvote: number; like: number; love: number; wow: number; sad: number; angry: number; funny: number; }; userReaction?: (import("../..").ReactionType | null) | undefined; repliesCount: number; views: number; score: number; scoreUpdatedAt: string; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; nsfw: boolean; nsfwEffective: boolean; topComment: { id: string; user: { id: string; projectId: string; foreignId: string | null; role: import("../..").UserRole; name: string | null; username: string | null; avatar: string | null; avatarFileId: string | null; bannerFileId: string | null; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bio: string | null; birthdate: string | null; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; reputation: number; spaceReputation?: number | undefined; createdAt: string; }; upvotesCount: number; content: string; createdAt: string; } | null; isSaved?: boolean | undefined; createdAt: string; updatedAt: string; deletedAt: string | null; isDraft: boolean | null; moderationStatus: "approved" | "removed" | null; moderatedAt: string | null; moderatedById: string | null; moderatedByType: "client" | "user" | null; moderationReason: string | null; }[]; page: number; loading: boolean; hasMore: boolean; error: string | null; lastFetched: number | null; sourceId: string | null; spaceId: string | null; limit: number; include: string | import("../..").EntityInclude[] | null; spaceReputationId: string | null; spaceReputationDescendants: boolean | null; sortBy: EntityListSortByOptions; sortByReaction: SortByReaction; sortDir: SortDirection | null; sortType: SortType; timeFrame: TimeFrame | null; userId: string | null; followedOnly: boolean; keywordsFilters: { includes?: string[] | undefined; doesNotInclude?: string[] | undefined; } | null; titleFilters: { hasTitle?: boolean | undefined; includes?: string | string[] | undefined; doesNotInclude?: string | string[] | undefined; } | null; contentFilters: { hasContent?: boolean | undefined; includes?: string | string[] | undefined; doesNotInclude?: string | string[] | undefined; } | null; attachmentsFilters: { hasAttachments?: boolean | undefined; } | null; locationFilters: { latitude: number; longitude: number; radius: number; } | null; metadataFilters: { includes?: { [x: string]: unknown; } | undefined; includesAny?: { [x: string]: unknown; }[] | undefined; doesNotInclude?: { [x: string]: unknown; } | undefined; exists?: string[] | undefined; doesNotExist?: string[] | undefined; } | null; nsfwFilter: NsfwFilter | null; }; }; }, action: PayloadAction<{ listId: string; hasMore: boolean; }>) => void; setEntityListError: (state: { lists: { [x: string]: { entities: { id: string; foreignId: string | null; shortId: string; projectId: string; sourceId: string | null; spaceId: string | null; space?: { id: string; projectId: string; shortId: string; slug: string | null; name: string; description: string | null; avatarFileId: string | null; bannerFileId: string | null; userId: string; readingPermission: import("../..").ReadingPermission; postingPermission: import("../..").PostingPermission; visibility: import("../../interfaces/models/Space").SpaceVisibility; requireJoinApproval: boolean; nsfw: boolean; nsfwEffective: boolean; parentSpaceId: string | null; depth: number; metadata: { [x: string]: any; }; createdAt: string; updatedAt: string; deletedAt: string | null; membersCount: number; childSpacesCount: number; isMember?: boolean | undefined; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | undefined; } | null | undefined; userId: string | null; user?: { id: string; projectId: string; foreignId: string | null; role: import("../..").UserRole; name: string | null; username: string | null; avatar: string | null; avatarFileId: string | null; bannerFileId: string | null; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bio: string | null; birthdate: string | null; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; reputation: number; spaceReputation?: number | undefined; createdAt: string; } | null | undefined; title: string | null; content: string | null; mentions: ({ type: "user"; id: string; foreignId?: string | null | undefined; username: string; } | { type: "space"; id: string; slug: string; })[]; attachments: { [x: string]: any; }[]; files?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; }[] | undefined; keywords: string[]; upvotes: string[]; downvotes: string[]; reactionCounts: { upvote: number; downvote: number; like: number; love: number; wow: number; sad: number; angry: number; funny: number; }; userReaction?: (import("../..").ReactionType | null) | undefined; repliesCount: number; views: number; score: number; scoreUpdatedAt: string; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; nsfw: boolean; nsfwEffective: boolean; topComment: { id: string; user: { id: string; projectId: string; foreignId: string | null; role: import("../..").UserRole; name: string | null; username: string | null; avatar: string | null; avatarFileId: string | null; bannerFileId: string | null; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bio: string | null; birthdate: string | null; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; reputation: number; spaceReputation?: number | undefined; createdAt: string; }; upvotesCount: number; content: string; createdAt: string; } | null; isSaved?: boolean | undefined; createdAt: string; updatedAt: string; deletedAt: string | null; isDraft: boolean | null; moderationStatus: "approved" | "removed" | null; moderatedAt: string | null; moderatedById: string | null; moderatedByType: "client" | "user" | null; moderationReason: string | null; }[]; page: number; loading: boolean; hasMore: boolean; error: string | null; lastFetched: number | null; sourceId: string | null; spaceId: string | null; limit: number; include: string | import("../..").EntityInclude[] | null; spaceReputationId: string | null; spaceReputationDescendants: boolean | null; sortBy: EntityListSortByOptions; sortByReaction: SortByReaction; sortDir: SortDirection | null; sortType: SortType; timeFrame: TimeFrame | null; userId: string | null; followedOnly: boolean; keywordsFilters: { includes?: string[] | undefined; doesNotInclude?: string[] | undefined; } | null; titleFilters: { hasTitle?: boolean | undefined; includes?: string | string[] | undefined; doesNotInclude?: string | string[] | undefined; } | null; contentFilters: { hasContent?: boolean | undefined; includes?: string | string[] | undefined; doesNotInclude?: string | string[] | undefined; } | null; attachmentsFilters: { hasAttachments?: boolean | undefined; } | null; locationFilters: { latitude: number; longitude: number; radius: number; } | null; metadataFilters: { includes?: { [x: string]: unknown; } | undefined; includesAny?: { [x: string]: unknown; }[] | undefined; doesNotInclude?: { [x: string]: unknown; } | undefined; exists?: string[] | undefined; doesNotExist?: string[] | undefined; } | null; nsfwFilter: NsfwFilter | null; }; }; }, action: PayloadAction<{ listId: string; error: string | null; }>) => void; addEntity: (state: { lists: { [x: string]: { entities: { id: string; foreignId: string | null; shortId: string; projectId: string; sourceId: string | null; spaceId: string | null; space?: { id: string; projectId: string; shortId: string; slug: string | null; name: string; description: string | null; avatarFileId: string | null; bannerFileId: string | null; userId: string; readingPermission: import("../..").ReadingPermission; postingPermission: import("../..").PostingPermission; visibility: import("../../interfaces/models/Space").SpaceVisibility; requireJoinApproval: boolean; nsfw: boolean; nsfwEffective: boolean; parentSpaceId: string | null; depth: number; metadata: { [x: string]: any; }; createdAt: string; updatedAt: string; deletedAt: string | null; membersCount: number; childSpacesCount: number; isMember?: boolean | undefined; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | undefined; } | null | undefined; userId: string | null; user?: { id: string; projectId: string; foreignId: string | null; role: import("../..").UserRole; name: string | null; username: string | null; avatar: string | null; avatarFileId: string | null; bannerFileId: string | null; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bio: string | null; birthdate: string | null; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; reputation: number; spaceReputation?: number | undefined; createdAt: string; } | null | undefined; title: string | null; content: string | null; mentions: ({ type: "user"; id: string; foreignId?: string | null | undefined; username: string; } | { type: "space"; id: string; slug: string; })[]; attachments: { [x: string]: any; }[]; files?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; }[] | undefined; keywords: string[]; upvotes: string[]; downvotes: string[]; reactionCounts: { upvote: number; downvote: number; like: number; love: number; wow: number; sad: number; angry: number; funny: number; }; userReaction?: (import("../..").ReactionType | null) | undefined; repliesCount: number; views: number; score: number; scoreUpdatedAt: string; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; nsfw: boolean; nsfwEffective: boolean; topComment: { id: string; user: { id: string; projectId: string; foreignId: string | null; role: import("../..").UserRole; name: string | null; username: string | null; avatar: string | null; avatarFileId: string | null; bannerFileId: string | null; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bio: string | null; birthdate: string | null; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; reputation: number; spaceReputation?: number | undefined; createdAt: string; }; upvotesCount: number; content: string; createdAt: string; } | null; isSaved?: boolean | undefined; createdAt: string; updatedAt: string; deletedAt: string | null; isDraft: boolean | null; moderationStatus: "approved" | "removed" | null; moderatedAt: string | null; moderatedById: string | null; moderatedByType: "client" | "user" | null; moderationReason: string | null; }[]; page: number; loading: boolean; hasMore: boolean; error: string | null; lastFetched: number | null; sourceId: string | null; spaceId: string | null; limit: number; include: string | import("../..").EntityInclude[] | null; spaceReputationId: string | null; spaceReputationDescendants: boolean | null; sortBy: EntityListSortByOptions; sortByReaction: SortByReaction; sortDir: SortDirection | null; sortType: SortType; timeFrame: TimeFrame | null; userId: string | null; followedOnly: boolean; keywordsFilters: { includes?: string[] | undefined; doesNotInclude?: string[] | undefined; } | null; titleFilters: { hasTitle?: boolean | undefined; includes?: string | string[] | undefined; doesNotInclude?: string | string[] | undefined; } | null; contentFilters: { hasContent?: boolean | undefined; includes?: string | string[] | undefined; doesNotInclude?: string | string[] | undefined; } | null; attachmentsFilters: { hasAttachments?: boolean | undefined; } | null; locationFilters: { latitude: number; longitude: number; radius: number; } | null; metadataFilters: { includes?: { [x: string]: unknown; } | undefined; includesAny?: { [x: string]: unknown; }[] | undefined; doesNotInclude?: { [x: string]: unknown; } | undefined; exists?: string[] | undefined; doesNotExist?: string[] | undefined; } | null; nsfwFilter: NsfwFilter | null; }; }; }, action: PayloadAction) => void; removeEntity: (state: { lists: { [x: string]: { entities: { id: string; foreignId: string | null; shortId: string; projectId: string; sourceId: string | null; spaceId: string | null; space?: { id: string; projectId: string; shortId: string; slug: string | null; name: string; description: string | null; avatarFileId: string | null; bannerFileId: string | null; userId: string; readingPermission: import("../..").ReadingPermission; postingPermission: import("../..").PostingPermission; visibility: import("../../interfaces/models/Space").SpaceVisibility; requireJoinApproval: boolean; nsfw: boolean; nsfwEffective: boolean; parentSpaceId: string | null; depth: number; metadata: { [x: string]: any; }; createdAt: string; updatedAt: string; deletedAt: string | null; membersCount: number; childSpacesCount: number; isMember?: boolean | undefined; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | undefined; } | null | undefined; userId: string | null; user?: { id: string; projectId: string; foreignId: string | null; role: import("../..").UserRole; name: string | null; username: string | null; avatar: string | null; avatarFileId: string | null; bannerFileId: string | null; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bio: string | null; birthdate: string | null; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; reputation: number; spaceReputation?: number | undefined; createdAt: string; } | null | undefined; title: string | null; content: string | null; mentions: ({ type: "user"; id: string; foreignId?: string | null | undefined; username: string; } | { type: "space"; id: string; slug: string; })[]; attachments: { [x: string]: any; }[]; files?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; }[] | undefined; keywords: string[]; upvotes: string[]; downvotes: string[]; reactionCounts: { upvote: number; downvote: number; like: number; love: number; wow: number; sad: number; angry: number; funny: number; }; userReaction?: (import("../..").ReactionType | null) | undefined; repliesCount: number; views: number; score: number; scoreUpdatedAt: string; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; nsfw: boolean; nsfwEffective: boolean; topComment: { id: string; user: { id: string; projectId: string; foreignId: string | null; role: import("../..").UserRole; name: string | null; username: string | null; avatar: string | null; avatarFileId: string | null; bannerFileId: string | null; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bio: string | null; birthdate: string | null; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; reputation: number; spaceReputation?: number | undefined; createdAt: string; }; upvotesCount: number; content: string; createdAt: string; } | null; isSaved?: boolean | undefined; createdAt: string; updatedAt: string; deletedAt: string | null; isDraft: boolean | null; moderationStatus: "approved" | "removed" | null; moderatedAt: string | null; moderatedById: string | null; moderatedByType: "client" | "user" | null; moderationReason: string | null; }[]; page: number; loading: boolean; hasMore: boolean; error: string | null; lastFetched: number | null; sourceId: string | null; spaceId: string | null; limit: number; include: string | import("../..").EntityInclude[] | null; spaceReputationId: string | null; spaceReputationDescendants: boolean | null; sortBy: EntityListSortByOptions; sortByReaction: SortByReaction; sortDir: SortDirection | null; sortType: SortType; timeFrame: TimeFrame | null; userId: string | null; followedOnly: boolean; keywordsFilters: { includes?: string[] | undefined; doesNotInclude?: string[] | undefined; } | null; titleFilters: { hasTitle?: boolean | undefined; includes?: string | string[] | undefined; doesNotInclude?: string | string[] | undefined; } | null; contentFilters: { hasContent?: boolean | undefined; includes?: string | string[] | undefined; doesNotInclude?: string | string[] | undefined; } | null; attachmentsFilters: { hasAttachments?: boolean | undefined; } | null; locationFilters: { latitude: number; longitude: number; radius: number; } | null; metadataFilters: { includes?: { [x: string]: unknown; } | undefined; includesAny?: { [x: string]: unknown; }[] | undefined; doesNotInclude?: { [x: string]: unknown; } | undefined; exists?: string[] | undefined; doesNotExist?: string[] | undefined; } | null; nsfwFilter: NsfwFilter | null; }; }; }, action: PayloadAction) => void; updateKeywordsFilters: (state: { lists: { [x: string]: { entities: { id: string; foreignId: string | null; shortId: string; projectId: string; sourceId: string | null; spaceId: string | null; space?: { id: string; projectId: string; shortId: string; slug: string | null; name: string; description: string | null; avatarFileId: string | null; bannerFileId: string | null; userId: string; readingPermission: import("../..").ReadingPermission; postingPermission: import("../..").PostingPermission; visibility: import("../../interfaces/models/Space").SpaceVisibility; requireJoinApproval: boolean; nsfw: boolean; nsfwEffective: boolean; parentSpaceId: string | null; depth: number; metadata: { [x: string]: any; }; createdAt: string; updatedAt: string; deletedAt: string | null; membersCount: number; childSpacesCount: number; isMember?: boolean | undefined; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | undefined; } | null | undefined; userId: string | null; user?: { id: string; projectId: string; foreignId: string | null; role: import("../..").UserRole; name: string | null; username: string | null; avatar: string | null; avatarFileId: string | null; bannerFileId: string | null; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bio: string | null; birthdate: string | null; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; reputation: number; spaceReputation?: number | undefined; createdAt: string; } | null | undefined; title: string | null; content: string | null; mentions: ({ type: "user"; id: string; foreignId?: string | null | undefined; username: string; } | { type: "space"; id: string; slug: string; })[]; attachments: { [x: string]: any; }[]; files?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; }[] | undefined; keywords: string[]; upvotes: string[]; downvotes: string[]; reactionCounts: { upvote: number; downvote: number; like: number; love: number; wow: number; sad: number; angry: number; funny: number; }; userReaction?: (import("../..").ReactionType | null) | undefined; repliesCount: number; views: number; score: number; scoreUpdatedAt: string; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; nsfw: boolean; nsfwEffective: boolean; topComment: { id: string; user: { id: string; projectId: string; foreignId: string | null; role: import("../..").UserRole; name: string | null; username: string | null; avatar: string | null; avatarFileId: string | null; bannerFileId: string | null; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bio: string | null; birthdate: string | null; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; reputation: number; spaceReputation?: number | undefined; createdAt: string; }; upvotesCount: number; content: string; createdAt: string; } | null; isSaved?: boolean | undefined; createdAt: string; updatedAt: string; deletedAt: string | null; isDraft: boolean | null; moderationStatus: "approved" | "removed" | null; moderatedAt: string | null; moderatedById: string | null; moderatedByType: "client" | "user" | null; moderationReason: string | null; }[]; page: number; loading: boolean; hasMore: boolean; error: string | null; lastFetched: number | null; sourceId: string | null; spaceId: string | null; limit: number; include: string | import("../..").EntityInclude[] | null; spaceReputationId: string | null; spaceReputationDescendants: boolean | null; sortBy: EntityListSortByOptions; sortByReaction: SortByReaction; sortDir: SortDirection | null; sortType: SortType; timeFrame: TimeFrame | null; userId: string | null; followedOnly: boolean; keywordsFilters: { includes?: string[] | undefined; doesNotInclude?: string[] | undefined; } | null; titleFilters: { hasTitle?: boolean | undefined; includes?: string | string[] | undefined; doesNotInclude?: string | string[] | undefined; } | null; contentFilters: { hasContent?: boolean | undefined; includes?: string | string[] | undefined; doesNotInclude?: string | string[] | undefined; } | null; attachmentsFilters: { hasAttachments?: boolean | undefined; } | null; locationFilters: { latitude: number; longitude: number; radius: number; } | null; metadataFilters: { includes?: { [x: string]: unknown; } | undefined; includesAny?: { [x: string]: unknown; }[] | undefined; doesNotInclude?: { [x: string]: unknown; } | undefined; exists?: string[] | undefined; doesNotExist?: string[] | undefined; } | null; nsfwFilter: NsfwFilter | null; }; }; }, action: PayloadAction) => void; cleanupList: (state: { lists: { [x: string]: { entities: { id: string; foreignId: string | null; shortId: string; projectId: string; sourceId: string | null; spaceId: string | null; space?: { id: string; projectId: string; shortId: string; slug: string | null; name: string; description: string | null; avatarFileId: string | null; bannerFileId: string | null; userId: string; readingPermission: import("../..").ReadingPermission; postingPermission: import("../..").PostingPermission; visibility: import("../../interfaces/models/Space").SpaceVisibility; requireJoinApproval: boolean; nsfw: boolean; nsfwEffective: boolean; parentSpaceId: string | null; depth: number; metadata: { [x: string]: any; }; createdAt: string; updatedAt: string; deletedAt: string | null; membersCount: number; childSpacesCount: number; isMember?: boolean | undefined; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | undefined; } | null | undefined; userId: string | null; user?: { id: string; projectId: string; foreignId: string | null; role: import("../..").UserRole; name: string | null; username: string | null; avatar: string | null; avatarFileId: string | null; bannerFileId: string | null; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bio: string | null; birthdate: string | null; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; reputation: number; spaceReputation?: number | undefined; createdAt: string; } | null | undefined; title: string | null; content: string | null; mentions: ({ type: "user"; id: string; foreignId?: string | null | undefined; username: string; } | { type: "space"; id: string; slug: string; })[]; attachments: { [x: string]: any; }[]; files?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; }[] | undefined; keywords: string[]; upvotes: string[]; downvotes: string[]; reactionCounts: { upvote: number; downvote: number; like: number; love: number; wow: number; sad: number; angry: number; funny: number; }; userReaction?: (import("../..").ReactionType | null) | undefined; repliesCount: number; views: number; score: number; scoreUpdatedAt: string; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; nsfw: boolean; nsfwEffective: boolean; topComment: { id: string; user: { id: string; projectId: string; foreignId: string | null; role: import("../..").UserRole; name: string | null; username: string | null; avatar: string | null; avatarFileId: string | null; bannerFileId: string | null; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bio: string | null; birthdate: string | null; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; reputation: number; spaceReputation?: number | undefined; createdAt: string; }; upvotesCount: number; content: string; createdAt: string; } | null; isSaved?: boolean | undefined; createdAt: string; updatedAt: string; deletedAt: string | null; isDraft: boolean | null; moderationStatus: "approved" | "removed" | null; moderatedAt: string | null; moderatedById: string | null; moderatedByType: "client" | "user" | null; moderationReason: string | null; }[]; page: number; loading: boolean; hasMore: boolean; error: string | null; lastFetched: number | null; sourceId: string | null; spaceId: string | null; limit: number; include: string | import("../..").EntityInclude[] | null; spaceReputationId: string | null; spaceReputationDescendants: boolean | null; sortBy: EntityListSortByOptions; sortByReaction: SortByReaction; sortDir: SortDirection | null; sortType: SortType; timeFrame: TimeFrame | null; userId: string | null; followedOnly: boolean; keywordsFilters: { includes?: string[] | undefined; doesNotInclude?: string[] | undefined; } | null; titleFilters: { hasTitle?: boolean | undefined; includes?: string | string[] | undefined; doesNotInclude?: string | string[] | undefined; } | null; contentFilters: { hasContent?: boolean | undefined; includes?: string | string[] | undefined; doesNotInclude?: string | string[] | undefined; } | null; attachmentsFilters: { hasAttachments?: boolean | undefined; } | null; locationFilters: { latitude: number; longitude: number; radius: number; } | null; metadataFilters: { includes?: { [x: string]: unknown; } | undefined; includesAny?: { [x: string]: unknown; }[] | undefined; doesNotInclude?: { [x: string]: unknown; } | undefined; exists?: string[] | undefined; doesNotExist?: string[] | undefined; } | null; nsfwFilter: NsfwFilter | null; }; }; }, action: PayloadAction) => void; cleanupOldLists: (state: { lists: { [x: string]: { entities: { id: string; foreignId: string | null; shortId: string; projectId: string; sourceId: string | null; spaceId: string | null; space?: { id: string; projectId: string; shortId: string; slug: string | null; name: string; description: string | null; avatarFileId: string | null; bannerFileId: string | null; userId: string; readingPermission: import("../..").ReadingPermission; postingPermission: import("../..").PostingPermission; visibility: import("../../interfaces/models/Space").SpaceVisibility; requireJoinApproval: boolean; nsfw: boolean; nsfwEffective: boolean; parentSpaceId: string | null; depth: number; metadata: { [x: string]: any; }; createdAt: string; updatedAt: string; deletedAt: string | null; membersCount: number; childSpacesCount: number; isMember?: boolean | undefined; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | undefined; } | null | undefined; userId: string | null; user?: { id: string; projectId: string; foreignId: string | null; role: import("../..").UserRole; name: string | null; username: string | null; avatar: string | null; avatarFileId: string | null; bannerFileId: string | null; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bio: string | null; birthdate: string | null; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; reputation: number; spaceReputation?: number | undefined; createdAt: string; } | null | undefined; title: string | null; content: string | null; mentions: ({ type: "user"; id: string; foreignId?: string | null | undefined; username: string; } | { type: "space"; id: string; slug: string; })[]; attachments: { [x: string]: any; }[]; files?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; }[] | undefined; keywords: string[]; upvotes: string[]; downvotes: string[]; reactionCounts: { upvote: number; downvote: number; like: number; love: number; wow: number; sad: number; angry: number; funny: number; }; userReaction?: (import("../..").ReactionType | null) | undefined; repliesCount: number; views: number; score: number; scoreUpdatedAt: string; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; nsfw: boolean; nsfwEffective: boolean; topComment: { id: string; user: { id: string; projectId: string; foreignId: string | null; role: import("../..").UserRole; name: string | null; username: string | null; avatar: string | null; avatarFileId: string | null; bannerFileId: string | null; avatarFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bannerFile?: { id: string; projectId: string; userId: string | null; entityId: string | null; commentId: string | null; chatMessageId: string | null; spaceId: string | null; type: "image" | "video" | "document" | "other"; originalPath: string; originalSize: number; originalMimeType: string; position: number; metadata: { [x: string]: any; }; image?: { fileId: string; originalWidth: number; originalHeight: number; variants: { [x: string]: { path: string; publicPath: string; width: number; height: number; size: number; format: string; }; }; processingStatus: "completed" | "failed"; processingError: string | null; format: string; quality: number; exifStripped: boolean; createdAt: string; updatedAt: string; } | undefined; createdAt: string; updatedAt: string; } | null | undefined; bio: string | null; birthdate: string | null; location: { type: "Point"; coordinates: [number, number]; } | null; metadata: { [x: string]: any; }; reputation: number; spaceReputation?: number | undefined; createdAt: string; }; upvotesCount: number; content: string; createdAt: string; } | null; isSaved?: boolean | undefined; createdAt: string; updatedAt: string; deletedAt: string | null; isDraft: boolean | null; moderationStatus: "approved" | "removed" | null; moderatedAt: string | null; moderatedById: string | null; moderatedByType: "client" | "user" | null; moderationReason: string | null; }[]; page: number; loading: boolean; hasMore: boolean; error: string | null; lastFetched: number | null; sourceId: string | null; spaceId: string | null; limit: number; include: string | import("../..").EntityInclude[] | null; spaceReputationId: string | null; spaceReputationDescendants: boolean | null; sortBy: EntityListSortByOptions; sortByReaction: SortByReaction; sortDir: SortDirection | null; sortType: SortType; timeFrame: TimeFrame | null; userId: string | null; followedOnly: boolean; keywordsFilters: { includes?: string[] | undefined; doesNotInclude?: string[] | undefined; } | null; titleFilters: { hasTitle?: boolean | undefined; includes?: string | string[] | undefined; doesNotInclude?: string | string[] | undefined; } | null; contentFilters: { hasContent?: boolean | undefined; includes?: string | string[] | undefined; doesNotInclude?: string | string[] | undefined; } | null; attachmentsFilters: { hasAttachments?: boolean | undefined; } | null; locationFilters: { latitude: number; longitude: number; radius: number; } | null; metadataFilters: { includes?: { [x: string]: unknown; } | undefined; includesAny?: { [x: string]: unknown; }[] | undefined; doesNotInclude?: { [x: string]: unknown; } | undefined; exists?: string[] | undefined; doesNotExist?: string[] | undefined; } | null; nsfwFilter: NsfwFilter | null; }; }; }, action: PayloadAction) => void; }, "entityLists", "entityLists", import("@reduxjs/toolkit").SliceSelectors>; export declare const initializeList: import("@reduxjs/toolkit").ActionCreatorWithPayload, updateFiltersAndSortConfig: import("@reduxjs/toolkit").ActionCreatorWithPayload, setEntityListLoading: import("@reduxjs/toolkit").ActionCreatorWithPayload<{ listId: string; loading: boolean; }, "entityLists/setEntityListLoading">, setEntityListEntities: import("@reduxjs/toolkit").ActionCreatorWithPayload, incrementPage: import("@reduxjs/toolkit").ActionCreatorWithPayload, setEntityListHasMore: import("@reduxjs/toolkit").ActionCreatorWithPayload<{ listId: string; hasMore: boolean; }, "entityLists/setEntityListHasMore">, setEntityListError: import("@reduxjs/toolkit").ActionCreatorWithPayload<{ listId: string; error: string | null; }, "entityLists/setEntityListError">, addEntity: import("@reduxjs/toolkit").ActionCreatorWithPayload, removeEntity: import("@reduxjs/toolkit").ActionCreatorWithPayload, updateKeywordsFilters: import("@reduxjs/toolkit").ActionCreatorWithPayload, cleanupList: import("@reduxjs/toolkit").ActionCreatorWithPayload, cleanupOldLists: import("@reduxjs/toolkit").ActionCreatorWithPayload; export declare const selectEntityList: ((state: { sublay: SublayState; } & { sublay: SublayState; }, listId: string) => EntityListState | undefined) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; } & { resultFunc: (resultFuncArgs_0: EntityListsState, resultFuncArgs_1: string) => EntityListState | undefined; memoizedResultFunc: ((resultFuncArgs_0: EntityListsState, resultFuncArgs_1: string) => EntityListState | undefined) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; }; lastResult: () => EntityListState | undefined; dependencies: [(state: { sublay: SublayState; }) => EntityListsState, (_: { sublay: SublayState; }, listId: string) => string]; recomputations: () => number; resetRecomputations: () => void; dependencyRecomputations: () => number; resetDependencyRecomputations: () => void; } & { memoize: typeof import("@reduxjs/toolkit").weakMapMemoize; argsMemoize: typeof import("@reduxjs/toolkit").weakMapMemoize; }; export declare const selectEntityListEntities: ((state: { sublay: SublayState; } & { sublay: SublayState; }, listId: string) => Entity[]) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; } & { resultFunc: (resultFuncArgs_0: EntityListState | undefined) => Entity[]; memoizedResultFunc: ((resultFuncArgs_0: EntityListState | undefined) => Entity[]) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; }; lastResult: () => Entity[]; dependencies: [((state: { sublay: SublayState; } & { sublay: SublayState; }, listId: string) => EntityListState | undefined) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; } & { resultFunc: (resultFuncArgs_0: EntityListsState, resultFuncArgs_1: string) => EntityListState | undefined; memoizedResultFunc: ((resultFuncArgs_0: EntityListsState, resultFuncArgs_1: string) => EntityListState | undefined) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; }; lastResult: () => EntityListState | undefined; dependencies: [(state: { sublay: SublayState; }) => EntityListsState, (_: { sublay: SublayState; }, listId: string) => string]; recomputations: () => number; resetRecomputations: () => void; dependencyRecomputations: () => number; resetDependencyRecomputations: () => void; } & { memoize: typeof import("@reduxjs/toolkit").weakMapMemoize; argsMemoize: typeof import("@reduxjs/toolkit").weakMapMemoize; }]; recomputations: () => number; resetRecomputations: () => void; dependencyRecomputations: () => number; resetDependencyRecomputations: () => void; } & { memoize: typeof import("@reduxjs/toolkit").weakMapMemoize; argsMemoize: typeof import("@reduxjs/toolkit").weakMapMemoize; }; export declare const selectEntityListLoading: ((state: { sublay: SublayState; } & { sublay: SublayState; }, listId: string) => boolean) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; } & { resultFunc: (resultFuncArgs_0: EntityListState | undefined) => boolean; memoizedResultFunc: ((resultFuncArgs_0: EntityListState | undefined) => boolean) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; }; lastResult: () => boolean; dependencies: [((state: { sublay: SublayState; } & { sublay: SublayState; }, listId: string) => EntityListState | undefined) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; } & { resultFunc: (resultFuncArgs_0: EntityListsState, resultFuncArgs_1: string) => EntityListState | undefined; memoizedResultFunc: ((resultFuncArgs_0: EntityListsState, resultFuncArgs_1: string) => EntityListState | undefined) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; }; lastResult: () => EntityListState | undefined; dependencies: [(state: { sublay: SublayState; }) => EntityListsState, (_: { sublay: SublayState; }, listId: string) => string]; recomputations: () => number; resetRecomputations: () => void; dependencyRecomputations: () => number; resetDependencyRecomputations: () => void; } & { memoize: typeof import("@reduxjs/toolkit").weakMapMemoize; argsMemoize: typeof import("@reduxjs/toolkit").weakMapMemoize; }]; recomputations: () => number; resetRecomputations: () => void; dependencyRecomputations: () => number; resetDependencyRecomputations: () => void; } & { memoize: typeof import("@reduxjs/toolkit").weakMapMemoize; argsMemoize: typeof import("@reduxjs/toolkit").weakMapMemoize; }; export declare const selectEntityListHasMore: ((state: { sublay: SublayState; } & { sublay: SublayState; }, listId: string) => boolean) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; } & { resultFunc: (resultFuncArgs_0: EntityListState | undefined) => boolean; memoizedResultFunc: ((resultFuncArgs_0: EntityListState | undefined) => boolean) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; }; lastResult: () => boolean; dependencies: [((state: { sublay: SublayState; } & { sublay: SublayState; }, listId: string) => EntityListState | undefined) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; } & { resultFunc: (resultFuncArgs_0: EntityListsState, resultFuncArgs_1: string) => EntityListState | undefined; memoizedResultFunc: ((resultFuncArgs_0: EntityListsState, resultFuncArgs_1: string) => EntityListState | undefined) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; }; lastResult: () => EntityListState | undefined; dependencies: [(state: { sublay: SublayState; }) => EntityListsState, (_: { sublay: SublayState; }, listId: string) => string]; recomputations: () => number; resetRecomputations: () => void; dependencyRecomputations: () => number; resetDependencyRecomputations: () => void; } & { memoize: typeof import("@reduxjs/toolkit").weakMapMemoize; argsMemoize: typeof import("@reduxjs/toolkit").weakMapMemoize; }]; recomputations: () => number; resetRecomputations: () => void; dependencyRecomputations: () => number; resetDependencyRecomputations: () => void; } & { memoize: typeof import("@reduxjs/toolkit").weakMapMemoize; argsMemoize: typeof import("@reduxjs/toolkit").weakMapMemoize; }; export declare const selectEntityListSort: ((state: { sublay: SublayState; } & { sublay: SublayState; }, listId: string) => EntityListSort | null) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; } & { resultFunc: (resultFuncArgs_0: EntityListState | undefined) => EntityListSort | null; memoizedResultFunc: ((resultFuncArgs_0: EntityListState | undefined) => EntityListSort | null) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; }; lastResult: () => EntityListSort | null; dependencies: [((state: { sublay: SublayState; } & { sublay: SublayState; }, listId: string) => EntityListState | undefined) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; } & { resultFunc: (resultFuncArgs_0: EntityListsState, resultFuncArgs_1: string) => EntityListState | undefined; memoizedResultFunc: ((resultFuncArgs_0: EntityListsState, resultFuncArgs_1: string) => EntityListState | undefined) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; }; lastResult: () => EntityListState | undefined; dependencies: [(state: { sublay: SublayState; }) => EntityListsState, (_: { sublay: SublayState; }, listId: string) => string]; recomputations: () => number; resetRecomputations: () => void; dependencyRecomputations: () => number; resetDependencyRecomputations: () => void; } & { memoize: typeof import("@reduxjs/toolkit").weakMapMemoize; argsMemoize: typeof import("@reduxjs/toolkit").weakMapMemoize; }]; recomputations: () => number; resetRecomputations: () => void; dependencyRecomputations: () => number; resetDependencyRecomputations: () => void; } & { memoize: typeof import("@reduxjs/toolkit").weakMapMemoize; argsMemoize: typeof import("@reduxjs/toolkit").weakMapMemoize; }; export declare const selectEntityListFilters: ((state: { sublay: SublayState; } & { sublay: SublayState; }, listId: string) => EntityListFilters | null) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; } & { resultFunc: (resultFuncArgs_0: EntityListState | undefined) => EntityListFilters | null; memoizedResultFunc: ((resultFuncArgs_0: EntityListState | undefined) => EntityListFilters | null) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; }; lastResult: () => EntityListFilters | null; dependencies: [((state: { sublay: SublayState; } & { sublay: SublayState; }, listId: string) => EntityListState | undefined) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; } & { resultFunc: (resultFuncArgs_0: EntityListsState, resultFuncArgs_1: string) => EntityListState | undefined; memoizedResultFunc: ((resultFuncArgs_0: EntityListsState, resultFuncArgs_1: string) => EntityListState | undefined) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; }; lastResult: () => EntityListState | undefined; dependencies: [(state: { sublay: SublayState; }) => EntityListsState, (_: { sublay: SublayState; }, listId: string) => string]; recomputations: () => number; resetRecomputations: () => void; dependencyRecomputations: () => number; resetDependencyRecomputations: () => void; } & { memoize: typeof import("@reduxjs/toolkit").weakMapMemoize; argsMemoize: typeof import("@reduxjs/toolkit").weakMapMemoize; }]; recomputations: () => number; resetRecomputations: () => void; dependencyRecomputations: () => number; resetDependencyRecomputations: () => void; } & { memoize: typeof import("@reduxjs/toolkit").weakMapMemoize; argsMemoize: typeof import("@reduxjs/toolkit").weakMapMemoize; }; export declare const selectEntityListConfig: ((state: { sublay: SublayState; } & { sublay: SublayState; }, listId: string) => { sourceId: string | null; spaceId: string | null; limit: number; include: EntityIncludeParam | null; spaceReputationId: string | null; spaceReputationDescendants: boolean | null; } | null) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; } & { resultFunc: (resultFuncArgs_0: EntityListState | undefined) => { sourceId: string | null; spaceId: string | null; limit: number; include: EntityIncludeParam | null; spaceReputationId: string | null; spaceReputationDescendants: boolean | null; } | null; memoizedResultFunc: ((resultFuncArgs_0: EntityListState | undefined) => { sourceId: string | null; spaceId: string | null; limit: number; include: EntityIncludeParam | null; spaceReputationId: string | null; spaceReputationDescendants: boolean | null; } | null) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; }; lastResult: () => { sourceId: string | null; spaceId: string | null; limit: number; include: EntityIncludeParam | null; spaceReputationId: string | null; spaceReputationDescendants: boolean | null; } | null; dependencies: [((state: { sublay: SublayState; } & { sublay: SublayState; }, listId: string) => EntityListState | undefined) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; } & { resultFunc: (resultFuncArgs_0: EntityListsState, resultFuncArgs_1: string) => EntityListState | undefined; memoizedResultFunc: ((resultFuncArgs_0: EntityListsState, resultFuncArgs_1: string) => EntityListState | undefined) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; }; lastResult: () => EntityListState | undefined; dependencies: [(state: { sublay: SublayState; }) => EntityListsState, (_: { sublay: SublayState; }, listId: string) => string]; recomputations: () => number; resetRecomputations: () => void; dependencyRecomputations: () => number; resetDependencyRecomputations: () => void; } & { memoize: typeof import("@reduxjs/toolkit").weakMapMemoize; argsMemoize: typeof import("@reduxjs/toolkit").weakMapMemoize; }]; recomputations: () => number; resetRecomputations: () => void; dependencyRecomputations: () => number; resetDependencyRecomputations: () => void; } & { memoize: typeof import("@reduxjs/toolkit").weakMapMemoize; argsMemoize: typeof import("@reduxjs/toolkit").weakMapMemoize; }; declare const _default: import("@reduxjs/toolkit").Reducer; export default _default;