/// import type { Semaphore } from 'semaphore'; import type { DisplayURL, FileMetadata, ImplementationEntry, ImplementationFile } from '@staticcms/core'; import type { AsyncLock } from './asyncLock'; type ReadFile = (path: string, id: string | null | undefined, options: { parseText: boolean; }) => Promise; type ReadFileMetadata = (path: string, id: string | null | undefined) => Promise; type CustomFetchFunc = (files: ImplementationFile[]) => Promise; export declare function entriesByFolder(listFiles: () => Promise, readFile: ReadFile, readFileMetadata: ReadFileMetadata, apiName: string): Promise; export declare function entriesByFiles(files: ImplementationFile[], readFile: ReadFile, readFileMetadata: ReadFileMetadata, apiName: string): Promise; export declare function unpublishedEntries(listEntriesKeys: () => Promise): Promise; export declare function blobToFileObj(name: string, blob: Blob): File; export declare function getMediaAsBlob(path: string, id: string | null, readFile: ReadFile): Promise; export declare function getMediaDisplayURL(displayURL: DisplayURL, readFile: ReadFile, semaphore: Semaphore): Promise; export declare function runWithLock(lock: AsyncLock, func: Function, message: string): Promise; type LocalTree = { head: string; files: { id: string; name: string; path: string; }[]; }; type GetKeyArgs = { branch: string; folder: string; extension: string; depth: number; }; type PersistLocalTreeArgs = GetKeyArgs & { localForage: LocalForage; localTree: LocalTree; }; type GetLocalTreeArgs = GetKeyArgs & { localForage: LocalForage; }; export declare function persistLocalTree({ localForage, localTree, branch, folder, extension, depth, }: PersistLocalTreeArgs): Promise; export declare function getLocalTree({ localForage, branch, folder, extension, depth, }: GetLocalTreeArgs): Promise; type GetDiffFromLocalTreeMethods = { getDifferences: (to: string, from: string) => Promise<{ oldPath: string; newPath: string; status: string; }[]>; filterFile: (file: { path: string; name: string; }) => boolean; getFileId: (path: string) => Promise; }; type AllEntriesByFolderArgs = GetKeyArgs & GetDiffFromLocalTreeMethods & { listAllFiles: (folder: string, extension: string, depth: number) => Promise; readFile: ReadFile; readFileMetadata: ReadFileMetadata; getDefaultBranch: () => Promise<{ name: string; sha: string; }>; isShaExistsInBranch: (branch: string, sha: string) => Promise; apiName: string; localForage: LocalForage; customFetch?: CustomFetchFunc; }; export declare function allEntriesByFolder({ listAllFiles, readFile, readFileMetadata, apiName, branch, localForage, folder, extension, depth, getDefaultBranch, isShaExistsInBranch, getDifferences, getFileId, filterFile, customFetch, }: AllEntriesByFolderArgs): Promise; export {};