import React from 'react';
import { AuthorizeAddParams, AuthorizeDeleteParams, AuthorizeListFetchParams, AuthorizeListItem, AuthorizeUserFetchParams, ContentEntity, File, FilesFetchParams, GoodsCommitParams, GoodsOfflineParams, ParentFileFetchParams, ProjectContentDeleteParams, ProjectContentFetchParams, User } from '@/types//index';
interface ProjectContentType {
    type: 'application' | 'involved' | 'personal' | 'projects' | 'workspace';
    loading: boolean;
    saveLoading: boolean;
    contentList: ContentEntity[];
    extendRecord: Record<string, string[]>;
    fileDetail: File;
    drawerOpen: boolean;
    editContent: Partial<ContentEntity>;
    baseContents: Array<Record<string, string>>;
    locales: string[];
    authDrawerOpen?: boolean;
    authLoading?: boolean;
    authList?: AuthorizeListItem[];
    userList?: User[];
    fetchList: (params: ProjectContentFetchParams) => void;
    fetchFileDetail: (params: FilesFetchParams) => void;
    fetchParentFiles: (params: ParentFileFetchParams, cb?: (folder: any) => void) => void;
    commitToStore: (params: GoodsCommitParams, cb?: () => void) => void;
    offlineFromStore: (params: GoodsOfflineParams, cb?: () => void) => void;
    updateFileOnlineStatus: (online: boolean) => void;
    openDrawer: (open: boolean, editContent?: Partial<ContentEntity>) => void;
    fetchLocales: (applicationId: string) => void;
    updateContentValue: (key: string, value: unknown) => void;
    updateContentTags: (key: string, value: unknown) => void;
    saveContent: (params: ProjectContentFetchParams) => void;
    deleteContent: (params: ProjectContentDeleteParams) => void;
    fetchAuthList?: (params: AuthorizeListFetchParams) => void;
    fetchUserList?: (params: AuthorizeUserFetchParams, cb?: () => void) => void;
    saveUser?: (params: AuthorizeAddParams, cb?: () => void) => void;
    deleteUser?: (params: AuthorizeDeleteParams, cb?: () => void) => void;
    openAuthDrawer?: (visible: boolean, editContent?: ContentEntity) => void;
}
declare const ProjectContentComponent: React.FC<ProjectContentType>;
export default ProjectContentComponent;
