import { Asset, FolderOption } from '../../../types/src/file-on-demand';

export declare const partitionAssets: (assets: Asset[]) => [Asset[], Asset[]];
export declare const fetchFolders: ({ excludes, folderId, folderPath, folderPathsSet, limit, searchText, seeThru, siteUrl, start, token, }: {
    excludes?: string[];
    folderId: string;
    folderPath?: string[];
    folderPathsSet?: Set<string>;
    limit?: number;
    searchText?: string;
    seeThru?: boolean;
    siteUrl: string;
    start?: number;
    token: string;
}) => Promise<{
    data: FolderOption[];
    totalCount: number;
}>;
export declare function getValueByKeyCaseInsensitive(obj: {
    [key: string]: string;
}, key: string): string | undefined;
export declare const extractRootData: (rootID: string) => {
    id: string;
    path: string;
};
export declare const getRootIDString: ({ id, path }: {
    id: string;
    path: string;
}) => string;
export declare const getFileExtension: (fileName: string) => string;
export declare const extractVersion: (input: string) => string;
export declare const getPath: (path: string[], fullPath: string) => string;
/**
 * Normalize the asset path by removing extra spaces before and after slashes
 * @param str - The asset path to normalize
 * @returns The normalized asset path
 */
export declare const normalizeAssetPath: (str: string) => string;
/**
 * Creates a set containing only the title by splitting the path string
 * @param folderPathsSet - Set of folder paths
 * @returns Set containing only the title
 */
export declare const getTitleSet: (folderPathsSet: Set<string>) => Set<string>;
/**
 * Reduces the full path to the direct child of the base path.
 * E.g: 'Root/folder1/folder2/folder3/folder4' with base 'Root/folder1/folder2' -> 'Root/folder1/folder2/folder3'
 * @param full - The full path
 * @param base - The base path
 * @returns The reduced path
 */
export declare const reducePathToDirectChild: (full: string, base: string) => string;
/**
 * Sort assets by upload timestamp
 * @param assets - The assets to sort
 * @returns The sorted assets
 */
export declare function sortAssets(assets: Asset[]): Asset[];
