import React from 'react';
import { AuthorizeAddParams, AuthorizeDeleteParams, AuthorizeListFetchParams, AuthorizeListItem, AuthorizeUserFetchParams, File, PaginationInfo, ParentFileFetchParams, ProjectFileDeleteParams, ProjectFileFetchParams, ProjectFileSaveParams, User } from '@/types/index';
interface ProjectFileType {
    type: 'application' | 'involved' | 'personal' | 'projects' | 'workspace';
    pageInfo: PaginationInfo;
    loading: boolean;
    fileList: File[];
    drawerOpen: boolean;
    editFile: File;
    saveLoading: boolean;
    authDrawerOpen?: boolean;
    authLoading?: boolean;
    authList?: AuthorizeListItem[];
    userList?: User[];
    fetchFileList: (params: ProjectFileFetchParams) => void;
    fetchParentFiles: (params: ParentFileFetchParams, cb?: (folder: any) => void) => void;
    openDrawer: (open: boolean, editFile?: File) => void;
    updateEditFile: (name: string, value: unknown) => void;
    saveFile: (params: ProjectFileSaveParams, cb?: () => void) => void;
    deleteFile: (params: ProjectFileDeleteParams) => 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, editFile?: File) => void;
}
declare const ProjectFileComponent: React.FC<ProjectFileType>;
export default ProjectFileComponent;
