import { File, FileContentTypeEnum } from '../../../types/openapi'; import { Range } from '../../util/tsHelpers'; import { SelectorType } from './stores/app'; import { Selection } from '../../types/selections'; import { FavoritesFetcher, RecentFilesFetcher, FolderItemsFetcher, FileOpener, FileFetcher, FileListFetcher, FileDeleter } from './stores/api'; export type AppProps = { attachTo?: HTMLElement | string; appName: 'impact' | 'admin'; allowedSelectorTypes?: SelectorType[]; allowedContentTypes?: FileContentTypeEnum[]; allowedAssetContentTypes?: FileContentTypeEnum[]; allowedIds?: File['id'][]; allowedOriginalExtensions?: string[]; allowMultimediaSelectorApp?: boolean; contentType: 'file' | 'slide' | 'content'; initialMetadataFilters?: Record; zIndex?: number; onFavoritesFetch?: FavoritesFetcher; onRecentFilesFetch?: RecentFilesFetcher; onFolderFetch?: FolderItemsFetcher; onFileDelete?: FileDeleter; onFileFetch?: FileFetcher; onFilesList?: FileListFetcher; onFileOpen?: FileOpener; selections?: Selection[]; primaryActionText?: string; maxSelections?: number; minSelections?: Range<0, 999>; disableNoSharable?: boolean; disableNoPptxData?: boolean; onlyAllowContentPdfPages?: boolean; };