import { PayloadAction } from "@reduxjs/toolkit"; import type { SublayState } from '../sublayReducers'; import { Space } from "../../interfaces/models/Space"; import { SpaceListSortByOptions } from "../../interfaces/SpaceListSortByOptions"; export interface SpaceListState { spaces: Space[]; page: number; loading: boolean; hasMore: boolean; error: string | null; lastFetched: number | null; limit: number; sortBy: SpaceListSortByOptions; searchSlug: string | null; searchName: string | null; searchDescription: string | null; searchAny: string | null; memberOf: boolean; parentSpaceId: string | null; } export interface SpaceListsState { lists: { [listId: string]: SpaceListState; }; } export interface SpaceListFilters { sortBy?: SpaceListSortByOptions; searchSlug?: string | null; searchName?: string | null; searchDescription?: string | null; searchAny?: string | null; memberOf?: boolean; parentSpaceId?: string | null; } export interface SpaceListConfig { limit?: number; } export interface SpaceListFetchOptions { resetUnspecified?: boolean; fetchImmediately?: boolean; clearImmediately?: boolean; } export interface FilterUpdatePayload { listId: string; filters: Partial; config?: SpaceListConfig; options?: SpaceListFetchOptions; } export interface InitializeListPayload { listId: string; } export interface SpaceAddPayload { listId: string; space: Space; insertPosition?: "first" | "last"; } export interface SpaceRemovePayload { listId: string; spaceId: string; } export interface SpaceUpdatePayload { listId: string; spaceId: string; updates: Partial; } export interface SpacesSetPayload { listId: string; spaces: Space[]; append?: boolean; } export declare const spaceListsSlice: import("@reduxjs/toolkit").Slice) => void; updateFilters: (state: { lists: { [x: string]: { spaces: { 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; }[]; page: number; loading: boolean; hasMore: boolean; error: string | null; lastFetched: number | null; limit: number; sortBy: SpaceListSortByOptions; searchSlug: string | null; searchName: string | null; searchDescription: string | null; searchAny: string | null; memberOf: boolean; parentSpaceId: string | null; }; }; }, action: PayloadAction) => void; setSpaceListLoading: (state: { lists: { [x: string]: { spaces: { 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; }[]; page: number; loading: boolean; hasMore: boolean; error: string | null; lastFetched: number | null; limit: number; sortBy: SpaceListSortByOptions; searchSlug: string | null; searchName: string | null; searchDescription: string | null; searchAny: string | null; memberOf: boolean; parentSpaceId: string | null; }; }; }, action: PayloadAction<{ listId: string; loading: boolean; }>) => void; setSpaceListSpaces: (state: { lists: { [x: string]: { spaces: { 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; }[]; page: number; loading: boolean; hasMore: boolean; error: string | null; lastFetched: number | null; limit: number; sortBy: SpaceListSortByOptions; searchSlug: string | null; searchName: string | null; searchDescription: string | null; searchAny: string | null; memberOf: boolean; parentSpaceId: string | null; }; }; }, action: PayloadAction) => void; incrementPage: (state: { lists: { [x: string]: { spaces: { 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; }[]; page: number; loading: boolean; hasMore: boolean; error: string | null; lastFetched: number | null; limit: number; sortBy: SpaceListSortByOptions; searchSlug: string | null; searchName: string | null; searchDescription: string | null; searchAny: string | null; memberOf: boolean; parentSpaceId: string | null; }; }; }, action: PayloadAction) => void; setSpaceListHasMore: (state: { lists: { [x: string]: { spaces: { 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; }[]; page: number; loading: boolean; hasMore: boolean; error: string | null; lastFetched: number | null; limit: number; sortBy: SpaceListSortByOptions; searchSlug: string | null; searchName: string | null; searchDescription: string | null; searchAny: string | null; memberOf: boolean; parentSpaceId: string | null; }; }; }, action: PayloadAction<{ listId: string; hasMore: boolean; }>) => void; setSpaceListError: (state: { lists: { [x: string]: { spaces: { 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; }[]; page: number; loading: boolean; hasMore: boolean; error: string | null; lastFetched: number | null; limit: number; sortBy: SpaceListSortByOptions; searchSlug: string | null; searchName: string | null; searchDescription: string | null; searchAny: string | null; memberOf: boolean; parentSpaceId: string | null; }; }; }, action: PayloadAction<{ listId: string; error: string | null; }>) => void; addSpace: (state: { lists: { [x: string]: { spaces: { 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; }[]; page: number; loading: boolean; hasMore: boolean; error: string | null; lastFetched: number | null; limit: number; sortBy: SpaceListSortByOptions; searchSlug: string | null; searchName: string | null; searchDescription: string | null; searchAny: string | null; memberOf: boolean; parentSpaceId: string | null; }; }; }, action: PayloadAction) => void; removeSpace: (state: { lists: { [x: string]: { spaces: { 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; }[]; page: number; loading: boolean; hasMore: boolean; error: string | null; lastFetched: number | null; limit: number; sortBy: SpaceListSortByOptions; searchSlug: string | null; searchName: string | null; searchDescription: string | null; searchAny: string | null; memberOf: boolean; parentSpaceId: string | null; }; }; }, action: PayloadAction) => void; updateSpace: (state: { lists: { [x: string]: { spaces: { 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; }[]; page: number; loading: boolean; hasMore: boolean; error: string | null; lastFetched: number | null; limit: number; sortBy: SpaceListSortByOptions; searchSlug: string | null; searchName: string | null; searchDescription: string | null; searchAny: string | null; memberOf: boolean; parentSpaceId: string | null; }; }; }, action: PayloadAction) => void; cleanupList: (state: { lists: { [x: string]: { spaces: { 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; }[]; page: number; loading: boolean; hasMore: boolean; error: string | null; lastFetched: number | null; limit: number; sortBy: SpaceListSortByOptions; searchSlug: string | null; searchName: string | null; searchDescription: string | null; searchAny: string | null; memberOf: boolean; parentSpaceId: string | null; }; }; }, action: PayloadAction) => void; cleanupOldLists: (state: { lists: { [x: string]: { spaces: { 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; }[]; page: number; loading: boolean; hasMore: boolean; error: string | null; lastFetched: number | null; limit: number; sortBy: SpaceListSortByOptions; searchSlug: string | null; searchName: string | null; searchDescription: string | null; searchAny: string | null; memberOf: boolean; parentSpaceId: string | null; }; }; }, action: PayloadAction) => void; }, "spaceLists", "spaceLists", import("@reduxjs/toolkit").SliceSelectors>; export declare const initializeList: import("@reduxjs/toolkit").ActionCreatorWithPayload, updateFilters: import("@reduxjs/toolkit").ActionCreatorWithPayload, setSpaceListLoading: import("@reduxjs/toolkit").ActionCreatorWithPayload<{ listId: string; loading: boolean; }, "spaceLists/setSpaceListLoading">, setSpaceListSpaces: import("@reduxjs/toolkit").ActionCreatorWithPayload, incrementPage: import("@reduxjs/toolkit").ActionCreatorWithPayload, setSpaceListHasMore: import("@reduxjs/toolkit").ActionCreatorWithPayload<{ listId: string; hasMore: boolean; }, "spaceLists/setSpaceListHasMore">, setSpaceListError: import("@reduxjs/toolkit").ActionCreatorWithPayload<{ listId: string; error: string | null; }, "spaceLists/setSpaceListError">, addSpace: import("@reduxjs/toolkit").ActionCreatorWithPayload, removeSpace: import("@reduxjs/toolkit").ActionCreatorWithPayload, updateSpace: import("@reduxjs/toolkit").ActionCreatorWithPayload, cleanupList: import("@reduxjs/toolkit").ActionCreatorWithPayload, cleanupOldLists: import("@reduxjs/toolkit").ActionCreatorWithPayload; export declare const selectSpaceList: ((state: { sublay: SublayState; } & { sublay: SublayState; }, listId: string) => SpaceListState | undefined) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; } & { resultFunc: (resultFuncArgs_0: SpaceListsState, resultFuncArgs_1: string) => SpaceListState | undefined; memoizedResultFunc: ((resultFuncArgs_0: SpaceListsState, resultFuncArgs_1: string) => SpaceListState | undefined) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; }; lastResult: () => SpaceListState | undefined; dependencies: [(state: { sublay: SublayState; }) => SpaceListsState, (_: { 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 selectSpaceListSpaces: ((state: { sublay: SublayState; } & { sublay: SublayState; }, listId: string) => Space[]) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; } & { resultFunc: (resultFuncArgs_0: SpaceListState | undefined) => Space[]; memoizedResultFunc: ((resultFuncArgs_0: SpaceListState | undefined) => Space[]) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; }; lastResult: () => Space[]; dependencies: [((state: { sublay: SublayState; } & { sublay: SublayState; }, listId: string) => SpaceListState | undefined) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; } & { resultFunc: (resultFuncArgs_0: SpaceListsState, resultFuncArgs_1: string) => SpaceListState | undefined; memoizedResultFunc: ((resultFuncArgs_0: SpaceListsState, resultFuncArgs_1: string) => SpaceListState | undefined) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; }; lastResult: () => SpaceListState | undefined; dependencies: [(state: { sublay: SublayState; }) => SpaceListsState, (_: { 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 selectSpaceListLoading: ((state: { sublay: SublayState; } & { sublay: SublayState; }, listId: string) => boolean) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; } & { resultFunc: (resultFuncArgs_0: SpaceListState | undefined) => boolean; memoizedResultFunc: ((resultFuncArgs_0: SpaceListState | undefined) => boolean) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; }; lastResult: () => boolean; dependencies: [((state: { sublay: SublayState; } & { sublay: SublayState; }, listId: string) => SpaceListState | undefined) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; } & { resultFunc: (resultFuncArgs_0: SpaceListsState, resultFuncArgs_1: string) => SpaceListState | undefined; memoizedResultFunc: ((resultFuncArgs_0: SpaceListsState, resultFuncArgs_1: string) => SpaceListState | undefined) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; }; lastResult: () => SpaceListState | undefined; dependencies: [(state: { sublay: SublayState; }) => SpaceListsState, (_: { 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 selectSpaceListHasMore: ((state: { sublay: SublayState; } & { sublay: SublayState; }, listId: string) => boolean) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; } & { resultFunc: (resultFuncArgs_0: SpaceListState | undefined) => boolean; memoizedResultFunc: ((resultFuncArgs_0: SpaceListState | undefined) => boolean) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; }; lastResult: () => boolean; dependencies: [((state: { sublay: SublayState; } & { sublay: SublayState; }, listId: string) => SpaceListState | undefined) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; } & { resultFunc: (resultFuncArgs_0: SpaceListsState, resultFuncArgs_1: string) => SpaceListState | undefined; memoizedResultFunc: ((resultFuncArgs_0: SpaceListsState, resultFuncArgs_1: string) => SpaceListState | undefined) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; }; lastResult: () => SpaceListState | undefined; dependencies: [(state: { sublay: SublayState; }) => SpaceListsState, (_: { 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 selectSpaceListFilters: ((state: { sublay: SublayState; } & { sublay: SublayState; }, listId: string) => { sortBy: SpaceListSortByOptions; searchSlug: string | null; searchName: string | null; searchDescription: string | null; searchAny: string | null; memberOf: boolean; parentSpaceId: string | null; } | null) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; } & { resultFunc: (resultFuncArgs_0: SpaceListState | undefined) => { sortBy: SpaceListSortByOptions; searchSlug: string | null; searchName: string | null; searchDescription: string | null; searchAny: string | null; memberOf: boolean; parentSpaceId: string | null; } | null; memoizedResultFunc: ((resultFuncArgs_0: SpaceListState | undefined) => { sortBy: SpaceListSortByOptions; searchSlug: string | null; searchName: string | null; searchDescription: string | null; searchAny: string | null; memberOf: boolean; parentSpaceId: string | null; } | null) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; }; lastResult: () => { sortBy: SpaceListSortByOptions; searchSlug: string | null; searchName: string | null; searchDescription: string | null; searchAny: string | null; memberOf: boolean; parentSpaceId: string | null; } | null; dependencies: [((state: { sublay: SublayState; } & { sublay: SublayState; }, listId: string) => SpaceListState | undefined) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; } & { resultFunc: (resultFuncArgs_0: SpaceListsState, resultFuncArgs_1: string) => SpaceListState | undefined; memoizedResultFunc: ((resultFuncArgs_0: SpaceListsState, resultFuncArgs_1: string) => SpaceListState | undefined) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; }; lastResult: () => SpaceListState | undefined; dependencies: [(state: { sublay: SublayState; }) => SpaceListsState, (_: { 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 selectSpaceListConfig: ((state: { sublay: SublayState; } & { sublay: SublayState; }, listId: string) => { limit: number; } | null) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; } & { resultFunc: (resultFuncArgs_0: SpaceListState | undefined) => { limit: number; } | null; memoizedResultFunc: ((resultFuncArgs_0: SpaceListState | undefined) => { limit: number; } | null) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; }; lastResult: () => { limit: number; } | null; dependencies: [((state: { sublay: SublayState; } & { sublay: SublayState; }, listId: string) => SpaceListState | undefined) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; } & { resultFunc: (resultFuncArgs_0: SpaceListsState, resultFuncArgs_1: string) => SpaceListState | undefined; memoizedResultFunc: ((resultFuncArgs_0: SpaceListsState, resultFuncArgs_1: string) => SpaceListState | undefined) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; }; lastResult: () => SpaceListState | undefined; dependencies: [(state: { sublay: SublayState; }) => SpaceListsState, (_: { 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;